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