115 lines
3.3 KiB
Plaintext
115 lines
3.3 KiB
Plaintext
=========================================================
|
|
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
|
|
=========================================================
|
|
|
|
|
|
HADR00
|
|
|
|
V.Ivanchenko
|
|
CERN, Geneva, Switzerland
|
|
|
|
|
|
This example demonstrates a usage of G4PhysListFactory to build
|
|
Physics List and G4HadronicProcessStore to access cross sections.
|
|
|
|
GEOMETRY
|
|
|
|
The Target volume is a cilinder placed inside the World volume. Follwoing
|
|
UI commands are available to modify the geometry:
|
|
|
|
/testhadr/TargetMat G4_Pb
|
|
/testhadr/WorldMat G4_AIR
|
|
/testhadr/TargetRadius 10 mm
|
|
/testhadr/TargetLength 20 cm
|
|
|
|
If geometry was changed between two runs, then the follwoing command need to
|
|
be executed:
|
|
|
|
/testhadr/update
|
|
|
|
By default beam direction coinsides with the target axis and is Z axis
|
|
in the global coordinate system. The beam starts in the middle of the target.
|
|
G4ParticleGun is used as a primary generator. The energy and the type of
|
|
the beam can be defined via standard UI commands
|
|
|
|
/gun/energy 15 GeV
|
|
/gun/particle proton
|
|
|
|
PHYSICS
|
|
|
|
Physics List is defined by the PHYSLIST environment variable. By default
|
|
QGSP_BERT Physics List will be instantiated.
|
|
|
|
|
|
CROSS SECTION
|
|
|
|
At the end of any run the set of cross sections is built and can be printed
|
|
out for a given progectile particle and a target element, which can be
|
|
defined via UI commands:
|
|
|
|
/testhadr/particle pi+
|
|
/testhadr/targetElm Pb
|
|
/testhadr/verbose 1
|
|
|
|
The level verbosity above zero provides printout of the cross section table.
|
|
The energy/momentum limits and number of bins can be set via UI commands:
|
|
|
|
/testhadr/nBinsE 900
|
|
/testhadr/nBinsP 700
|
|
/testhadr/minEnergy 1 keV
|
|
/testhadr/maxEnergy 1 TeV
|
|
/testhadr/minMomentum 1 MeV
|
|
/testhadr/maxMOmentum 10 TeV
|
|
|
|
VISUALISATION
|
|
|
|
For interactive mode G4 visualization options and variables should be
|
|
defined, then the example should be recompiled:
|
|
|
|
gmake visclean
|
|
gmake
|
|
|
|
The vis.mac file can be used an example of visualization. The following
|
|
command can be used:
|
|
|
|
/testhadr/DrawTracks charged
|
|
/testhadr/DrawTracks neutral
|
|
/testhadr/DrawTracks all
|
|
|
|
HISTOGRAMS
|
|
|
|
All histograms are provided in decimal logarithmic scale (log10(E/MeV)
|
|
and log10(p/GeV)) for one projectile particle and one target element.
|
|
The element is taken from the Geant4 NIST datebase, natural isotope
|
|
composition is assumed.
|
|
|
|
To use histograms any of implementations of AIDA interfaces should
|
|
be available (see http://aida.freehep.org).
|
|
|
|
For example, if iAIDA is installed and compiled at SLC4 Linux
|
|
|
|
setenv AIDA_DIR $MYPACKAGES/analysis/iAIDA/install/slc4_amd64_gcc34_root
|
|
setenv PATH ${PATH}:${AIDA_DIR}/bin
|
|
|
|
Before compilation of the example it is optimal to clean up old
|
|
object files:
|
|
|
|
gmake histclean
|
|
setenv G4ANALYSIS_USE 1
|
|
gmake
|
|
|
|
It is possible to choose the format of the output file with
|
|
histograms using UI command:
|
|
|
|
/testhadr/HistoName name
|
|
/testhadr/HistoType type
|
|
/testhadr/HistoOption "uncompress"
|
|
|
|
The following types are available: hbook, root, aida. They will be
|
|
stored in the file "name.hbook", "name.root", or "name.aida".
|
|
|
|
To show the contence of a histogram ID=i the commands may be applied:
|
|
|
|
/testhadr/HistoPrint i
|
|
|