GLAD (GSI Large Acceptance Dipole) is the superconducting dipole magnet of the R3B experiment at GSI/FAIR. It provides a large momentum and angular acceptance for charged reaction products, enabling precise tracking and momentum reconstruction of ions produced in relativistic heavy-ion collisions. The magnet is a key component of the R3B experimental setup, designed to operate with high field uniformity and flexibility to accommodate different experimental configurations and detector geometries. This repository manages the macros used to generate the ROOT geometries of GLAD required by R3BRoot for simulations and data analysis. GLAD software is a source distribution with recurring releases for MacOS and Linux.
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.
For the software-related user support you can post a new topic on our forum.
GLAD software is distributed under the terms of the GNU General Public Licence version 3 (GPLv3).
Please visit releases
git clone https://github.com/R3BRootGroup/GLAD.gitFirst, you will need to install FairSoft, FairRoot and R3BRoot. For more details:
-
Install FairSoft, required version jan24p5 or later
-
Install FairRoot, required version 18.8.2 or later
-
Install R3BRoot, required version dec25 or later
Before running the macros, load the path to the files using the config.sh script:
source config.sh Please ask your questions, request features, and report issues by creating a github issue.
The GLAD project uses clang-format-16 to ensure a common code formatting. The script "clang-format-all.sh" can be used for this purpose:
bash util/clang-format-all.shTo avoid common typos in the codebase and documentation, we use codespell.
Check for spelling mistakes using the ignore list defined in .codespell-ignorewords:
codespell -I .codespell-ignorewordsIf you want to automatically fix the detected typos:
codespell -w -I .codespell-ignorewordsThe following systems are tested regularly.
| OS Name | Arch | OS Version | Compiler | CMake | C++ Version |
|---|---|---|---|---|---|
| Almalinux | x86_64 | 9.3 | GCC 11.4.1 | 3.27.9 / 4.0.3 | C++17 / C++20 / C++23 |
| Almalinux | x86_64 | 9.4 | GCC 14.2.0 | 3.30.6 | C++17 |
| RHEL | x86_64 | 9.6 | GCC 14.2.0 | 3.30.6 | C++17 |
| Debian | x86_64 | 11 | GCC 10.2.1 | 3.27.4 / 3.30.0 | C++17 |
| Debian | x86_64 | 12 | GCC 12.2.0 | 3.27.4 / 3.30.0 | C++17 / C++20 |
| Debian | x86_64 | 13 | GCC 14.2.0 | 3.31.6 / 4.0.3 | C++17 |
| Ubuntu | x86_64 | 24.04 | GCC 13.3.0 | 3.28.3 / 4.0.3 | C++17 / C++20 |
| Ubuntu | x86_64 | 25.04 | GCC 14.2.0 | 3.31.6 | C++17 |
| MacOS | arm64 | 15.3 | AppleClang 15 | 4.0.3 | C++17 |
