Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/amsEcal/

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 random/       2024-12-05 15:16:16
Folder showers/       2024-12-05 15:16:16
Folder src/       2024-12-05 15:16:16
File CMakeLists.txt 2123 bytes       2024-12-05 15:16:16
File GNUmakefile 402 bytes       2024-12-05 15:16:16
File History 7088 bytes       2024-12-05 15:16:16
File README 5097 bytes       2024-12-05 15:16:16
C++ file amsEcal.cc 3737 bytes       2024-12-05 15:16:16
File ams_ecal.pdf 717120 bytes       2024-12-05 15:16:16
File eventFormat.txt 267 bytes       2024-12-05 15:16:16
File geantino.mac 168 bytes       2024-12-05 15:16:16
File mips.mac 547 bytes       2024-12-05 15:16:16
File rndmSeed.mac 1104 bytes       2024-12-05 15:16:16
File run0.mac 232 bytes       2024-12-05 15:16:16
File run1.mac 298 bytes       2024-12-05 15:16:16
File run1.out 19570 bytes       2024-12-05 15:16:16
File run2.mac 536 bytes       2024-12-05 15:16:16
File vis.mac 1851 bytes       2024-12-05 15:16:16

  1 -------------------------------------------------------------------
  2 
  3      =========================================================
  4      Geant4 - an Object-Oriented Toolkit for Simulation in HEP
  5      =========================================================
  6 
  7                             amsEcal
  8                             -------
  9   
 10  1- GEOMETRY DEFINITION
 11  
 12  AMS Ecal calorimeter is described in the joined documument : ams_ecal.pdf
 13 
 14  - A single layer is a plane of scintillating fibers within a box of 
 15    absorber material.
 16  - Single layers are positionned (eg. placement) within Module 
 17    (called SuperLayer in the descriptive document),
 18    alternatively with a relative offset of +- 0.25*distanceInterFibers.
 19  - Modules are positionned within calorimeter, alternatively rotated of
 20    90 deg around beam axis (X_axis).   
 21    Therefore all fibers are along Y_axis or Z_axis calorimeter.
 22       
 23  The default geometry is constructed in DetectorConstruction class.   
 24  In addition a transverse uniform magnetic field can be applied.
 25         
 26  2- PHYSICS LISTS
 27  
 28   Physics lists can be local (eg. in this example) or from G4 kernel
 29   (physics_lists subdirectory).
 30      
 31   - "local" standard EM physics with current 'default' options.
 32     
 33   From geant4/source/physics_lists/constructors:   
 34     - "emstandard_opt0" standard EM physics with all default options
 35     - "emstandard_opt1" best CPU performance standard physics for LHC
 36     - "emstandard_opt2"     
 37     - "emstandard_opt3" 
 38     
 39   Physics lists and options can be (re)set with UI commands
 40     
 41   Please, notice that options set through G4EmProcessOPtions are global, eg
 42   for all particle types. In G4 constructors, it is shown how to set options per
 43   particle type.
 44               
 45  3- PRIMARY GENERATOR : mono-energetic pencil beam
 46  
 47   The primary kinematic is a single particle which hits the calorimeter
 48   perpendicular to the input face (eg. along X_axis). 
 49   The type of particle and its energy are set in the PrimaryGeneratorAction,
 50   and can be changed via the G4 build-in commands of ParticleGun class 
 51   (see the macros provided with this example).
 52   
 53   One can choose randomly the tranverse position of the incident particle,
 54   eg. the width of the beam. The associated interactive command is built
 55   in PrimaryGeneratorMessenger.
 56 
 57  4- DETECTOR RESPONSE
 58   
 59   The program computes the 'visible' energy, eg. the energy deposited
 60   in scintillating fibers. 
 61    
 62   It also computes the total energy deposited per layer, either in absorber
 63   material or in scintillator material.
 64   
 65   The list of fibers fired can be written event per event, on an ascii file.
 66   The file is filled at EndOfEvent(); uncomment the function WriteFibers()
 67   See EventAction::WriteFibers() and the format description : eventFormat.txt
 68    
 69   NB: visible energy can be corrected for Birk's attenuation:
 70       see the function SteppingAction::BirksAttenuation() (not activated)
 71    
 72  5- HISTOGRAMS
 73         
 74   The Program contains 5 built-in 1D histograms, managed by G4AnalysisManager. 
 75   These histograms can be activated individually with the command :
 76   /analysis/h1/set id nbBins  valMin valMax unit 
 77   where unit is the desired unit for the histo (MeV, keV, etc..)
 78   (see the macros xxxx.mac).
 79  
 80   1 total  energy in calorimeter (eg. summed all layers) 
 81   2 vsible energy in calorimeter (eg. summed all layers) 
 82   3 total energy per layer (eg. longitudinal profile)
 83   4 visible energy per layer (eg. longitudinal profile)
 84   5 visible energy per fiber (eg. lateral profile)  
 85 
 86   Histograms can be viewed using ROOT.
 87  
 88   One can control the name and format of the histograms file with the command:
 89   /analysis/setFileName  name  (default amsEcal)
 90   /analysis/setFileType  type  (choice: root(default), XML, csv)  
 91    
 92   It is also possible to print selected histograms on an ascii file:
 93   /analysis/h1/setAscii id
 94   All selected histos will be written on a file name.ascii (default amsEcal)
 95             
 96  6- VISUALIZATION
 97  
 98   Visualization Manager is set in the main().
 99   Initialisation of the drawing is done via the commands :
100   /vis/... in the macro vis.mac. In interactive session:
101   PreInit or Idle > /control/execute vis.mac
102   
103   Default view is a longitudinal view of the calorimeter.
104   
105   Tracks are drawn at end of event, and erased at end of run.
106   Optionaly one can choose to draw all particles, only charged one, or none.
107   This command is defined in EventActionMessenger.
108   
109  7- HOW TO START ?
110  
111   - compile and link to generate an executable
112   % cd amsEcal
113   % gmake
114     
115   - execute amsEcal in 'batch' mode from macro files
116   % amsEcal   run1.mac
117     
118   - execute amsEcal in 'interactive mode' with visualization
119   % amsEcal
120   ....
121   Idle> type your commands. For instance:
122   Idle> /control/execute run1.mac
123   ....
124   Idle> exit
125   
126  8- HANDLE RANDOM NUMBER SEEDS
127  
128   The macro rndmSeed.mac shows how to create a set of random number seeds.
129   Here we save the seed at begin of each run (the number of events per run
130   is arbitrary). The seeds are stored in subdirectory random.
131    
132   Macro rndmSeed.mac shows also how to start a run from one of these seeds.