Warning, /geant4/examples/extended/electromagnetic/TestEm5/README is written in an unsupported language. File is not indexed.
0001 -----------------------------------------------------
0002
0003 =========================================================
0004 Geant4 - an Object-Oriented Toolkit for Simulation in HEP
0005 =========================================================
0006
0007 TestEm5
0008 -------
0009 How to study the transmission, absorption and reflection of particles through
0010 a single, thin or thick, layer of material.
0011 In particular, the effects of the multiple scattering can be plotted.
0012
0013 1- GEOMETRY DEFINITION
0014
0015 The "absorber" is a box made of a given material.
0016
0017 Three parameters define the absorber :
0018 - the material of the absorber,
0019 - the thickness of an absorber,
0020 - the transverse size of the absorber (the input face is a square).
0021
0022 A volume "World" contains the "absorber".
0023
0024 In addition a transverse uniform magnetic field can be applied.
0025
0026 The default geometry is constructed in DetectorConstruction class, but all the
0027 parameters can be changed via commands defined in the DetectorMessenger class.
0028 The parameters of the "World" can be changed, too. However, if World material
0029 is not set to vacuum, the plots 10->43 below may be not pertinent.
0030
0031 2- PHYSICS LIST
0032
0033 Physics lists are based on modular design. Several modules are instantiated:
0034 1. Transportation
0035 2. EM physics
0036 3. Decays
0037 4. StepMax - for step limitation
0038
0039 EM physics builders can be local (eg. in this example) or from G4 kernel
0040 physics_lists subdirectory.
0041
0042 Local physics builders:
0043 - "local" standard EM physics with current 'best' options setting
0044 these options are explicited in PhysListEmStandard
0045 - "standardSSM" standard EM physics with alternative single Coulomb
0046 scattering model instead of multiple scattering.
0047
0048 From geant4/source/physics_lists/builders:
0049 - "emstandard_opt0" recommended standard EM physics for LHC
0050 - "emstandard_opt1" best CPU performance standard physics for LHC
0051 - "emstandard_opt2" similar fast simulation
0052 - "emstandard_opt3" best standard EM options - analog to "local" above
0053 - "emstandard_opt4" best current advanced EM options standard + lowenergy
0054 - "emstandardWVI" standard EM physics and WentzelVI multiple scattering
0055 - "emstandardSS" standard EM physics and single scattering model
0056 - "emlivermore" low-energy EM physics using Livermore data
0057 - "empenelope" low-energy EM physics implementing Penelope models
0058 - "emlowenergy" low-energy EM physics implementing experimental
0059 low-energy models
0060
0061 Physics lists and options can be (re)set with UI commands
0062
0063 Please, notice that options set through G4EmProcessOptions are global, eg
0064 for all particle types. In G4 builders, it is shown how to set options per
0065 particle type.
0066
0067 3- AN EVENT : THE PRIMARY GENERATOR
0068
0069 The primary kinematic consists of a single particle which hits the absorber
0070 perpendicular to the input face, so the default beam direction is along X
0071 axis. The type of the particle and its energy are set in the
0072 PrimaryGeneratorAction class, and can be changed via the G4 build-in
0073 commands of G4ParticleGun class (see the macros provided with this example).
0074
0075 If thickness of absorber is changed for some run in the same macro, then
0076 gun position should be modifined using /gun/position IU command.
0077
0078 4- VISUALIZATION
0079
0080 The Visualization Manager is set in the main().
0081 The initialisation of the drawing is done via the commands in vis.mac
0082 In interactive session:
0083 PreInit or Idle > /control/execute vis.mac
0084
0085 The example has a default view which is a longitudinal view of the detector.
0086
0087 The tracks are drawn at the end of event, and erased at the end of run.
0088 Optionally one can choose to draw all particles, only the charged, or none.
0089 This command is defined in EventActionMessenger class.
0090
0091 5- TRACKING
0092
0093 During the tracking, one can keep or not the secondaries : see StackingAction
0094 class and its Messenger (StackingMessenger).
0095 One can also limit 'by hand' the step lenght of the particle. As an example,
0096 this limitation is implemented as a 'full' process : see StepMax class and its
0097 Messenger. The 'StepMax process' is registered in the Physics List.
0098
0099 6- DETECTOR RESPONSE
0100
0101 At the end of a run, from the histogram(s), one can study different
0102 physics quantities such as :
0103 - energy deposit in the absorber,
0104 - energy spectrum of secondaries at creation,
0105 - energy spectrum and angle distribution of particles at exit,
0106 - transmission and backscattering coefficients,
0107 - ...
0108
0109 7- List of the built-in histograms
0110 ----------------------------------
0111
0112 The test contains more than 60 built-in 1D histograms, which are managed by
0113 G4AnalysisManager class and its Messenger. The histos can be individually activated
0114 with the command :
0115 /analysis/h1/set id nbBins valMin valMax unit
0116 where unit is the desired unit for the histo (MeV or keV, deg or mrad, etc..)
0117 (see the macros xxxx.mac).
0118
0119 1 "energy deposit in absorber"
0120 2 "energy of charged secondaries at creation"
0121 3 "energy of neutral secondaries at creation"
0122 4 "energy of charged at creation (log10(Ekin))"
0123 5 "energy of neutral at creation (log10(Ekin))"
0124 6 "x_vertex of charged secondaries (all)"
0125 7 "x_vertex of charged secondaries (not absorbed)"
0126 10 "(transmit, charged) : kinetic energy at exit of world"
0127 11 "(transmit, charged) : ener fluence: dE(MeV)/dOmega"
0128 12 "(transmit, charged) : space angle dN/dOmega"
0129 13 "(transmit, charged) : projected angle at exit of world"
0130 14 "(transmit, charged) : projected position at exit of world"
0131 15 "(transmit, charged) : radius at exit of world"
0132 20 "(transmit, neutral) : kinetic energy at exit of world"
0133 21 "(transmit, neutral) : ener fluence: dE(MeV)/dOmega"
0134 22 "(transmit, neutral) : space angle dN/dOmega"
0135 23 "(transmit, neutral) : projected angle at exit of world"
0136 30 "(reflect , charged) : kinetic energy at exit of world"
0137 31 "(reflect , charged) : ener fluence: dE(MeV)/dOmega"
0138 32 "(reflect , charged) : space angle dN/dOmega"
0139 33 "(reflect , charged) : projected angle at exit of world"
0140 40 "(reflect , neutral) : kinetic energy at exit of world"
0141 41 "(reflect , neutral) : ener fluence: dE(MeV)/dOmega"
0142 42 "(reflect , neutral) : space angle dN/dOmega"
0143 43 "(reflect , neutral) : projected angle at exit of world"
0144 50 "energy of Auger e- at creation"
0145 51 "energy of fluorescence gamma at creation"
0146 52 "energy of Auger e- at creation (log scale)"
0147 53 "energy of fluorescence gamma at creation (log scale)"
0148 54 "energy of PIXE Auger e- at creation"
0149 55 "energy of PIXE gamma at creation"
0150 56 "energy of PIXE Auger e- at creation (log scale)"
0151 57 "energy of PIXE gamma at creation (log scale)"
0152 58 "energy of G4DNA Auger e- at creation"
0153 59 "energy of G4DNA gamma at creation"
0154 60 "energy of G4DNA Auger e- at creation (log scale)"
0155 61 "energy of G4DNA gamma at creation (log scale)"
0156
0157 One can control the name of the histograms file with the command:
0158 /analysis/setFileName name (default testem5)
0159
0160 It is possible to choose the format of the histogram file : root (default),
0161 hdf5, xml, csv, by changing the default file type in HistoManager.cc
0162
0163 It is also possible to print selected histograms on an ascii file:
0164 /analysis/h1/setAscii id
0165 All selected histos will be written on a file name.ascii (default testem5)
0166
0167 8- GEANT4/GEANT3/DATA COMPARISON
0168
0169 A Geant4/Geant3/exp. data comparison is given here for a few cases.
0170 These cases can be classified as follow:
0171 - e-/e+ incident particles versus protons and others.
0172 - 3 energy regimes: low: < 1MeV; medium: 1MeV -> few 10MeV; high: > 100MeV
0173
0174 We indicate here the corresponding macros.
0175
0176 | low energy | medium energy | high energy
0177 --------------------------------------------------------
0178 | acosta.mac | |
0179 e-+ | berger.mac | hanson.mac |
0180 | hunger.mac | kulchi.mac |
0181 | tavola.mac | |
0182 --------------------------------------------------------
0183 others| bichsel.mac | vincour.mac | shen1.mac shen2.mac
0184 | | gottsch.mac | tramu.mac
0185 --------------------------------------------------------
0186
0187 9- HOW TO START ?
0188
0189 - Execute TestEm5 in 'batch' mode from macro files e.g.
0190 % $(G4INSTALL)/bin/$(G4SYSTEM)/TestEm5 myMacro.mac
0191
0192 - Execute TestEm5 in 'interactive' mode with visualization e.g.
0193 % $(G4INSTALL)/bin/$(G4SYSTEM)/TestEm5
0194 Then type your commands, for instance :
0195 Idle> control/execute vis.mac
0196 Idle> run/beamOn 5
0197 ....
0198
0199 Macros provided in this example:
0200 - acosta.mac: Back x-ray emission by 20 keV electrons in Silver.
0201 (E. Acosta et al. Journal of Applied Physics 83(11) 1998 page 6038,
0202 Fig. 4-5-6)
0203 - anthony.mac: LPM and dielectric effect measurement: 25 GeV electrons
0204 through thin foils.
0205 (P.L. Anthony et al. Phys.Rev. D 56 (1997) page 1373.)
0206 - atima.mac: to test PhysListEm19DStandard for ions
0207 - berger.mac: Energy deposit by 1 MeV electrons in silicon counters.
0208 (M.J.Berger et al. NIM 69 (1969) page 181.)
0209 - bichsel.mac: 0.766 MeV protons, transmitted through 1.37 mg/cm2 Al
0210 (H.Bichsel Phys.Rev. 112 (1958) page 182.)
0211 - dedx1.mac: to control dE/dx calculation.
0212 - dedx2.mac: to control dE/dx calculation. High statistic and plot
0213 - dna.mac: to illustrate DNA physics
0214 - fluo.mac: to illustrate atomic deexcitation options
0215 - gammaSpectrum.mac: to plot gamma spectrum with/without atomic deexcitation.
0216 - geom.mac: to play with geometry (can be run interactively with visualization)
0217 - gottsch.mac: 158.6 MeV protons, transmitted through 0.2160 g/cm2 Al
0218 (B.Gottschalk et al. NIM B74 (1993) page 467.)
0219 - hanson.mac: Angle distribution of 15.7 MeV electrons transmitted through
0220 thin gold foils.
0221 (A.O.Hanson et al. Phys.Rev.84 (1951) page 634.)
0222 - hunger.mac: Back scattering of 41 keV electrons.
0223 (H.J. Hunger and L. Kuchler Phys. Stat. Sol.(a) 56, K45 (1979))
0224 - ion.mac: ion C12 in 1m Iron
0225 - kulchi.mac: 2.25 MeV e-, transmitted through 26.60 mg/cm2 Al
0226 (L.Kulchitsky Phys.Rev. 61 (1941) page 254.)
0227 - mumsc.mac: 100 GeV mu+, transmitted through 1 m of iron
0228 - mutev.mac: 1 TeV mu+, transmitted through 1 m of iron
0229 - pixe.mac: to illustrate atomic deexcitation options
0230 - pixe_ANSTO.mac: to illustrate how to activate the ANSTO PIXE data libraries,
0231 for both cross sections and fluorescence radiation yields (for materials with Z < 93).
0232 The cross sections are available for protons with energy < 5 MeV
0233 and alpha particles with energy < 10 MeV/nucleon.
0234 (S. Bakr et al. (2021) NIM B, 507:1119),
0235 (S. Bakr et al (2018), NIMB B, 436: 285-291)
0236 - posi.mac: to test PhysListEm19DStandard for positron
0237 - shen1.mac: Angle distribution of high energy (50-200 GeV/c) protons
0238 transmitted through different targets.
0239 (G. Shen et al. Phys.Rev. D20 (1979) page 1584.)
0240 - shen2.mac: proton 175 GeV/c, transmitted through 8.004 mm Al
0241 (G. Shen et al. Phys.Rev. D20 (1979) page 1584.)
0242 - stepMax.mac: to test the command /testem/stepMax
0243 - tavora.mac: Back scattering of 35 keV electrons in Silver.
0244 (L.M. Tavora et al. J.Phys.D: Appl. Phys. 33 (2000) page 2497,
0245 Fig. 7)
0246 - tramu.mac: 1 TeV mu+, transmitted through 3 m of iron
0247 (Rev. of Particle Physics Eur. Phys. Jour. C (2000) page 172.
0248 Rev. of Particle Physics Letters B 592 (2004) page 251.)
0249 - vincour.mac: Angle distribution of 6.56 MeV protons transmitted through
0250 thin silicon targets.
0251 (J.Vincour,P.Bem NIM 148 (1978) page 396.)
0252 - vis.mac - to activate visualization