Warning, /geant4/examples/extended/hadronic/Hadr02/README is written in an unsupported language. File is not indexed.
0001 =========================================================
0002 Geant4 - an Object-Oriented Toolkit for Simulation in HEP
0003 =========================================================
0004
0005
0006 HADR02
0007
0008 Example and DMJET: V.Ivanchenko, A.Ivanchenko,
0009 UrQMD: Kh Abdel-Waged et al, A. Dotti
0010 CRMC: A. Ribon (with contributions by T. Pierog and A. Tykhonov)
0011 CERN, Geneva, Switzerland
0012 Geant4 Associate International
0013 University of Bordeaux, CENBG/IN2P3/CNRS
0014 (ESA contract 22712/09/NL/AT)
0015
0016
0017 This example application is providing simulation of ion beam interaction with different
0018 targets. Hadronic aspects of beam target interaction are demonstrated in the example
0019 including longitudinal profile of energy deposition, spectra of secondary particles,
0020 isotope production spectra. The results are presenting in a form of average numbers
0021 and histograms. All ion/ion models of Geant4 are available.
0022
0023 In addition an interface to the FORTRAN code UrQMD-1.3rc developed by Kh, Abdel-Waged et al
0024 for the KACST/NCMP. UrQMD model by S.A.Bass et al. Prog.Part.Nucl.Phys. 41 (1998) 225
0025 and M.Bleicher et al. J.Phys. G25 (1999) 1859.
0026 UrQMD can be used only for ion-ion physics or for all hadronic inelastic interactions.
0027
0028 The interface to the Cosmic Ray Monte Carlo (CRMC) allows to use generators -
0029 such as EPOS, DPMJET, SIBYLL etc. - for hadron-nucleus and nucleus-nucleus collisions
0030 at very high energies.
0031
0032 INSTALLATION
0033
0034 For simulation with Geant4 native models installation procedure is the same as for
0035 other examples.
0036
0037 HOW TO RUN
0038
0039 To run the example:
0040
0041 Hadr02 <yourmacro> QGSP_BIC
0042
0043 The last parameter is optional. It is the name of Geant4 reference Physics List,
0044 alternatively Physics List can be defined via environment variable
0045
0046 setenv PHYSLIST QGSP_BIC
0047
0048 ACTIVATION OF URQMD INTERFACE
0049
0050 UrQMD 1.3 FORTRAN code is NOT provided with Geant4 code-base.
0051 You can get UrQMD code from UrQMD code website: http://urqmd.org
0052 The Geant4 interface has been developed and tested against urqmd-1.3cr
0053 Once the tarball urqmd-1.3cr.tar.gz has been downloaded copy it in the
0054 urqmd1_3 directory of this example.
0055 To compile support for UrQMD interface in the example define the environment
0056 variable G4_USE_URQMD. i.e. by typing:
0057
0058 setenv G4_USE_URQMD 1
0059
0060 Two possible uses of UrQMD interface are possible: use UrQMD code only for
0061 ion-ion interactions or use the provided UrQMD physics list (all hadron inelastic interactions
0062 use UrQMD).
0063 To run the example with UrQMD only for ion-ion physics:
0064
0065 Hadr02 urqmd.in QGSP_BIC
0066
0067 The last parameter is optional. It is the name of Geant4 reference Physics List on
0068 top of which a new ion physics is added. Alternatively Physics List can be defined via
0069 environment variable
0070
0071 setenv PHYSLIST QGSP_BIC
0072
0073 To run the example with the full UrQMD physics:
0074
0075 Hadr02 default.in UrQMD
0076 or:
0077 setenv PHYSLIST UrQMD
0078 Hadr02 default.in
0079
0080 UrQMD physics list can be used in any application, releavant headers and source files (*UrQDM*)
0081 should be copied in your application source tree, together with the urqmd1_3 sub-directory.
0082 Your application makefile should also be modified following the example of the makefile for this
0083 example.
0084
0085 ACTIVATION OF CRMC INTERFACE
0086
0087 The CRMC (Cosmic Ray Monte Carlo) interface is NOT provided with Geant4 code-base.
0088 A modified version of the CRMC interface for Geant4 applications has been kindly
0089 prepared by Tanguy Pierog (IKP) and Andrii Tykhonov (Universite' de Geneve)
0090 and can be obtained here:
0091 https://gitlab.ikp.kit.edu/AirShowerPhysics/crmc/-/tree/svn/geant4
0092
0093 Assuming that this special version of CRMC is installed in the subdirectory
0094 crmc-svn-geant4/ , you need first to build it : please look at the README and
0095 README_GEANT4_CRMC_INTERFACE files for detailed instructions on how to build it.
0096 In short:
0097
0098 1. Install BOOST
0099 2. Install HepMC (and define the corresponding environmental variable HEP_ROOT)
0100 3. Install FASTJET (and define the corresponding environmental variable
0101 FASTJET_ROOT_DIR)
0102 4. Set the LD_LIBRARY_PATH as follows:
0103 export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${HEP_ROOT}/lib:${FASTJET_ROOT_DIR}/lib
0104 5. Source the Geant4 script geant4make.sh , e.g.
0105 source /your-geant4-installation-dir/share/Geant4-10.7.1/geant4make/geant4make.sh
0106 6. cd crmc-svn-geant4/
0107 7. mkdir Build/ ; cd Build/ # Subdirectory where to build and install CRMC
0108 8. cmake ../
0109 9. make
0110 10. make install # Yes, you need also to install it (in the same directory)!
0111
0112 After you have built CRMC you can build the Hadr02 application that uses it as follows:
0113
0114 1. Define the following environmental variable (in addition to the environmental
0115 variables defined above, needed to build CRMC):
0116 export G4_USE_CRMC=1
0117 export CRMCROOT=/your-crmc-installation-dir/crmc-svn-geant4/
0118 export CPATH=${CPATH}:${CRMCROOT}/Build/src:${CRMCROOT}/src
0119 export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CRMCROOT}/Build/lib
0120 export CRMC_CONFIG_FILE=${CRMCROOT}/Build/crmc.param
0121 2. cd /your-geant4/examples/extended/hadronic/Hadr02
0122 3. mkdir Build/ ; cd Build/ # Subdirectory where to build Hadr02
0123 4. cmake -DG4_USE_CRMC=ON -DGeant4_DIR=/your-geant4-installation-dir/ ../
0124 5. make
0125
0126 To run the application:
0127
0128 1. Define the following environmental variable (besides the previous ones):
0129 export PHYSLIST=CRMC_FTFP_BERT
0130 2. cd /your-geant4/examples/extended/hadronic/Hadr02/Build
0131 3. ./Hadr02 crmc.in
0132
0133 which runs the special "CRMC_FTFP_BERT" physics list, defined in this example,
0134 which consists of using the standard FTFP_BERT physics list for hadrons of
0135 kinetic energies below 100 GeV, while using CRMC above 110 GeV : in the interval
0136 between 100 and 110 GeV, there is the transition between FTFP and CRMC (which
0137 means that one of these two models is randomly chosen for each interaction,
0138 with a probability which is 100% (0%) for FTFP (CRMC) at 100 GeV, and
0139 decreases (grows) linearly to 0% (100%) for FTFP (CRMC) at 110 GeV.
0140 Which of the MC generators of CRMC is actually used is specified in the file:
0141 include/G4CRMCModel.hh
0142 (search for string "***LOOKHERE***" : these are the available choices:
0143 EPOS LHC (0) - the default - , EPOS 1.99 (1), SIBYLL 2.3c (6), and
0144 DPMJET 3 (12) ).
0145
0146 Notice that we use CRMC only for inelastic final-state of pion- , kaon- ,
0147 proton- , neutron- and ion-nuclear interactions, whereas for the rest
0148 (i.e. elastic and inelastic cross sections, elastic final-state interactions,
0149 hyperon- , antihyperon- , antinucleon- and light anti-ion nuclear interactions)
0150 we use Geant4 FTFP_BERT.
0151
0152 GEOMETRY
0153
0154 The Target volume is a cylinder placed inside Check cylindrical volume. The
0155 Check volume is placed inside the World volume. The radius and the length of
0156 the Check volume are 1 mm larger than the radius and the length of the Target.
0157 The material of the Check volume is the same as the World material. The World
0158 volume has the sizes 10 mm larger than that of the Target volume. Any material
0159 from the Geant4 database can be defined. The default World material is
0160 G4Galactic and the default Target material is aluminum. The Target is
0161 subdivided on number of equal slices. Following UI commands are available to
0162 modify the geometry:
0163
0164 /testhadr/TargetMat G4_Pb
0165 /testhadr/WorldMat G4_AIR
0166 /testhadr/TargetRadius 10 mm
0167 /testhadr/TargetLength 20 cm
0168 /testhadr/NumberDivZ 200
0169
0170 Beam direction coincides with the target axis and is Z axis in the global
0171 coordinate system. G4ParticleGun is used as a primary generator. The energy
0172 and the type of the beam can be defined via standard UI commands
0173
0174 /gun/energy 150 GeV
0175 /gun/particle ion
0176 /gun/ion 6 12
0177
0178 Default beam position is -(targetHalfLength + 5*mm) and direction along Z axis.
0179 Beam position and direction can be changed by gun UI commands:
0180
0181 /gun/position 1 10 3 mm
0182 /gun/direction 1 0 0
0183
0184 however, position command is active only if before it the flag is set
0185
0186 /testhadr/DefaultBeamPosition false
0187
0188 SCORING
0189
0190 The scoring is performed with the help of UserStackingAction class and a
0191 sensitive detector class associated with a target slice.
0192 Each secondary particle is scored by the StackingAction. In
0193 the StackingAction it is also possible to kill all or only EM (e+, e-, gamma)
0194 secondary particles
0195
0196 /testhadr/killAll
0197 /testhadr/KillEM
0198
0199 To control running the following options are available:
0200
0201 /run/printProgress 10
0202
0203
0204 PHYSICS
0205
0206 PhysicsList of the application uses components, which are distributed with
0207 Geant4 in /geant4/physics_lists subdirectory.
0208
0209 Reference Physics Lists are used and the environment variable PHYSLIST should
0210 be defined.
0211
0212 Additionally it is possible to add ion-ion interactions using UI command
0213
0214 /testhadr/ionPhysics HIJING
0215 /testhadr/ionPhysics QrQMD
0216
0217
0218 VISUALIZATION
0219
0220 For interactive mode G4 visualization options and variables should be
0221 defined, then the example should be recompiled:
0222
0223 gmake visclean
0224 gmake
0225
0226 The vis.mac file can be used an example of visualization. The following command can
0227 be used:
0228
0229 /testhadr/DrawTracks charged
0230 /testhadr/DrawTracks charged+n
0231 /testhadr/DrawTracks neutral
0232 /testhadr/DrawTracks all
0233
0234
0235 HISTOGRAMS
0236
0237 All histograms are normalized to the number of events.
0238