next up previous index
Next: Termination Up: BASE001 Introduction to Previous: Initialisation

Event processing

The processing phase is triggered by a call to the subroutine GRUN which, for each event to be processed, gives control to the subroutines:

GTRIGI
initialise event processing and create the event header bank JHEAD;
GTRIG
process one event;
GTRIGC
clean up the portion of memory used by the event and check that enough time is left for the next event ( [BASE200]).
GTRIG calls the following user routines:
GUKINE
generates or reads ( [IOPA]) the kinematics of the event and stores it in the data structures JVERTX and JKINE ( [KINE]);

GUTREV
calling GTREVE which performs the following operations for each vertex in turn:
  1. moves all the particles attached to the vertex from the permanent stack JKINE to the temporary stack JSTAK;
  2. controls the propagation of each particle though the setup by calling GUTRAK/GTRACK ( [TRAK]); each particle is tracked in turn and when a sensitive detector is traversed, the user may store any useful information in the data structure JHITS via the routines described in the section [HITS];

The JSTAK data structure is a LIFO (Last In -- First Out) stack. Secondary products generated by the current particle transported are processed before proceeding to the next particle. It is very important to understand that by default GEANT does not follow the secondary particles generated. It is the responsibility of the user to indicate which particles should be followed via the routines GSKING/GSKPHO.

The data structure JXYZ, containing the coordinates of space points along the tracks, can be filled by the user during tracking ( [TRAK]).

GUDIGI
simulate the detector responses for the event, using the information recorded in the data structure JHITS during particle transport, and store the results in the data structure JDIGI ( [HITS]);

GUOUT
perform all the processing at the end of the event and output the relevant data structures ( [IOPA]).

Other routines called during the tracking phase triggered by GTREVE should be mentioned for completeness:



next up previous index
Next: Termination Up: BASE001 Introduction to Previous: Initialisation


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