Geant4 Cross Reference |
>> 1 $Id: README,v 1.6 2009/08/29 08:48:30 maire Exp $ 1 ---------------------------------------------- 2 ------------------------------------------------------------------- 2 3 3 ========================================= 4 ========================================================= 4 Geant4 - an Object-Oriented Toolkit for S 5 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 ========================================= 6 ========================================================= 6 7 7 amsEcal 8 amsEcal 8 ------- 9 ------- 9 10 10 1- GEOMETRY DEFINITION 11 1- GEOMETRY DEFINITION 11 12 12 AMS Ecal calorimeter is described in the join 13 AMS Ecal calorimeter is described in the joined documument : ams_ecal.pdf 13 14 14 - A single layer is a plane of scintillating 15 - A single layer is a plane of scintillating fibers within a box of 15 absorber material. 16 absorber material. 16 - Single layers are positionned (eg. placemen 17 - Single layers are positionned (eg. placement) within Module 17 (called SuperLayer in the descriptive docum 18 (called SuperLayer in the descriptive document), 18 alternatively with a relative offset of +- 19 alternatively with a relative offset of +- 0.25*distanceInterFibers. 19 - Modules are positionned within calorimeter, 20 - Modules are positionned within calorimeter, alternatively rotated of 20 90 deg around beam axis (X_axis). 21 90 deg around beam axis (X_axis). 21 Therefore all fibers are along Y_axis or Z_ 22 Therefore all fibers are along Y_axis or Z_axis calorimeter. 22 23 23 The default geometry is constructed in Detect 24 The default geometry is constructed in DetectorConstruction class. 24 In addition a transverse uniform magnetic fie 25 In addition a transverse uniform magnetic field can be applied. 25 26 26 2- PHYSICS LISTS 27 2- PHYSICS LISTS 27 28 28 Physics lists can be local (eg. in this exam 29 Physics lists can be local (eg. in this example) or from G4 kernel 29 (physics_lists subdirectory). << 30 physics_lists subdirectory. 30 31 31 - "local" standard EM physics with current ' << 32 - "emstandard_local standard EM physics with current 'default' options. >> 33 These options are explicited in PhysListEmStandard 32 34 33 From geant4/source/physics_lists/constructor << 35 From geant4/source/physics_lists/builders: 34 - "emstandard_opt0" standard EM physics wi 36 - "emstandard_opt0" standard EM physics with all default options 35 - "emstandard_opt1" best CPU performance s 37 - "emstandard_opt1" best CPU performance standard physics for LHC 36 - "emstandard_opt2" 38 - "emstandard_opt2" 37 - "emstandard_opt3" 39 - "emstandard_opt3" 38 40 39 Physics lists and options can be (re)set wit 41 Physics lists and options can be (re)set with UI commands 40 42 41 Please, notice that options set through G4Em 43 Please, notice that options set through G4EmProcessOPtions are global, eg 42 for all particle types. In G4 constructors, << 44 for all particle types. In G4 builders, it is shown how to set options per 43 particle type. 45 particle type. 44 46 45 3- PRIMARY GENERATOR : mono-energetic pencil 47 3- PRIMARY GENERATOR : mono-energetic pencil beam 46 48 47 The primary kinematic is a single particle w 49 The primary kinematic is a single particle which hits the calorimeter 48 perpendicular to the input face (eg. along X 50 perpendicular to the input face (eg. along X_axis). 49 The type of particle and its energy are set 51 The type of particle and its energy are set in the PrimaryGeneratorAction, 50 and can be changed via the G4 build-in comma 52 and can be changed via the G4 build-in commands of ParticleGun class 51 (see the macros provided with this example). 53 (see the macros provided with this example). 52 54 53 One can choose randomly the tranverse positi 55 One can choose randomly the tranverse position of the incident particle, 54 eg. the width of the beam. The associated in 56 eg. the width of the beam. The associated interactive command is built 55 in PrimaryGeneratorMessenger. 57 in PrimaryGeneratorMessenger. 56 58 57 4- DETECTOR RESPONSE 59 4- DETECTOR RESPONSE 58 60 59 The program computes the 'visible' energy, e 61 The program computes the 'visible' energy, eg. the energy deposited 60 in scintillating fibers. << 62 in scintillating fibers. The fibers are packed in pixels. 61 63 62 It also computes the total energy deposited << 64 It also computes the total energy deposited per pixel, either in absorber 63 material or in scintillator material. 65 material or in scintillator material. 64 66 65 The list of fibers fired can be written even << 67 The list of pixels fired are written event per event, on an ascii file. 66 The file is filled at EndOfEvent(); uncommen << 68 The file is created at RunAction::BeginOfRun() and filled at EndOfEvent(); 67 See EventAction::WriteFibers() and the forma << 69 See EventAction::WritePixels() and the format description : eventFormat.txt >> 70 There is also the command /ams/event/writePixels (true/false) 68 71 69 NB: visible energy can be corrected for Birk 72 NB: visible energy can be corrected for Birk's attenuation: 70 see the function SteppingAction::BirksAt 73 see the function SteppingAction::BirksAttenuation() (not activated) 71 74 72 5- HISTOGRAMS << 75 5- HISTOGRAMS and NTUPLE 73 76 74 The Program contains 5 built-in 1D histogram << 77 The Program contains 5 built-in 1D histograms, managed by HistoManager class 75 These histograms can be activated individual << 78 and its Messenger. These histograms can be activated individually 76 /analysis/h1/set id nbBins valMin valMax un << 79 with the command : >> 80 /ams/histo/setHisto id nbBins valMin valMax unit 77 where unit is the desired unit for the histo 81 where unit is the desired unit for the histo (MeV, keV, etc..) 78 (see the macros xxxx.mac). 82 (see the macros xxxx.mac). 79 83 80 1 total energy in calorimeter (eg. summed a << 84 1 total visible energy in calorimeter (eg. summed all pixels) 81 2 vsible energy in calorimeter (eg. summed a << 85 2 total deposit energy in calorimeter (eg. summed all pixels) 82 3 total energy per layer (eg. longitudinal p << 86 3 visible energy per subModule (eg. longitudinal profile) 83 4 visible energy per layer (eg. longitudinal << 87 4 deposit energy per subModule (eg. longitudinal profile) 84 5 visible energy per fiber (eg. lateral prof << 88 5 nb of radiation length seen by geantino 85 89 86 Histograms can be viewed using ROOT. << 90 Histograms can be viewed using ROOT or PAW. See below the note on AIDA. 87 91 88 One can control the name and format of the h 92 One can control the name and format of the histograms file with the command: 89 /analysis/setFileName name (default amsEca << 93 /ams/histo/setFileName name (default ecal) 90 /analysis/setFileType type (choice: root(d << 94 /ams/histo/setFileType type (choice: hbook, root(default), XML) 91 95 92 It is also possible to print selected histog 96 It is also possible to print selected histograms on an ascii file: 93 /analysis/h1/setAscii id << 97 /ams/histo/printHisto id 94 All selected histos will be written on a fil << 98 All selected histos will be written on a file name.ascii (default ecal) >> 99 >> 100 An Ntuple is also predefined. It contains energies, visible and total, >> 101 per subModule and per event. >> 102 The Ntuple is activated with the command: /ams/histo/setNtuple 1 >> 103 >> 104 Note that, by default, histograms are disabled. To activate them, uncomment >> 105 the flag G4ANALYSIS_USE in GNUmakefile. >> 106 >> 107 Before compilation of the example it is optimal to clean up old files: >> 108 gmake histclean >> 109 gmake 95 110 96 6- VISUALIZATION 111 6- VISUALIZATION 97 112 98 Visualization Manager is set in the main(). 113 Visualization Manager is set in the main(). 99 Initialisation of the drawing is done via th 114 Initialisation of the drawing is done via the commands : 100 /vis/... in the macro vis.mac. In interactiv 115 /vis/... in the macro vis.mac. In interactive session: 101 PreInit or Idle > /control/execute vis.mac 116 PreInit or Idle > /control/execute vis.mac 102 117 103 Default view is a longitudinal view of the c 118 Default view is a longitudinal view of the calorimeter. 104 119 105 Tracks are drawn at end of event, and erased 120 Tracks are drawn at end of event, and erased at end of run. 106 Optionaly one can choose to draw all particl 121 Optionaly one can choose to draw all particles, only charged one, or none. 107 This command is defined in EventActionMessen 122 This command is defined in EventActionMessenger. 108 123 109 7- HOW TO START ? 124 7- HOW TO START ? 110 125 111 - compile and link to generate an executable 126 - compile and link to generate an executable 112 % cd amsEcal 127 % cd amsEcal 113 % gmake 128 % gmake 114 129 115 - execute amsEcal in 'batch' mode from macro 130 - execute amsEcal in 'batch' mode from macro files 116 % amsEcal run1.mac 131 % amsEcal run1.mac 117 132 118 - execute amsEcal in 'interactive mode' with 133 - execute amsEcal in 'interactive mode' with visualization 119 % amsEcal 134 % amsEcal 120 .... 135 .... 121 Idle> type your commands. For instance: 136 Idle> type your commands. For instance: 122 Idle> /control/execute run1.mac 137 Idle> /control/execute run1.mac 123 .... 138 .... 124 Idle> exit 139 Idle> exit 125 140 126 8- HANDLE RANDOM NUMBER SEEDS 141 8- HANDLE RANDOM NUMBER SEEDS 127 142 128 The macro rndmSeed.mac shows how to create a << 143 The macro rndmSeed.mac shows how to create a set a random number seeds. 129 Here we save the seed at begin of each run ( 144 Here we save the seed at begin of each run (the number of events per run 130 is arbitrary). The seeds are stored in subdi 145 is arbitrary). The seeds are stored in subdirectory random. 131 146 132 Macro rndmSeed.mac shows also how to start a << 147 Macro run2.mac shows how to start a run from one of these seeds. >> 148 >> 149 9- USING HISTOGRAMS >> 150 >> 151 To use histograms, at least one of the AIDA implementations should be >> 152 available. See InstallAida.txt >> 153