Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/examples/extended/hadronic/Hadr05/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                             Hadr05
0008                             ------
0009   
0010  How to collect energy deposition in a sampling calorimeter.
0011  How to survey energy flow.
0012  Hadr05 is the hadronic equivalent of TestEm3.
0013 
0014 
0015  1- GEOMETRY DEFINITION
0016  
0017   The calorimeter is a box made of a given number of layers.
0018   A layer consists of a sequence of various absorbers (maximum MaxAbsor=9).
0019   The layer is replicated.
0020  
0021   Parameters defining the calorimeter :
0022     - the number of layers,
0023     - the number of absorbers within a layer,           
0024     - the material of the absorbers,
0025     - the thickness of the absorbers,
0026     - the transverse size of the calorimeter (the input face is a square). 
0027  
0028   In addition a transverse uniform magnetic field can be applied.
0029  
0030   The default geometry is constructed in DetectorConstruction class, but all
0031   of the above parameters can be modified interactively via the commands 
0032   defined in the DetectorMessenger class.
0033 
0034 
0035         |<----layer 0---------->|<----layer 1---------->|<----layer 2---------->|
0036         |           |           |                       |                       |
0037         ==========================================================================
0038         ||          |           ||          |           ||          |           ||
0039         ||          |           ||          |           ||          |           ||
0040         ||   abs 1  | abs 2     ||   abs 1  | abs 2     ||   abs 1  | abs 2     ||
0041         ||          |           ||          |           ||          |           ||
0042         ||          |           ||          |           ||          |           ||
0043  beam   ||          |           ||          |           ||          |           ||
0044 ======> ||          |           ||          |           ||          |           ||
0045         ||          |           ||          |           ||          |           ||
0046         ||          |           ||          |           ||          |           ||
0047         ||          |           ||          |           ||          |           ||
0048         ||          |           ||          |           ||          |           ||
0049         ||   cell 1 | cell 2    ||   cell 3 | cell 4    ||   cell 5 | cell 6    ||
0050         ==========================================================================
0051         ^           ^           ^           ^           ^           ^           ^
0052         pln1        pln2        pln3       pln4        pln5        pln6       pln7
0053  
0054   NB. The number of absorbers and the number of layers can be set to 1.
0055   In this case we have a unique homogeneous block of matter, which looks like 
0056   a bubble chamber rather than a calorimeter ...
0057   (see the macro emtutor.mac)
0058   
0059   A function, and its associated UI command, allows to build a material
0060   directly from a single isotope.
0061   
0062   To be identified by the ThermalScattering module, the elements composing a
0063   material must have a specific name (see G4ParticleHPThermalScatteringNames.cc)
0064   Examples of such materials are build in Hadr06/src/DetectorConstruction.cc
0065     
0066  2- PHYSICS LISTS
0067  
0068   "Full" set of physics processes are registered, but via PhysicsConstructor
0069   objects rather than complete pre-defined G4 physics lists. This alternative 
0070   way gives more freedom to register physics.
0071   
0072   Physics constructors are either constructors provided in Geant4 (with G4 prefix)
0073   or 'local'. They include : HadronElastic, HadronInelastic, IonsInelastic,
0074   GammaNuclear, RadioactiveDecay and Electomagnetic.
0075   (see geant4/source/physics_lists/constructors)
0076 
0077   HadronElasticPhysicsHP include a model for thermalized neutrons,
0078   under the control of the command /testhadr/phys/thermalScattering
0079  
0080   GammmaNuclearPhysics is a subset of G4BertiniElectroNuclearBuilder.
0081 
0082   ElectromagneticPhysics is a readable version of G4EmStandardPhysics_opt3.
0083 
0084   Several hadronic physics options are controlled by environment variables.
0085   To select them, see Hadr07.cc
0086     
0087  3- AN EVENT : THE PRIMARY GENERATOR
0088  
0089   The primary kinematic consists of a single particle which hits the calorimeter
0090   perpendicular to the input face. The type of the particle and its energy are 
0091   set in the PrimaryGeneratorAction class, and can be changed via the 
0092   G4 build-in commands of G4ParticleGun class (see the macros provided with this 
0093   example).
0094         
0095   In addition one can choose randomly the impact point of the incident particle.
0096   The corresponding interactive command is built in PrimaryGeneratorAction.
0097         
0098   A RUN is a set of events.
0099   
0100   Hadr05 computes the energy deposited per absorber and the energy flow through
0101   the calorimeter.
0102                                 
0103  4- VISUALIZATION
0104  
0105   The Visualization Manager is set in the main() (see Hadr05.cc).
0106   The initialisation of the drawing is done via the commands :
0107   /vis/... in the macro vis.mac. In interactive session:
0108   PreInit or Idle > /control/execute vis.mac
0109         
0110   The default view is a longitudinal view of the calorimeter.
0111         
0112  5- PHYSICS DEMO
0113  
0114   The particle's type and the physics processes which will be available
0115   in this example are set in PhysicsList class.
0116         
0117   In addition a built-in interactive command (/process/inactivate processName)
0118   allows to activate/inactivate the processes one by one.
0119   Then one can well visualize the processes one by one, especially 
0120   in the bubble chamber setup with a transverse magnetic field.
0121  
0122  6- HOW TO START ?
0123  
0124   - Execute Hadr05 in 'batch' mode from macro files
0125       % Hadr05  Cu-lAr.mac
0126  
0127   - Execute Hadr05 in 'interactive mode' with visualization
0128     % Hadr05
0129     ....
0130     Idle> type your commands. For instance:
0131     Idle> /control/execute vis.mac
0132     ....
0133     Idle> exit
0134 
0135   Macros provided in this example:
0136   - hadr05.in: macro used in Geant4 testing 
0137   - Fe-Sci.mac, Cu-lAr.mac, Pb-lAr.mac, W-lAr.mac : names are self explanatory
0138   - Pb-lAr-em.mac : electromagnetic calorimeter
0139   - emtest.mac, emtutor.mac : to be run interactively
0140   - vis.mac: to activate visualization
0141 
0142  7- HISTOGRAMS
0143  
0144  Hadr05 can produce histograms : 
0145   histo 1 : energy deposit in absorber 1
0146   histo 2 : energy deposit in absorber 2
0147   ...etc...........
0148     
0149   histo 11 : longitudinal profile of energy deposit in absorber 1 (MeV/event)
0150   histo 12 : longitudinal profile of energy deposit in absorber 2 (MeV/event)  
0151   ...etc...........  
0152   
0153   histo 21 : energy flow (MeV/event)
0154   
0155   histo 22 : total energy deposited 
0156   histo 23 : total energy leakage  
0157   histo 24 : total energy released : Edep + Eleak
0158        
0159   NB. Numbering scheme for histograms:
0160   layer     : from 1 to NbOfLayers (included)
0161   absorbers : from 1 to NbOfAbsor (included)
0162   planes    : from 1 to NbOfLayers*NbOfAbsor + 1 (included)
0163   
0164  One can control the binning of the histo with the command:
0165   /analysis/h1/set   idAbsor  nbin  Emin  Emax  unit 
0166   where unit is the desired energy unit for that histo
0167          
0168   One can control the name of the histograms file with the command:
0169   /analysis/setFileName  name  (default hadr05)
0170    
0171   It is possible to choose the format of the histogram file : root (default),
0172   xml, csv, by using namespace in HistoManager.hh 
0173         
0174  It is also possible to print selected histograms on an ascii file:
0175  /analysis/h1/setAscii id
0176  All selected histos will be written on a file name.ascii  (default hadr05)
0177