Geant4 Cross Reference |
1 ---------------------------------------------- 1 ------------------------------------------------------------------- 2 2 3 ========================================= 3 ========================================================= 4 Geant4 - an Object-Oriented Toolkit for S 4 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 ========================================= 5 ========================================================= 6 6 7 Example Par03 7 Example Par03 8 ------------- 8 ------------- 9 9 10 This example demonstrates how to use G4FastSi 10 This example demonstrates how to use G4FastSimHitMaker helper class 11 to create multiple energy deposits from the f 11 to create multiple energy deposits from the fast simulation model. 12 12 13 It requires sensitive detector class to inher 13 It requires sensitive detector class to inherit from both base classes: 14 - G4VSensitiveDetector: for processing of det 14 - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits 15 - G4VFastSimSensitiveDetector: for processing 15 - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits 16 Hits are placed in the same hit collection, s 16 Hits are placed in the same hit collection, so they can be used to 17 compare between the full and the fast simulat 17 compare between the full and the fast simulation. 18 18 19 The geometry used in the example is a homogen 19 The geometry used in the example is a homogeneous cylinder of lead, with 20 3D readout geometry (cylindrical). Analysis o 20 3D readout geometry (cylindrical). Analysis of energy deposits is done 21 in the event action. 21 in the event action. 22 22 23 1. Detector description 23 1. Detector description 24 ----------------------- 24 ----------------------- 25 25 26 The detector is a homogeneous cylinder of lea 26 The detector is a homogeneous cylinder of lead. It is segmented along 27 z, R and phi to create a readout geometry in 27 z, R and phi to create a readout geometry in the cylindrical coordinates. 28 28 29 Fast simulation is attached to the region of 29 Fast simulation is attached to the region of the detector. 30 30 31 31 32 2. Sensitive detector 32 2. Sensitive detector 33 ----------------------- 33 ----------------------- 34 34 35 Sensitive detector inherits from both base cl 35 Sensitive detector inherits from both base classes: 36 - G4VSensitiveDetector: for processing of det 36 - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits 37 - G4VFastSimSensitiveDetector: for processing 37 - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits. 38 Hits are placed in the same hit collection, w 38 Hits are placed in the same hit collection, with a different flag to distinguish 39 between those originated in the full simulati 39 between those originated in the full simulation, and those from the fast 40 simulation. 40 simulation. 41 During visualisation, hits are represented as 41 During visualisation, hits are represented as volumes of different colour: 42 green for full simulation and red for fast si 42 green for full simulation and red for fast simulation. 43 43 44 3. Primary generation 44 3. Primary generation 45 --------------------- 45 --------------------- 46 46 47 Particle gun is used as a primary generator. 47 Particle gun is used as a primary generator. The direction of particles is along 48 the axis of symmetry of the detector (cylinde 48 the axis of symmetry of the detector (cylinder). It is positioned 10 cm in front 49 of the entrance to the detector. 10 GeV elect 49 of the entrance to the detector. 10 GeV electron is used by default. Those values 50 can be changed using /gun/ UI commands. 50 can be changed using /gun/ UI commands. 51 51 52 4. Physics List 52 4. Physics List 53 --------------- 53 --------------- 54 54 55 FTFP_BERT modular physics list is used. On to 55 FTFP_BERT modular physics list is used. On top of it, fast simulation physics 56 is registered for selected particles (electro 56 is registered for selected particles (electrons, positrons, and photons). 57 57 58 58 59 5. User actions 59 5. User actions 60 --------------------------------------------- 60 ---------------------------------------------------------- 61 61 62 - Par03RunAction : run action used for initia 62 - Par03RunAction : run action used for initialization and termination 63 of the run. Histograms for 63 of the run. Histograms for analysis of shower development 64 in the detector are create 64 in the detector are created. 65 65 66 - Par03EventAction : event action used for in 66 - Par03EventAction : event action used for initialization and termination 67 of the event. Analysis o 67 of the event. Analysis of shower development is performed 68 on event-by-event basis. 68 on event-by-event basis. 69 69 70 6. Output 70 6. Output 71 --------- 71 --------- 72 72 73 The execution of the program (examplePar03) p 73 The execution of the program (examplePar03) produces an output with histograms. 74 74 75 The macro file examplePar03.in specifies thre 75 The macro file examplePar03.in specifies three runs. Each run is made of 100 76 events, for single 10 GeV electron beams. The 76 events, for single 10 GeV electron beams. The first run is executed with fast 77 simulation model activated with defualt param 77 simulation model activated with defualt parameters. The second run executes fast 78 simulation with modified parameters. For the 78 simulation with modified parameters. For the third run the fast simulation model 79 is disactivated. 79 is disactivated. 80 Three output files are produced: two with sho 80 Three output files are produced: two with shower development from the fast 81 simulation (with different parameters), and f 81 simulation (with different parameters), and from the full simulation. 82 82 83 7. How to build and run the example 83 7. How to build and run the example 84 ----------------------------------- 84 ----------------------------------- 85 85 86 - Compile and link to generate the executable 86 - Compile and link to generate the executable (in your CMAKE build directory): 87 % cmake <PAR03_SOURCE> 87 % cmake <PAR03_SOURCE> 88 % make 88 % make 89 89 90 - Execute the application (in batch mode): 90 - Execute the application (in batch mode): 91 % ./examplePar03 -m examplePar03.in 91 % ./examplePar03 -m examplePar03.in 92 which produces three root files: Par03_fasts 92 which produces three root files: Par03_fastsim_100events.root, 93 Par03_fastsimModified_100events.root, and Pa 93 Par03_fastsimModified_100events.root, and Par03_fullsim_100events.root. 94 94 95 - Execute the application (in interactive mode 95 - Execute the application (in interactive mode): 96 % ./examplePar03 96 % ./examplePar03 97 which allows to visualize hits. 97 which allows to visualize hits. 98 98 99 8. UI commands 99 8. UI commands 100 -------------- 100 -------------- 101 101 102 UI commands useful in this example: 102 UI commands useful in this example: 103 103 104 - activation/disactivation of the fast simulat 104 - activation/disactivation of the fast simulation model: 105 /param/ActivateModel model 105 /param/ActivateModel model 106 /param/InActivateModel model 106 /param/InActivateModel model 107 107 108 - particle gun commands 108 - particle gun commands 109 /gun/particle e+ 109 /gun/particle e+ 110 /gun/energy 50 GeV 110 /gun/energy 50 GeV 111 /gun/direction 0 0.2 1 111 /gun/direction 0 0.2 1 112 /gun/position 0 0 0 112 /gun/position 0 0 0 113 113 114 UI commands defined in this example: 114 UI commands defined in this example: 115 - detector settings 115 - detector settings 116 /Par03/detector/print 116 /Par03/detector/print 117 /Par03/detector/setDetectorRadius 10 cm 117 /Par03/detector/setDetectorRadius 10 cm 118 /Par03/detector/setDetectorLength 30 cm 118 /Par03/detector/setDetectorLength 30 cm 119 /Par03/detector/setDetectorMaterial G4_Pb 119 /Par03/detector/setDetectorMaterial G4_Pb 120 /Par03/detector/setNbOfLayers 100 120 /Par03/detector/setNbOfLayers 100 121 /Par03/detector/setNbOfPhiCells 20 121 /Par03/detector/setNbOfPhiCells 20 122 /Par03/detector/setNbOfRhoCells 100 122 /Par03/detector/setNbOfRhoCells 100 123 123 124 - fast simulation settings 124 - fast simulation settings 125 /Par03/fastSim/print 125 /Par03/fastSim/print 126 /Par03/fastSim/transverseProfile/sigma 20 mm 126 /Par03/fastSim/transverseProfile/sigma 20 mm 127 /Par03/fastSim/longitudinalProfile/beta 0.6 127 /Par03/fastSim/longitudinalProfile/beta 0.6 128 /Par03/fastSim/longitudinalProfile/alpha 2. 128 /Par03/fastSim/longitudinalProfile/alpha 2. 129 /Par03/fastSim/longitudinalProfile/maxDepth 129 /Par03/fastSim/longitudinalProfile/maxDepth 20 130 /Par03/fastSim/numberOfHits 500 130 /Par03/fastSim/numberOfHits 500