The R3BRoot software is based on the FairRoot framework and can be used to perform Monte Carlo simulations and experimental data analysis of the R3B (Reactions with Relativistic Radioactive Beams) nuclear physics experiments at the GSI-FAIR research center (Facility for Antiproton and Ion Research). The user can create simulated data and/or perform analysis with the same framework. Geant3 and Geant4 transport engines are supported, however, the implemented tasks that create simulated data do not depend on a particular Monte Carlo engine. The framework delivers base classes which enable the users to construct their detectors and/or analysis tasks in a simple way, it also delivers some general functionality like track visualization. Moreover, an interface for reading experimental and/or simulated magnetic field maps is also implemented. R3BRoot is a source distribution with recurring releases for macOS and Linux.
For the software-related user support you can post a new topic on our forum.
R3BRoot is distributed under the terms of the GNU General Public Licence version 3 (GPLv3).
Please visit releases
git clone https://github.com/R3BRootGroup/R3BRoot.git
cd R3BRoot
git clone https://github.com/R3BRootGroup/macros.git
First, you will need to install FairSoft and FairRoot. For more details:
export SIMPATH=%PATH_TO_FAIRSOFT%
export FAIRROOTPATH=%PATH_TO_FAIRROOT%
# from %R3BRoot_DIRECTORY%
mkdir build
cmake -S . -B ./build
cmake --build ./build -- -j${number_of_threads}
source build/config.sh
For the building with Conan package manager, see this instruction.
To run the detector tests do:
# In the same shell from %R3BRoot_DIRECTORY%:
cd build
ctest --parallel ${number_of_threads}
This is performed from the GitHub parameter and data analysis repository, which contains all the macros and parameter files needed by the user to carry out the simulations and data analysis of each experiment. There is one repository per experiment, please, visit the R3B-Wiki for more details.
Please ask your questions, request features, and report issues by creating a github issue.
The R3BRoot project uses clang-format-15 to ensure a common code formatting. The script "clang-format-all.sh" can be used for this purpose:
source util/clang-format-all.sh