COSMOS v7.655
COSMOSv7655
(AirShowerMC)
Zptcl.h
Go to the documentation of this file.
1
/*
2
#include "Zunionmap.h"
3
c structure defining a particle at production
4
c Basic idea of what is to be contained in
5
c the particle structue is that
6
c 1) dynamical ones should be included
7
c 2) those derivable from the particle code
8
c is not included
9
c ******************************************************
10
structure /fmom/ ! 4 momentum
11
#ifdef UNIONMAP
12
union
13
map
14
#endif
15
real*8 p(4)
16
#ifdef UNIONMAP
17
endmap
18
map
19
real*8 px, py, pz, e
20
endmap
21
map
22
real*8 x, y, z, t
23
endmap
24
map
25
c pt before pz is set
26
real*8 dummy1, dummy2, pt, rap
27
endmap
28
c tm: transverse mass
29
map
30
real*8 dummy3, dummy4, tm
31
endmap
32
endunion
33
#endif
34
end structure
35
c \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
36
c Important note: Bug in sun fortran
37
c If we define, say,
38
c record /fmom/ p1
39
c and set
40
c p1.e = some value (or p1.p(4)= ...)
41
c where some value is a constant or arithmetic
42
c expression which results in a value > 1.d37
43
c then overflow message comes out on SUN fortran
44
c although the result is correct.
45
c Setting the same into, say, p1.px does not
46
c cause such. (as of 1993/08/14)
47
c \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
48
c ******************************************************
49
structure /ptcl/ ! particle at production
50
c 4 momentum.
51
record /fmom/ fm
52
c
53
real*8 mass
54
integer*2 code, subcode
55
integer*2 charge
56
c code: ptcl code
57
c subcode:used mainly to identify paticle/antiparticle
58
c if the difference is important.
59
c To set particle, "ptcl" is used.
60
c anti-partilce, 'antip" is used for particles
61
c For particles of which partilce/antiparticle nature
62
c can be judded by its code and charge, the user
63
c need not specify it when using cmkptc subroutine.
64
c give 0.
65
c subcode for gamma ray may be used to identify
66
c brems gamma and direct gamma by kdiretg, kcasg
67
end structure
68
c ******************************************************
69
70
*/
71
72
struct
fmom
{
73
double
p
[4];
74
};
75
struct
ptcl
{
76
struct
fmom
fm;
77
double
mass
;
78
short
int
code
;
79
short
int
subcode
;
80
short
int
charge
;
81
};
82
83
84
85
fmom::p
double p[4]
Definition:
Zptcl.h:73
ptcl::charge
short int charge
Definition:
Zptcl.h:80
fmom
Definition:
Zptcl.h:72
ptcl::code
short int code
Definition:
Zptcl.h:78
ptcl::mass
double mass
Definition:
Zptcl.h:77
ptcl
Definition:
Zptcl.h:75
ptcl::subcode
short int subcode
Definition:
Zptcl.h:79
include
Zptcl.h
Generated by
1.8.13