Geant4 Cross Reference |
1 ========================================= 1 ========================================================= 2 Geant4 - an Object-Oriented Toolkit for S 2 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 3 ========================================= 3 ========================================================= 4 4 5 5 6 HADR01 6 HADR01 7 7 8 A.Bagulya, I.Gudowska, V.Ivanchenk 8 A.Bagulya, I.Gudowska, V.Ivanchenko, N.Starkov 9 CERN, Geneva, Switzerla 9 CERN, Geneva, Switzerland 10 Karolinska Institute & Hospital, S 10 Karolinska Institute & Hospital, Stockholm, Sweden 11 Lebedev Physical Institute, Mos 11 Lebedev Physical Institute, Moscow, Russia 12 12 13 13 14 This example application is based on the appli 14 This example application is based on the application IION developed for 15 simulation of proton or ion beam interaction w 15 simulation of proton or ion beam interaction with a water target. Different 16 aspects of beam target interaction are demonst 16 aspects of beam target interaction are demonstrating in the example including 17 longitudinal profile of energy deposition, spe 17 longitudinal profile of energy deposition, spectra of secondary particles, 18 spectra of particles leaving the target. The r 18 spectra of particles leaving the target. The results are presenting in a form 19 of average numbers and histograms. 19 of average numbers and histograms. 20 20 21 21 22 GEOMETRY 22 GEOMETRY 23 23 24 The Target volume is a cylinder placed inside 24 The Target volume is a cylinder placed inside Check cylindrical volume. The 25 Check volume is placed inside the World volume 25 Check volume is placed inside the World volume. The radius and the length of 26 the Check volume are 1 mm larger than the radi 26 the Check volume are 1 mm larger than the radius and the length of the Target. 27 The material of the Check volume is the same a 27 The material of the Check volume is the same as the World material. The World 28 volume has the sizes 10 mm larger than that of 28 volume has the sizes 10 mm larger than that of the Target volume. Any material 29 from the Geant4 database can be defined. The d 29 from the Geant4 database can be defined. The default World material is 30 G4Galactic and the default Target material is 30 G4Galactic and the default Target material is aluminum. The Target is 31 subdivided on number of equal slices. Followin 31 subdivided on number of equal slices. Following UI commands are available to 32 modify the geometry: 32 modify the geometry: 33 33 34 /testhadr/TargetMat G4_Pb 34 /testhadr/TargetMat G4_Pb 35 /testhadr/WorldMat G4_AIR 35 /testhadr/WorldMat G4_AIR 36 /testhadr/TargetRadius 10 mm 36 /testhadr/TargetRadius 10 mm 37 /testhadr/TargetLength 20 cm 37 /testhadr/TargetLength 20 cm 38 /testhadr/NumberDivZ 200 38 /testhadr/NumberDivZ 200 39 39 >> 40 If geometry was changed between two runs, then the following command need to >> 41 be executed: >> 42 >> 43 /testhadr/Update >> 44 40 Beam direction coincides with the target axis 45 Beam direction coincides with the target axis and is Z axis in the global 41 coordinate system. The beam starts 5 mm in fro 46 coordinate system. The beam starts 5 mm in front of the target. G4ParticleGun 42 is used as a primary generator. The energy and 47 is used as a primary generator. The energy and the type of the beam can be 43 defined via standard UI commands 48 defined via standard UI commands 44 49 45 /gun/energy 15 GeV 50 /gun/energy 15 GeV 46 /gun/particle proton 51 /gun/particle proton 47 52 48 Default beam position is -(targetHalfLength + 53 Default beam position is -(targetHalfLength + 5*mm) and direction along Z axis. 49 Beam position and direction can be changed by 54 Beam position and direction can be changed by gun UI commands: 50 55 51 /gun/position 1 10 3 mm 56 /gun/position 1 10 3 mm 52 /gun/direction 1 0 0 57 /gun/direction 1 0 0 53 58 54 however, position command is active only if be 59 however, position command is active only if before it the flag is set 55 60 56 /testhadr/DefaultBeamPosition false 61 /testhadr/DefaultBeamPosition false 57 62 58 SCORING 63 SCORING 59 64 60 The scoring is performed with the help of User 65 The scoring is performed with the help of UserStackingAction class and two 61 sensitive detector classes: one associated wi 66 sensitive detector classes: one associated with a target slice, another with 62 the Check volume. Each secondary particle is s 67 the Check volume. Each secondary particle is scored by the StackingAction. In 63 the StackingAction it is also possible to kill 68 the StackingAction it is also possible to kill all or one type of secondary 64 particles 69 particles 65 70 66 /testhadr/Kill neutron 71 /testhadr/Kill neutron 67 /testhadr/KillAllSecondaries 72 /testhadr/KillAllSecondaries 68 73 69 To control running the following options are a 74 To control running the following options are available: 70 75 71 /testhadr/PrintModulo 100 76 /testhadr/PrintModulo 100 72 /testhadr/DebugEvent 977 77 /testhadr/DebugEvent 977 73 78 74 The last command selects an events, for which 79 The last command selects an events, for which "/tracking/verbose 2" level 75 of printout is established. 80 of printout is established. 76 81 77 82 78 PHYSICS 83 PHYSICS 79 84 80 PhysicsList of the application uses reference << 85 PhysicsList of the application uses components, which are distributed with 81 which are distributed with Geant4 in /geant4/p << 86 Geant4 in /geant4/physics_lists subdirectory. 82 << 83 The reference Physics List name may be defined << 84 run command: << 85 << 86 Hadr01 my.macro QGSP_BERT << 87 << 88 If 3d argument is not set then the PHYSLIST en << 89 If 3d argument is set, it is possible to add t << 90 which defines overlap energies between cascade << 91 87 92 Hadr01 my.macro QGSP_BERT 3.5 8.0 << 88 There is a possibility directly use one of reference Physics Lists if >> 89 using the environment variable PHYSLIST. Alternatively the name of the reference >> 90 Physics List can be given via parameter of the the application as following: 93 91 94 If 6 arguments are used the last enabling addi << 92 $G4BIN/Linux++/hadr01 QGSP_BERT my.macro 95 physics on top of any reference Physics List. << 96 93 97 Hadr01 my.macro QGSP_BERT 3.5 8.0 CI << 94 Finally it is possible to use UI commands (PHYSLIST environment variable is not 98 << 95 defined). The choice of the physics is provided by the UI command: 99 If both 3d argument and the environment variab << 100 reference Phsyics Lists is not instantiated, i << 101 is used built from components, which may be co << 102 The choice of the physics is provided by the U << 103 96 104 /testhadr/Physics QGSP_BIC 97 /testhadr/Physics QGSP_BIC 105 98 106 To see the list of available configurations wi 99 To see the list of available configurations with UI one can use 107 100 108 /testhadr/ListPhysics 101 /testhadr/ListPhysics 109 102 110 The cuts for electromagnetic physics can be es 103 The cuts for electromagnetic physics can be established via 111 104 112 /testhadr/CutsAll 1 mm 105 /testhadr/CutsAll 1 mm 113 /testhadr/CutsGamma 0.1 mm 106 /testhadr/CutsGamma 0.1 mm 114 /testhadr/CutsEl 0.2 mm 107 /testhadr/CutsEl 0.2 mm 115 /testhadr/CutsPos 0.3 mm 108 /testhadr/CutsPos 0.3 mm 116 /testhadr/CutsProt 0.6 mm << 117 109 118 Note that testhadr UI commands are not availab 110 Note that testhadr UI commands are not available in the case when PHYSLIST 119 environment variable is defined. 111 environment variable is defined. 120 112 121 113 122 VISUALIZATION 114 VISUALIZATION 123 115 124 For interactive mode G4 visualization options 116 For interactive mode G4 visualization options and variables should be 125 defined, then the example should be recompiled 117 defined, then the example should be recompiled: 126 118 127 gmake visclean 119 gmake visclean 128 gmake 120 gmake 129 121 >> 122 The vis.mac file can be used an example of visualization. The following command can >> 123 be used: >> 124 >> 125 /testhadr/DrawTracks charged >> 126 /testhadr/DrawTracks charged+n >> 127 /testhadr/DrawTracks neutral >> 128 /testhadr/DrawTracks all >> 129 130 130 131 HISTOGRAMS 131 HISTOGRAMS 132 132 133 There are built in histograms. The 1st one (id << 133 To use histograms any of implementations of AIDA interfaces should 134 deposition along the target. Histograms "22", << 134 be available (see http://aida.freehep.org). 135 energy deposition per particle type. << 135 136 << 136 A package including AIDA and extended interfaces also using Python 137 All other histograms are provided in decimal l << 137 is PI, available from: http://cern.ch/pi . 138 where E is secondary particle energy at produc << 138 >> 139 Once installed PI or PI-Lite in a specified local area $PI_DIR, it is >> 140 required to add the installation path to $PATH, i.e. for example, >> 141 for release 1.2.1 of PI: >> 142 >> 143 setenv PATH ${PATH}:$PI_DIR/1.3.12/app/releases/PI/PI_1_3_12/slc3_gcc323/bin >> 144 >> 145 CERN users can use the PATH to the LCG area on AFS. >> 146 >> 147 Before compilation of the example it is optimal to clean up old >> 148 files: >> 149 >> 150 gmake histclean >> 151 setenv G4ANALYSIS_USE 1 >> 152 gmake >> 153 >> 154 Before running the example the command should be issued: >> 155 >> 156 eval `aida-config --runtime csh` >> 157 >> 158 It is possible to choose the format of the output file with >> 159 histograms using UI command: >> 160 >> 161 /testhadr/HistoName name >> 162 /testhadr/HistoType type >> 163 /testhadr/HistoOption "uncompress" 139 164 140 It is possible to change scale and output file << 165 The following types are available: hbook, root, aida. They will be >> 166 stored in the file "name.hbook", "name.root", or "name.aida". >> 167 If the environment variable HISTODIR is defined, files are stored in this >> 168 subdirectory. 141 169 142 /testhadr/histo/fileName name << 170 To show the content of a histogram ID=i the commands may be applied: 143 /testhadr/histo/setHisto idx nbins vmin vmax u << 144 171 145 Only ROOT histograms are available. << 172 /testhadr/HistoPrint i 146 173 147 All histograms are normalized to the number of 174 All histograms are normalized to the number of events.