Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/extended/hadronic/Hadr05/

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Name Size       Last modified (GMT) Description
Back Parent directory       2024-12-05 15:16:16
Folder include/       2024-12-05 15:16:16
Folder src/       2024-12-05 15:16:16
File CMakeLists.txt 2160 bytes       2024-12-05 15:16:16
File Cu-lAr.mac 932 bytes       2024-12-05 15:16:16
File Fe-Sci.mac 934 bytes       2024-12-05 15:16:16
File GNUmakefile 407 bytes       2024-12-05 15:16:16
C++ file Hadr05.cc 4340 bytes       2024-12-05 15:16:16
File History 2158 bytes       2024-12-05 15:16:16
File Pb-lAr-em.mac 955 bytes       2024-12-05 15:16:16
File Pb-lAr.mac 925 bytes       2024-12-05 15:16:16
File README 7452 bytes       2024-12-05 15:16:16
File W-lAr.mac 935 bytes       2024-12-05 15:16:16
File emtest.mac 372 bytes       2024-12-05 15:16:16
File emtutor.mac 417 bytes       2024-12-05 15:16:16
File hadr05.in 445 bytes       2024-12-05 15:16:16
File hadr05.out 7176 bytes       2024-12-05 15:16:16
File plotHisto.C 750 bytes       2024-12-05 15:16:16
File vis.mac 2029 bytes       2024-12-05 15:16:16

  1 -------------------------------------------------------------------
  2 
  3      =========================================================
  4      Geant4 - an Object-Oriented Toolkit for Simulation in HEP
  5      =========================================================
  6 
  7                             Hadr05
  8                             ------
  9   
 10  How to collect energy deposition in a sampling calorimeter.
 11  How to survey energy flow.
 12  Hadr05 is the hadronic equivalent of TestEm3.
 13 
 14 
 15  1- GEOMETRY DEFINITION
 16  
 17   The calorimeter is a box made of a given number of layers.
 18   A layer consists of a sequence of various absorbers (maximum MaxAbsor=9).
 19   The layer is replicated.
 20  
 21   Parameters defining the calorimeter :
 22     - the number of layers,
 23     - the number of absorbers within a layer,   
 24     - the material of the absorbers,
 25     - the thickness of the absorbers,
 26     - the transverse size of the calorimeter (the input face is a square). 
 27  
 28   In addition a transverse uniform magnetic field can be applied.
 29  
 30   The default geometry is constructed in DetectorConstruction class, but all
 31   of the above parameters can be modified interactively via the commands 
 32   defined in the DetectorMessenger class.
 33 
 34 
 35         |<----layer 0---------->|<----layer 1---------->|<----layer 2---------->|
 36         |           |           |                       |                       |
 37         ==========================================================================
 38         ||          |           ||          |           ||          |           ||
 39         ||          |           ||          |           ||          |           ||
 40         ||   abs 1  | abs 2     ||   abs 1  | abs 2     ||   abs 1  | abs 2     ||
 41         ||          |           ||          |           ||          |           ||
 42         ||          |           ||          |           ||          |           ||
 43  beam   ||          |           ||          |           ||          |           ||
 44 ======> ||          |           ||          |           ||          |           ||
 45         ||          |           ||          |           ||          |           ||
 46         ||          |           ||          |           ||          |           ||
 47         ||          |           ||          |           ||          |           ||
 48         ||          |           ||          |           ||          |           ||
 49         ||   cell 1 | cell 2    ||   cell 3 | cell 4    ||   cell 5 | cell 6    ||
 50         ==========================================================================
 51         ^           ^           ^           ^           ^           ^           ^
 52         pln1        pln2        pln3       pln4        pln5        pln6       pln7
 53  
 54   NB. The number of absorbers and the number of layers can be set to 1.
 55   In this case we have a unique homogeneous block of matter, which looks like 
 56   a bubble chamber rather than a calorimeter ...
 57   (see the macro emtutor.mac)
 58   
 59   A function, and its associated UI command, allows to build a material
 60   directly from a single isotope.
 61   
 62   To be identified by the ThermalScattering module, the elements composing a
 63   material must have a specific name (see G4ParticleHPThermalScatteringNames.cc)
 64   Examples of such materials are build in Hadr06/src/DetectorConstruction.cc
 65     
 66  2- PHYSICS LISTS
 67  
 68   "Full" set of physics processes are registered, but via PhysicsConstructor
 69   objects rather than complete pre-defined G4 physics lists. This alternative 
 70   way gives more freedom to register physics.
 71   
 72   Physics constructors are either constructors provided in Geant4 (with G4 prefix)
 73   or 'local'. They include : HadronElastic, HadronInelastic, IonsInelastic,
 74   GammaNuclear, RadioactiveDecay and Electomagnetic.
 75   (see geant4/source/physics_lists/constructors)
 76 
 77   HadronElasticPhysicsHP include a model for thermalized neutrons,
 78   under the control of the command /testhadr/phys/thermalScattering
 79  
 80   GammmaNuclearPhysics is a subset of G4BertiniElectroNuclearBuilder.
 81 
 82   ElectromagneticPhysics is a readable version of G4EmStandardPhysics_opt3.
 83 
 84   Several hadronic physics options are controlled by environment variables.
 85   To select them, see Hadr07.cc
 86     
 87  3- AN EVENT : THE PRIMARY GENERATOR
 88  
 89   The primary kinematic consists of a single particle which hits the calorimeter
 90   perpendicular to the input face. The type of the particle and its energy are 
 91   set in the PrimaryGeneratorAction class, and can be changed via the 
 92   G4 build-in commands of G4ParticleGun class (see the macros provided with this 
 93   example).
 94   
 95   In addition one can choose randomly the impact point of the incident particle.
 96   The corresponding interactive command is built in PrimaryGeneratorAction.
 97   
 98   A RUN is a set of events.
 99   
