next up previous index
Next: PHYS520 The GEANT/FLUKA Up: Introduction Previous: Introduction

Description of the routines

CALL GHESIG (P,EK,AVER,A,Z,W,NLM,DENS,CORR,IPART)

P
( REAL) momentum of the particle (in GeV/c);
EK
( REAL) kinetic energy of the particle (in GeV);
AVER
( REAL) average mass number of the material;
A(NLM)
( REAL) vector containing the mass numbers of the components of the mixture, the same as AVER in case of an element;
Z(NLM)
( REAL) vector containing the atomic numbers of the components of the mixture, or the atomic number in case of an element;
W(NLM)
( REAL) vector of length NLM containing the relative weights of the components of the mixture (normalised to one), one in case of an element;
NLM
( INTEGER) number of components of the mixture, 1 in case of an element;
DENS
( REAL) density of the material;
CORR
( REAL) if this parameters is >0, then corrections are applied to the cross-section; should be used in case of inorganic scintillators;
IPART
( INTEGER) GEANT particle code.
This routine returns the total macroscopic cross-section in cm-1 . The correction flag is taken from the 26th word of the next bank in the tracking medium linear structure pointed at by LQ(JTMED-NUMED).

The cross-sections on nucleus are known only for pions and protons. The general law:

σ(A) = 1.25*σtotProton Aα

is used but it is valid only for momenta > 2 GeV. The parametrisation done gives only a behaviour averaged over momenta and particle types. For H, Al, Cu and Pb the measured cross-sections are stored in DATA statements.

The stored cross-sections are the pre-calculated GHEISHA ones. As a starting point the measured cross-sections of pions, kaons, protons, antiprotons and neutrons on protons are used. The cross-sections tabulated are measured values taken from the CERN HERA compilations. The values for Ks0 /Kl0 are updated as of July 1980. Strange baryon cross-section are calculated using a parametrisation in terms of quark-quark forward scattering amplitudes and optical theorem. The additive quark quark scattering model is used. All the cross-sections are contained in data statements so no external file is needed for GHEISHA. CALL GPGHEI This routine returns the distance to the next hadronic interaction according to the GHEISHA cross-sections. It calls GHESIG and is called by GUPHAD. The default copy provided in the GEANT library uses the GHEISHA shower code:

       SUBROUTINE GUPHAD
* 
*****************************************************************
*                                                               *
*   GEANT  user routine called at each step to evaluate         *
*   the remaining distance to the hadronic interaction point    *
*                                                               *
*****************************************************************
*
      CALL GPGHEI
*
      END

      SUBROUTINE GUHADR
*.
****************************************************************
*                                                              *
*       GEANT  user routine called when a hadronic process     *
*       has been selected in the current step, in order to     *
*       generate the final particle's state                    *
*                                                              *
****************************************************************
* 
       CALL GHEISH
*
       END

CALL GHEISH This is the main steering routine for the hadronic interactions and is a fan-out to the various cascade routines of GHEISHA which treat the particular hadronic interaction. Here the kind of interaction is stored in the INT flag, with the following meaning:

INT=0
no interaction ( NONE);
INT=1
elastic scattering occurs ( ECOH);
INT=2
inelastic incoherent interaction occurs ( INHE), 1 and 2 include also nuclear reaction processes at very low energies;
INT=3
nuclear fission with inelastic scattering occurs ( FISS);
INT=4
neutron nuclear capture occurs ( CAPT).

After the interaction has been selected, the appropriate cascade routine is called. Upon exit from this there is a check whether the interaction has generated new particles or not. If yes, the new particles are copied in the GEANT temporary stack (GKING). If the particle is a heavy fragment or a proton and it is below the energy cut specified via the CUTS data record, it is not stored in the stack but the kinetic energy is collected. The size of the GHEISHA stack is parametrised, and its limit is currently set to 100 in sequence GCKMAX. The user is left to decide in GUSTEP what to do with the new tracks. This routine is called also in case of a stopping hadron, i.e. with kinetic energy below the GEANT cuts. In this case the routine GHSTOP (see later) is called to handle the stopping hadron. The printing flags for GHEISHA are also set in this routine according to the current value of IDEBUG.

This routine must be called by the user routine GUHADR (see above).

As explained above, for inorganic scintillators such as the BGO, it is possible to activate a correction to the hadronic cross-section. This is done via the routine GSTPAR in the following way:

      CALL GSTPAR(ITMED,'GHCOR1',1.0)
The parameter is actually a flag which, if different from 0, triggers the calculation of the cross-section correction, but in view of future developments it is good practice set it to 1.0 when those corrections are required. ITMED is the tracking medium number as used in GSTMED for which corrections are requested. This routine has to be called before GPHYSI. CALL GHSTOP This is an internal routine used to handle stopping particles, called by GHEISH. Here again we have a switch to the various routines handling stopping particles. In particular this routine can lead to nuclear absorption for negative pions and negative kaons ( ABSO) and to annihilation for antineutrons, and antiprotons ( ANNH). The kinetic energy is completely absorbed, and in the case of an unstable particle, the particle is decayed at rest via the standard GEANT decay routine GDECAY.

K.Lassila-Perini

PHYS520


next up previous index
Next: PHYS520 The GEANT/FLUKA Up: Introduction Previous: Introduction


Janne Saarela
Mon Apr 3 12:46:29 METDST 1995