Simulation framework for germanium detector experiments
🚧 Work in progress...
The remage project provides a modern Geant4-based C++ library that can be used to efficiently simulate physics processes in typical germanium detector experiments. The library is setup-agnostic, therefore the user is mainly asked to provide a geometrical implementation of his/her experimental setup (C++ code and GDML among the supported formats). The user can then benefit from a set of tools to perform common actions (frequently used materials, geometry helpers, standard output classes, LAr scintillation mechanism, and much more).
- CMake (≥ v3.8) — Build-only dependency
- Geant4 (≥ v10.5) — with:
GEANT4_INSTALL_DATA=ON
GEANT4_USE_HDF5=ON
[optional]GEANT4_USE_USOLIDS=ON
[optional], requires VecGeom libraryGEANT4_USE_GDML=ON
[optional]GEANT4_BUILD_MULTITHREADED=ON
[optional]
- bxdecay0 (≥ v1.0) with
BXDECAY0_WITH_GEANT4_EXTENSION=ON
, to simulate double-beta decay (and more...) - ROOT, only for output formatting
- VecGeom, for vectorized geometry
(Geant4 must be compiled with
GEANT4_USE_USOLIDS=ON
too)
To build and install the project, first clone the repository:
$ git clone [email protected]:legend-exp/remage.git
Create a build directory, and run CMake from there:
$ mkdir -p build && cd build
$ cmake <path-to-remage-source> -DCMAKE_INSTALL_PREFIX=<your-custom-install-location>
The default build type is set to RelWithDebInfo
, if you need something
different you can customize it by setting the
CMAKE_BUILD_TYPE
variable. Finally build and install the project (in /usr/local
by default):
$ cmake --build . --target install
and you're done!
Under construction... Browse the examples
directory in the meanwhile.