Geant4 Cross Reference

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

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 Au196.mac 220 bytes       2024-12-05 15:16:16
File CMakeLists.txt 2198 bytes       2024-12-05 15:16:16
File GNUmakefile 465 bytes       2024-12-05 15:16:16
C++ file Hadr03.cc 4289 bytes       2024-12-05 15:16:16
File History 9806 bytes       2024-12-05 15:16:16
File README 5619 bytes       2024-12-05 15:16:16
File debug.mac 221 bytes       2024-12-05 15:16:16
File elastic.mac 562 bytes       2024-12-05 15:16:16
File envHadronic.csh 490 bytes       2024-12-05 15:16:16
File envHadronic.sh 466 bytes       2024-12-05 15:16:16
File fusion.mac 290 bytes       2024-12-05 15:16:16
File gamma.mac 375 bytes       2024-12-05 15:16:16
File hadr03.in 324 bytes       2024-12-05 15:16:16
File hadr03.out 21266 bytes       2024-12-05 15:16:16
File inelastic.mac 418 bytes       2024-12-05 15:16:16
File ion.mac 313 bytes       2024-12-05 15:16:16
File nCapture.mac 646 bytes       2024-12-05 15:16:16
File nFission.mac 1078 bytes       2024-12-05 15:16:16
File neutron.mac 580 bytes       2024-12-05 15:16:16
File plotHisto.C 705 bytes       2024-12-05 15:16:16
File vis.mac 2023 bytes       2024-12-05 15:16:16

  1 
  2      =========================================================
  3      Geant4 - an Object-Oriented Toolkit for Simulation in HEP
  4      =========================================================
  5 
  6                             Hadr03
  7                             ------
  8 
  9    How to compute total cross section from the direct evaluation of the 
 10    mean free path ( see below, item Physics).
 11    How to identify nuclear reactions.
 12    How to plot energy spectrum of secondary particles.   
 13   
 14  1- GEOMETRY DEFINITION
 15  
 16    It is a single box representing a 'semi infinite' homogeneous medium.
 17    Two parameters define the geometry :
 18   - the material of the box,
 19   - the (full) size of the box.
 20   
 21    The default geometry (10 m of molybdenum) is built in DetectorConstruction,
 22    but the above parameters can be changed interactively via commands defined
 23    in DetectorMessenger.
 24   
 25  2- PHYSICS LIST
 26  
 27    The PhysicsList contains builders for hadronic interactions.
 28    Predefined G4 PhysicsConstructors or 'local' PhysicsConstructors can be used 
 29    (see geant4/source/physics_lists or example runAndEvent/RE04).
 30    
 31    In order not to introduce 'artificial' constraints on the step size,
 32    electromagnetic processes are not registered: there is no continuous energy 
 33    loss.  
 34  
 35    Several hadronic physics options are controlled by environment variables.
 36    To select them, see Hadr03.cc.
 37    
 38  3- AN EVENT : THE PRIMARY GENERATOR
 39  
 40    The primary kinematic consists of a single particle starting at the edge
 41    of the box. The type of the particle and its energy are set in 
 42    PrimaryGeneratorAction (neutron 1 MeV), and can be changed via the G4 
 43    build-in commands of ParticleGun class (see the macros provided with 
 44    this example).
 45   
 46  4- PHYSICS
 47  
 48    An event is killed at the first interaction of the incident particle.
 49    The absorption length, also called mean free path, is computed as 
 50    the mean value of the track length of the incident particle.
 51    This is why the medium must be 'infinite' : to be sure that interaction
 52    occurs at any events.
 53   
 54    The result is compared with the 'input' value, i.e. with the cross sections
 55    given by G4HadronicProcessStore and used by Geant4.
 56    
 57    The list of nuclear reactions that occured is printed.
 58    (the number of gamma of deexcitation is not printed).
 59    
 60    Then, comes the total list of generated particles and ions.  
 61    The energy spectrum of the scattered particle (if any) and of the created 
 62    secondaries are plotted (see SteppingAction).
 63    
 64    Momentum conservation is checked as :
 65    momentum balance = modulus(P_out - P_in)
 66   
 67    A set of macros defining various run conditions are provided.
 68    The processes can be actived/inactived in order to survey the processes 
 69    individually.
 70 
 71  5- HISTOGRAMS
 72          
 73    The test contains 12 built-in 1D histograms, which are managed by
 74    G4AnalysisManager and its Messenger. The histos can be individually 
 75    activated with the command :
 76    /analysis/h1/set id nbBins  valMin valMax unit 
 77    where unit is the desired unit for the histo (MeV or keV, etc..)
 78    (see the macros xxxx.mac).
 79    
 80             1 "kinetic energy of scattered primary particle"
 81       2 "kinetic energy of gamma"
 82       3 "kinetic energy of e-"      
 83       4 "kinetic energy of neutrons"
 84       5 "kinetic energy of protons"
 85       6 "kinetic energy of deuterons"
 86       7 "kinetic energy of alphas"
 87       8 "kinetic energy of nuclei"
 88       9 "kinetic energy of mesons"
 89       10  "kinetic energy of baryons"
 90       11  "Q = Ekin out - Ekin in"
 91       12  "Pbalance = mag(P_out - P_in)"
 92       13  "atomic mass of nuclei"       
 93       
 94    The histograms are managed by the HistoManager class and its Messenger. 
 95    The histos can be individually activated with the command :
 96    /analysis/h1/set id nbBins  valMin valMax unit 
 97    where unit is the desired unit for the histo (MeV or keV, deg or mrad, etc..)
 98    
 99    One can control the name of the histograms file with the command:
100    /analysis/setFileName  name  (default Hadr03)
101    
102    It is possible to choose the format of the histogram file : root (default),
103    xml, csv, by using namespace in HistoManager.hh
104        
105    It is also possible to print selected histograms on an ascii file:
106    /analysis/h1/setAscii id
107    All selected histos will be written on a file name.ascii (default Hadr03) 
108           
109  6- VISUALIZATION
110  
111    The Visualization Manager is set in the main().
112    The initialisation of the drawing is done via the commands
113    /vis/... in the macro vis.mac. To get visualisation:
114    > /control/execute vis.mac
115   
116    The detector has a default view which is a longitudinal view of the box.
117    The tracks are drawn at the end of event, and erased at the end of run.
118   
119  7- HOW TO START ?
120  
121    Execute Hadr03 in 'batch' mode from macro files :
122   % Hadr03   inelastic.mac
123     
124    Execute Hadr03 in 'interactive mode' with visualization :
125   % Hadr03
126   Idle> control/execute vis.mac
127   ....
128   Idle> type your commands
129   ....
130   Idle> exit
131   
132  Macros provided in this example:
133   - hadr03.in: macro used in Geant4 testing
134   - Au196.mac: neutron (1 MeV) on Au195
135   - elastic.mac: proton (10 MeV) on Mo100. Elastic collisions alone
136   - fusion.mac: deuteron (400 keV) on tritium 
137   - gamma.mac: gamma (10 MeV) on Au196
138   - inelastic.mac: proton (10 MaV) on Mo98. Inelastic interactions alone
139   - ion.mac: Li7 (140 MeV) on Be9
140   - nCapture.mac: neutron (1 eV) on Boron. Capture process alone
141   - nFission.mac: neutron (1 eV) on U235.  Fission process alone
142   - neutron.mac: neutron (1 MeV) on Boron 
143     
144  Macros to be run interactively:
145   - debug.mac: proton (10 MeV) on Boron
146   - vis.mac: To activate visualization