GEANT4 provides a number of techniques for representing replica or similar repeating geometryCachedParameterisation aims to provide functionality for loading geometry described by data, where the memory requirement for the parameterisation itself as well as the data is larger than the available system memory.
This code requires a slight modification to G4PVReplica
. We need to allow initialisation with zero replicas, and we add a G4PVReplica::SetNoReplicas
method with we update based on the position of the current step. Replace the files in patches
with the corresponding files in geant4.9.6/source/geometry/volumes/
and recompile GEANT4.
A number of dependencies are required for reading/writing data on disk as well as constructing the R* trees, and caching objects in memory: * libspatialindex *LRUCache
mkdir build/
cd build/
cmake ..
make -j4
cd ..
See macros/config.mac
for configuration options.
./build/CachedParam macros/vis.mac