ROBAST is currently developed by Akira Okumura (Institute for Space-Earth Environmental Research, Nagoya University) as an open-source project on GitHub.
If you have any question or need help, please feel free to contact me by e-mail. If you have a GitHub account, using the GitHub issue tracker is more preferred because other users can see your trobleshooting.
In addition to the tutorial programs provided with ROBAST, you can get some more complex (= dirty) simulation examples upon request.
Pleas go to the ROBAST issue page https://github.com/ROBAST/ROBAST/issues to post your bug report or feature request. If you do not have a GitHub account, please make it and log in. You can also contact me by e-mail.
ROBAST requires you very basic knowledge of ROOT and C++. We do not answer your basic ROOT questions such as how to use TH2D or what new
and delete
are. Please refer to the ROOT User's Guide, that is quite well written for ROOT beginners. You can also use the ROOT mailing list or the ROOT forum to get an answer for your question.
ROBAST is a volunteer-based open-source project, and it is currently developed and maintained by only Akira Okumura. Thus, we cannot guarantee the future development or support at the moment. In my personal prospect, however, ROBAST will be maintained for the next 10 years, because it will be used during the initial phase (–2025) of the Cherenkov Telescope Array observatory.
If you used ROBAST in your research, we would appreciate it if you could cite the following paper.
A. Okumura, K. Noda, C. Rulten (2016) “ROBAST: Development of a ROOT-Based Ray-Tracing Library for Cosmic-Ray Telescopes and its Applications in the Cherenkov Telescope Array” Astroparticle Physics 76 38–47 arXiv:1512.04369Please use http://robast.github.io/ for the ROBAST URL.
We used SourceForge for several years, but we are currently using GitHub for some reasons. Please do not use the old ROBAST repository on SourceForge. https://github.com/ROBAST/ROBAST is the repository origin.
macOS and Linux. In principle any POSIX systems that are supported in ROOT are compatible with ROBAST. We have been using ROBAST on several versions of OS X (up to Catalina) and Linux distributions (CentOS 6 and 7). We do not know if ROBAST runs on Windows machines, because we have never seen researchers who use ROOT on Windows.
No. ROBAST simulates photon tracks with a geometrical optics approach, because it relies on the particle tracking engine of the ROOT geometry library. We do not have a plan to support diffraction or interference.
Currently ROBAST cannot simulate photon polarization, however, we have a plan to support it in a future ROBAST release. Fresnel reflection and refraction in ROBAST assume random polarization. If it is really important in your simulation, please send us your request.
Please make a composite shape from a number of AGeoAsphericDisk
objects. ROBAST does not have a dedicated class for simulation of Fresnel lenses. However, you can model a Fresnel lens geometry by using a number of AGeoAsphericDisk
volumes aligned like an onion slice. The simulation speed will be very slow if the pitch of the concentric circles is very small.
TGeo
objects?TGeoManager
, the base class of AOpticsManager
, takes care of heap objects. TGeo
objects are automatically deleted when the destructor of TGeoManager
or AOpticsManager
is called. Some ROBAST classes are derived from TGeo
classes, and you do not need to delete them yourself. Classes starting with AGeo
are derived from the TGeoBBox
class. AOpticalComponent
, AMirror
, ALens
, AFocalSurface
, and AObscuration
are derived from TGeoVolume
. ARay
inherits TGeoTrack
.
Other TGeo
classes such as TGeoCompositeShape
and TGeoRotation
are also deleted by TGeoManager
or AOpticsManager
.
I have a plan to support photon polarization. Polarization is supported only in AMultilayer
at the moment.
There are more than 15 researchers and students who use ROBAST in the Cherenkov Telescope Array. As far as I know there are several persons who use ROBAST for their other projects, but I do not know what these projects are.
Yes. You can use it via PyROOT. Please try tutorial/SimpleParabolicTelescope.py
.