To set the general behaviour of a simulation, a config file mechanism is used. The singleton class PRIMASimulationConfig
is responsible for reading the config file and providing the other classes with the specified config settings.
PRIMASimulationConfig
, implementing the corresponding “get” method.if
block in the while
loop inside method PRIMASimulationConfig::ReadConfFile
, e.g. if(key == "macro-file"){ macroFileName = value; macroSpecified = 1; cout<<"macro file name set to: "<<macroFileName<<endl; }
TGeoManager
object) to be used in the simulation is saved. geometry-file <filename>
use-tagger <0/1>
If there is no scintillator in the geometry, use-tagger needs to be set 0
use-clorimeter <0/1>
do-radiation-studies <0/1>
macro-file <geant4 macro file>
root-output-file test_bwec.root
primary-generator <generator>
Until now, the following options are available:
particleGun
: uses the geant4 particle gun which can be set in the macro filep16uniform
: generates electron over the surface of proto16, placed at 1.2 m from the particle source. The electron energy is uniformly distributed between 100 MeV and 1500 MeVprimaUniform
: generates electrons over the surface of the PRIMA detector (between Rin and Rmin [mm]), placed at 1200 mm (=dz) from the particle source. The electron energy is uniformly distributed between Emin and Emax [MeV].pi0Gun
: generates a pion with arbitrary directon, origin 1.2 m from detector (z-direction). The particles energy is uniformly distributed between Emin and Emax. If Emin = Emax, the particles have a constant initial energy. The pion instantly decays into two photons with random momentum directions constrained by momentum conservation. Also the angles of the pion can be chosen (theta, phiMin, phiMax [deg]).beam
: shoots electrons in z-direction, is positioned a view mm before the target and has to be used with a geometry which includes the target!