2
* $Id: qqtrak.inc,v 1.1 2005/09/29 19:27:22 garren Exp $
5
* Revision 1.1 2005/09/29 19:27:22 garren
8
* Revision 1.2 1995/04/25 13:58:08 zfiles
9
* New variable XANGQQ and IDKMEC
11
* Revision 1.1 1994/10/07 23:57:40 zfiles
12
* New include files for QQ.
15
*CMZ : 1.02/61 03/10/94 17.34.24 by Paul Avery
16
*CMZ : 08/10/93 10.27.51 by Paul Avery
18
* 14/10/96 Lynn Garren: Change PSAV, P4QQ from real to double precision.
20
* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
24
* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
26
C Contains the list of generated particles in an event and their decay
27
C history. The vertex information is stored in QQVRTX.INC.
29
C For unstable particles there are pointers which tell where in the list
30
C the first daughter appears (IDAUTV) and how many daughters there are
31
C (NDAUTV). Conversely, for each daughter there is a pointer which
32
C tells which particle in the list is its parent (IPRNTV).
34
C NTRKMC is the length of the list. If only QQ is run, then
35
C NTRKMC = NTRKQQ. If a user so chooses, particles like pions,
36
C kaons and muons can decay further and augment the particle list
37
C (when particles decay they always put their decay products at
38
C the end of the list) so that NTRKMC > NTRKQQ. Likewise,
39
C NSTBMC >= NSTBQQ and NCHGMC >= NCHGQQ.
40
C >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
42
* NTRKMC # particles in track list
43
* NTRKQQ # particles generated by QQ
44
* NSTBMC # stable particles in track list
45
* NSTBQQ # stable particles generated by QQ
46
* NCHGMC # charged stable particles in track list
47
* NCHGQQ # charged stable particles gen. by QQ
49
* IPRNTV(IT) Position of parent in track list
50
* ITYPEV(IT,2) ITYPEV(IT,1) = QQ particle ID code
51
* ITYPEV(IT,2) = QQ stable particle code
52
* IDECSV(IT) Decay channel of particle (0=no decay)
53
* NDAUTV(IT) # daughters of particle
54
* IDAUTV(IT) Position of first daughter in track list
55
* IVPROD(IT) Production vertex of particle
56
* IVDECA(IT) Decay vertex of particle (0 if stable)
57
* ISTBMC(IT) Position in stable particle list IDSTBL
58
* IDKMEC(IT) How particle is decayed (filled in CLEOG)
59
* PSAV(IT,4) 4-momentum of particle
60
* P4QQ(4,IT) 4-momentum with swapped indices (same as PSAV)
61
* HELCQQ(IT) Helicity of particle
62
INTEGER IPRNTV, ITYPEV, IDECSV, IDAUTV
63
INTEGER ISTBMC, NDAUTV, IDKMEC
64
INTEGER IVPROD, IVDECA
65
INTEGER NTRKMC, NTRKQQ, NSTBMC, NSTBQQ, NCHGMC, NCHGQQ
67
* NTRKMC, NTRKQQ, NSTBMC, NSTBQQ, NCHGMC, NCHGQQ,
68
* IPRNTV(MCTRK), ITYPEV(MCTRK,2),
69
* IDECSV(MCTRK), IDAUTV(MCTRK), NDAUTV(MCTRK),
70
* IVPROD(MCTRK), IVDECA(MCTRK), ISTBMC(MCTRK), IDKMEC(MCTRK)
71
DOUBLE PRECISION PSAV, P4QQ
74
* PSAV(MCTRK,4), P4QQ(4,MCTRK), HELCQQ(MCTRK)
76
C >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
77
C The stable particles in the full particle list have an entry in the
78
C stable particle list IDSTBL (of length NSTBMC). IDSTBL and ISTBMC are
79
C inverses of each other:
80
C I = IDSTBL(J) ==> pos. in full track list of stable particle J
81
C J = ISTBMC(I) ==> pos. in stable track list of particle I (0 if unstable)
82
C >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
84
* IDSTBL Stable particle list (inverse of ISTBMC)
88
C >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
89
C The following equivalence statements allow people to use their
90
C old Fortran code with minimum disruption.
91
C >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
92
INTEGER IFINAL(MCTRK), IFINSV(MCSTAB), NFINAL
93
EQUIVALENCE (IFINAL,ISTBMC), (IFINSV,IDSTBL), (NFINAL,NSTBMC)