==== Simulation configuration ==== 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. === How to define a new command === - Add the variable(s) containing the settings information to class ''PRIMASimulationConfig'', implementing the corresponding "get" method. - Initialise these variables in the constructor using their default values. - Add an ''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: "< - Document the new command in this wiki page. \\ === List of commands === * Specify the root file where the geometry (''TGeoManager'' object) to be used in the simulation is saved. geometry-file * Specify if the tagger/scintillator is used as sensiteve detector (SD): use-tagger <0/1> If there is no scintillator in the geometry, use-tagger needs to be set 0 * Specify if the clorimeter is used as sensiteve detector (SD): use-clorimeter <0/1> * Specify if radiation studie should be done: do-radiation-studies <0/1> * Specify the geant4 macro file to be executed. If this command is not used the geant4 interactive shell will be loaded. macro-file * Specify the root file where the simulation output is written. **Attention!** The specified file will be overwritten. root-output-file test_bwec.root * Specify the primary generator to be used primary-generator Until now, the following options are available: * ''particleGun'': uses the geant4 particle gun which can be set in the macro file * ''p16uniform'': 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 MeV * ''primaUniform'': 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! \\