Postscript Version

Genr8
A General Monte Carlo Event Generator
Version 1.0

Paul Eugenio
Carnegie Mellon University

October 30, 1998

Abstract:

Genr8 is a Monte Carlo four-vector generator used for generating phase space distributed events. Given here is a brief description of program and instructions on how to use it.

Introduction

  Genr8 is a C program * that generates peripheral phase space Monte Carlo events. The development of this program was motivated for the use in studying different Hall D detector configurations and subdetector designs. Yet in addition to generating events for design considerations, these events could be used in partial wave analysis for the evaluation of the normalization integrals.

Events can be produced which describe a complex decay chain of intermediary states. Both meson and baryon decay chains are allowed, but with the limiting assumption of a t-channel production process. The four-momentum transfer squared distribution follows that of

\begin{displaymath}
\frac{d \sigma}{d t} \propto e^{- b \left\vert t \right\vert}.\end{displaymath}

where the user defines the t-channel slope b.

Initialization

The input to genr8 is a ASCII file which describes the reaction to be simulated. The format of the ASCII file follows these basic rules: Below is an example of an input file used to simulate the pseudo-reaction of Figure 1. ``Pseudo'' because the angular distributions are not simulated. All events are generated with isotropic angular distributions. The mass and width, on the other hand, follow a simple Breit-Wigner distribution. For true angular distributions which can take into account interference affects, one can weight these generated events with their partial wave intensities.


%%%%%%%%%%%%%%%%% Start Input Values %%%%%%%%%% 
% beamp.x    beamp.y    beamp.z    beamMass   
             0              0               8               0 
% targetp.x    targetp.y    targetp.z    targetMass 
             0               0               0               0.938 
% t-channelSlope 
              5.0 
% number of particles needed to describe the isobar decay of X 
8 
% Create the particle list  
%    particle# 0 & 1 are always the Y (baryon system) & X (meson system) respectively  
% 
% part#  chld1#    chld2#   parent#   Id          nchild        mass         width        charge       flag 
% baryon (Y) decay 
      0             *            *            *           14            0           0.938          0.0          +1          11   
% meson (X) decay 
       1               2              3               *               0               2                1.7             0.15            0               00 
       2               4              5               1               0               2               1.270           0.10            -1               00 
       3               *              *               1               11              0               0.494           0              +1               11 
       4               *              *               2               12              0               0.494           0              -1               11 
       5               6              7               2               57              2               0.770           0.15            0               00 
       6               *              *               5               9               0               0.140           0               -1              11 
       7               *              *               5               8               0               0.140           0               +1              11 
!EOI 
%%%%%%%%%%%%%%%%% End Input Values %%%%%%%%%% 


  
Figure 1: The simulated pseudo-reaction described by the example input file. The particles from the event list are indicated.
\begin{figure}
\centering
\leavevmode
\centerline{

\epsfig {file=feyn.eps,height=8cm,width=8cm}
}\end{figure}

For the most part, the input file is straight forward. The gist of the reaction is described in the particle list. Each line in the list consists of values for (in order):

For multi-particle decays, one can use an infinitely large width for the intermediate isobars. For example, a particle list for a direct 3 $\pi$ decay could look like:


% meson (X) decay 
% part#  chld1#    chld2#   parent#   Id          nchild        mass         width        charge       flag 
       1               2              3               *               0               2                1.7             0.15            0               00 
       2               4              5               1               0               2               1.270            10            0               00 
       3               *              *               1               8              0               0.140           0              +1               11 
       4               *              *               2               8              0               0.140           0              +1               11 
       5               *              *               2               9              0               0.140           0              -1               11 

Event Generation

As described below, Monte Carlo events are obtained by running genr8 with the appropriate command line switches and redirecting the input file to the standard input. Even though the basic usage will not change, one should be aware that genr8 is still in development and that its usage could vary. It is always best to check the usage online by executing ``genr8 -h''.


    genr8 usage: [switches]   < inputFile 
              -d debug flag 
              -n Use a particle name and not its ID number (ASCII only)  
              -M<max> Process first max events 
              -l<lfevents> Determine the Lorenz factor with this many 
                 number of events (default is 10000) 
              -r<runNo> default runNo is 9000.  
              -P  save 11 & 01 flagged events(default saves 11 & 10 flagged events)  
              -I<filename> Save in itape format.  
              -A<filename> Save in ASCII format.  
              -h Print this help message 

Output Format

Currently, the Hall D development does not subscribe to any standard input/output formats. Genr8 supports two output formats: a simple ASCII format, and a BNL-E852 itape format.

The ASCII format consists of an ASCII file that contains a list of events in the form:


   RunNumber EventNumber 
   ParticleIndex ID mass 
     Charge P.x P.y P.z P.t 
       ... 
   ParticleIndexLast ID mass  
     Charge P.x P.y P.z P.t 

The itape format was created for use by BNL-E852. The itape library** provides routines to read and write itape files. An advantage in using itape format is that many analysis tools exist including a fully developed PWA package. Since itape was developed exclusively for BNL-E852 there exist limitations in its usefulness. A Hall D data format standard is expected to be itape-like.



Footnotes

...program
the source for genr8 is obtainable from the Hall D cvs repository

...library
A slim down version of the itape library is obtainable from the Hall D cvs repository.



Paul M. Eugenio
10/30/1998