gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/history [ Modules ]

[ Top ] [ Modules ]

NAME

module history

PURPOSE

Here the %history field of type(particle) is dealt with. This field is used to store a history of the collisions of a particle.

In particular, we safe the particle ID's of those particles which produced the particle. E.g. if a pion was produced in AB -> X pion, then we store the ID's of the two incoming particles "A" and "B".

Furthermore, we define a so called "generation". Initially all particles have generation=0. Particles which are created by particles of generation x and y get a value for the generation of generation=max( x, y )+1. Therefore this "generation" is a measure for the number of interactions which were necessary to produce a particle. For perturbative particles in ground state calculations,"generation" gives directly the number of interactions which were necessary to produce a particle.


history/IncGeneration_Decay [ Global module-variables ]

[ Top ] [ history ] [ Global module-variables ]

SOURCE

  logical, save :: IncGeneration_Decay = .true.

PURPOSE

This flag determines whether we will increase the stored 'generation' of the daughter particles in a resonance decay.


history/IncGeneration_Elastic [ Global module-variables ]

[ Top ] [ history ] [ Global module-variables ]

SOURCE

  logical, save :: IncGeneration_Elastic = .true.

PURPOSE

This flag determines whether we will increase the stored 'generation' of particles in an elastic collision.


history/setHistory [ Subroutines ]

[ Top ] [ history ] [ Subroutines ]

NAME

interface setHistory

PURPOSE

Evaluates the value of %history for a particle which was produced in a interaction, which was either a resonance decay, 2 body interaction or 3 body interaction.

NOTES

We use the following rule to determine the value of %history:

  • For 1-Body processes : history=1.000.000*generation+id1
  • For 2-Body processes : history=1.000.000*generation+1.000*id2+id1
  • For 3-Body processes : history=-(1.000.000*generation+x) where x is defined by the identifiers given as parameters in the module header.

This scheme is employed to store this information in a compact way into one integer, and to save memory by doing this.


history/readInput [ Subroutines ]

[ Top ] [ history ] [ Subroutines ]

NAME

subroutine readInput

PURPOSE

Reads input in jobcard out of namelist "History".


history/History [ Namelists ]

[ Top ] [ history ] [ Namelists ]

NAME

Namelist /History/

PURPOSE

Namelist for history includes:


history/history_getParents [ Subroutines ]

[ Top ] [ history ] [ Subroutines ]

NAME

function history_getParents (history) result (parents)

PURPOSE

Analyzes a given value of %history of a particle and returns an array of integers which include the IDs of the particles which produced the latter particle.

INPUTS

OUTPUT

  • integer, dimension(1:3) :: parents -- parents of the regarded particle


history/history_getGeneration [ Functions ]

[ Top ] [ history ] [ Functions ]

NAME

integer function history_getGeneration(history)

PURPOSE

Analyzes a given value of %history of a particle and returns the value of generation of the latter particle.

INPUTS


history/history_print [ Functions ]

[ Top ] [ history ] [ Functions ]

NAME

subroutine history_print(ensemble,p, iFile)

PURPOSE

Print the history of a given particle to channel "ifile"

INPUTS

  • integer, intent(in) :: iFile, ensemble
  • type(particle),intent(in) :: p