Geant4 Cross Reference |
1 ---------------------------------------------- << 2 << 3 ========================================= 1 ========================================================= 4 Geant4 - an Object-Oriented Toolkit for S 2 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 ========================================= 3 ========================================================= 6 4 7 Hadr05 << 5 8 ------ << 6 HADR05 9 << 7 10 How to collect energy deposition in a samplin << 8 W.Pokorski 11 How to survey energy flow. << 9 (based on Hadr00 by V. Ivantchenko) 12 Hadr05 is the hadronic equivalent of TestEm3. << 10 CERN, Geneva, Switzerland 13 << 11 14 << 12 15 1- GEOMETRY DEFINITION << 13 This example demonstrates the usage of G4GenericPhysicsList to build 16 << 14 the concrete physics list at the run time. The code is a copy of 17 The calorimeter is a box made of a given num << 15 example Hadr00 with the only exception of the main file, where the 18 A layer consists of a sequence of various ab << 16 physics list is handled using the G4GenericPhysicsList 19 The layer is replicated. << 17 mechanism. Please refer to Hadr00 documentation for any other 20 << 18 functionality. 21 Parameters defining the calorimeter : << 19 22 - the number of layers, << 20 The G4GenericPhysicsList class allows to build the physics list at the run 23 - the number of absorbers within a layer, << 21 time in two possible ways, either by processing a macro file 24 - the material of the absorbers, << 22 containing the 'physics list' or by passing a vector of 'physics 25 - the thickness of the absorbers, << 23 constructors' names to the constructor of the class. 26 - the transverse size of the calorimeter ( << 24 27 << 25 To run the example you can call 28 In addition a transverse uniform magnetic fi << 26 29 << 27 Hadr05 hadr05.in FTFP_BERT.mac 30 The default geometry is constructed in Detec << 28 31 of the above parameters can be modified inte << 29 where FTFP_BERT.mac is the macro file containing the 'physics list'. 32 defined in the DetectorMessenger class. << 30 33 << 31 If you run this example by calling 34 << 32 35 |<----layer 0---------->|<----layer 1- << 33 Hadr05 hadr05.in 36 | | | << 34 37 ====================================== << 35 the physics list will be constructed by using a vector of the names of 38 || | || | << 36 the different physics constructor defined in the Hard05.cc file. 39 || | || | << 40 || abs 1 | abs 2 || abs 1 | << 41 || | || | << 42 || | || | << 43 beam || | || | << 44 ======> || | || | << 45 || | || | << 46 || | || | << 47 || | || | << 48 || | || | << 49 || cell 1 | cell 2 || cell 3 | << 50 ====================================== << 51 ^ ^ ^ ^ << 52 pln1 pln2 pln3 pln << 53 << 54 NB. The number of absorbers and the number o << 55 In this case we have a unique homogeneous bl << 56 a bubble chamber rather than a calorimeter . << 57 (see the macro emtutor.mac) << 58 << 59 A function, and its associated UI command, a << 60 directly from a single isotope. << 61 << 62 To be identified by the ThermalScattering mo << 63 material must have a specific name (see G4Pa << 64 Examples of such materials are build in Hadr << 65 << 66 2- PHYSICS LISTS << 67 << 68 "Full" set of physics processes are register << 69 objects rather than complete pre-defined G4 << 70 way gives more freedom to register physics. << 71 << 72 Physics constructors are either constructors << 73 or 'local'. They include : HadronElastic, Ha << 74 GammaNuclear, RadioactiveDecay and Electomag << 75 (see geant4/source/physics_lists/constructor << 76 << 77 HadronElasticPhysicsHP include a model for t << 78 under the control of the command /testhadr/p << 79 << 80 GammmaNuclearPhysics is a subset of G4Bertin << 81 << 82 ElectromagneticPhysics is a readable version << 83 << 84 Several hadronic physics options are control << 85 To select them, see Hadr07.cc << 86 << 87 3- AN EVENT : THE PRIMARY GENERATOR << 88 << 89 The primary kinematic consists of a single p << 90 perpendicular to the input face. The type of << 91 set in the PrimaryGeneratorAction class, and << 92 G4 build-in commands of G4ParticleGun class << 93 example). << 94 << 95 In addition one can choose randomly the impa << 96 The corresponding interactive command is bui << 97 << 98 A RUN is a set of events. << 99 << 100 Hadr05 computes the energy deposited per abs << 101 the calorimeter. << 102 << 103 4- VISUALIZATION << 104 << 105 The Visualization Manager is set in the main << 106 The initialisation of the drawing is done vi << 107 /vis/... in the macro vis.mac. In interactiv << 108 PreInit or Idle > /control/execute vis.mac << 109 << 110 The default view is a longitudinal view of t << 111 << 112 5- PHYSICS DEMO << 113 << 114 The particle's type and the physics processe << 115 in this example are set in PhysicsList class << 116 << 117 In addition a built-in interactive command ( << 118 allows to activate/inactivate the processes << 119 Then one can well visualize the processes on << 120 in the bubble chamber setup with a transvers << 121 << 122 6- HOW TO START ? << 123 << 124 - Execute Hadr05 in 'batch' mode from macro << 125 % Hadr05 Cu-lAr.mac << 126 << 127 - Execute Hadr05 in 'interactive mode' with << 128 % Hadr05 << 129 .... << 130 Idle> type your commands. For instance: << 131 Idle> /control/execute vis.mac << 132 .... << 133 Idle> exit << 134 << 135 Macros provided in this example: << 136 - hadr05.in: macro used in Geant4 testing << 137 - Fe-Sci.mac, Cu-lAr.mac, Pb-lAr.mac, W-lAr. << 138 - Pb-lAr-em.mac : electromagnetic calorimete << 139 - emtest.mac, emtutor.mac : to be run intera << 140 - vis.mac: to activate visualization << 141 << 142 7- HISTOGRAMS << 143 << 144 Hadr05 can produce histograms : << 145 histo 1 : energy deposit in absorber 1 << 146 histo 2 : energy deposit in absorber 2 << 147 ...etc........... << 148 << 149 histo 11 : longitudinal profile of energy de << 150 histo 12 : longitudinal profile of energy de << 151 ...etc........... << 152 << 153 histo 21 : energy flow (MeV/event) << 154 << 155 histo 22 : total energy deposited << 156 histo 23 : total energy leakage << 157 histo 24 : total energy released : Edep + El << 158 << 159 NB. Numbering scheme for histograms: << 160 layer : from 1 to NbOfLayers (included) << 161 absorbers : from 1 to NbOfAbsor (included) << 162 planes : from 1 to NbOfLayers*NbOfAbsor + << 163 << 164 One can control the binning of the histo with << 165 /analysis/h1/set idAbsor nbin Emin Emax << 166 where unit is the desired energy unit for th << 167 << 168 One can control the name of the histograms f << 169 /analysis/setFileName name (default hadr05 << 170 << 171 It is possible to choose the format of the h << 172 xml, csv, by using namespace in HistoManager << 173 << 174 It is also possible to print selected histogr << 175 /analysis/h1/setAscii id << 176 All selected histos will be written on a file << 177 <<