100   Hadr05 computes the energy deposited per absorber and the energy flow through
101   the calorimeter.
102         
103  4- VISUALIZATION
104  
105   The Visualization Manager is set in the main() (see Hadr05.cc).
106   The initialisation of the drawing is done via the commands :
107   /vis/... in the macro vis.mac. In interactive session:
108   PreInit or Idle > /control/execute vis.mac
109   
110   The default view is a longitudinal view of the calorimeter.
111   
112  5- PHYSICS DEMO
113  
114   The particle's type and the physics processes which will be available
115   in this example are set in PhysicsList class.
116   
117   In addition a built-in interactive command (/process/inactivate processName)
118   allows to activate/inactivate the processes one by one.
119   Then one can well visualize the processes one by one, especially 
120   in the bubble chamber setup with a transverse magnetic field.
121  
122  6- HOW TO START ?
123  
124   - Execute Hadr05 in 'batch' mode from macro files
125       % Hadr05  Cu-lAr.mac
126  
127   - Execute Hadr05 in 'interactive mode' with visualization
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.mac : names are self explanatory
138   - Pb-lAr-em.mac : electromagnetic calorimeter
139   - emtest.mac, emtutor.mac : to be run interactively
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 deposit in absorber 1 (MeV/event)
150   histo 12 : longitudinal profile of energy deposit in absorber 2 (MeV/event)  
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 + Eleak
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 + 1 (included)
163   
164  One can control the binning of the histo with the command:
165   /analysis/h1/set   idAbsor  nbin  Emin  Emax  unit 
166   where unit is the desired energy unit for that histo
167          
168   One can control the name of the histograms file with the command:
169   /analysis/setFileName  name  (default hadr05)
170    
171   It is possible to choose the format of the histogram file : root (default),
172   xml, csv, by using namespace in HistoManager.hh 
173     
174  It is also possible to print selected histograms on an ascii file:
175  /analysis/h1/setAscii id
176  All selected histos will be written on a file name.ascii  (default hadr05)
177