Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / GEANT321 / fluka / zeroin.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
62be6b28 5* Revision 1.1.1.1 1999/05/18 15:55:16 fca
6* AliRoot sources
7*
fe4da5cc 8* Revision 1.1.1.1 1995/10/24 10:20:04 cernlib
9* Geant
10*
11*
12#include "geant321/pilot.h"
13#if defined(CERNLIB_OLDNAME)
14*CMZ : 3.21/02 29/03/94 15.41.44 by S.Giani
15*-- Author :
16*=== zeroin ===========================================================*
17*
18 SUBROUTINE ZEROIN
19
20#include "geant321/dblprc.inc"
21#include "geant321/dimpar.inc"
22#include "geant321/iounit.inc"
23*
24*======================================================================*
25* *
26* Created by Alfredo Ferrari on 11 july 1990 INFN - Milan *
27* *
28* Last change on 23-apr-93 by Alfredo Ferrari *
29* *
30* This routine zeroes a few arrays, and initialize some data *
31* *
32*======================================================================*
33*
34#include "geant321/paprop.inc"
35#include "geant321/part2.inc"
36*
37* +-------------------------------------------------------------------*
38* | Set the "effective" masses for particles
39 DO 8000 I = 1, IDMAX8
40* | +----------------------------------------------------------------*
41* | | Baryons: "effective" mass = actual one - baryon
42* | | number x proton mass (final state of any
43* | | baryon)
44 IF ( IIBAR (I) .GT. 0 ) THEN
45 AAMDSC (I) = AAM (I) - IIBAR (I) * AAM (1)
46* | |
47* | +----------------------------------------------------------------*
48* | | Antibaryons: "effective mass" = actual mass +
49* | | |baryon number| x proton mass
50 ELSE IF ( IIBAR (I) .LT. 0 ) THEN
51 AAMDSC (I) = AAM (I) - IIBAR (I) * AAM (1)
52* | |
53* | +----------------------------------------------------------------*
54* | | Mesons: "effective" mass = actual mass
55 ELSE
56 AAMDSC (I) = AAM (I)
57 END IF
58* | |
59* | +----------------------------------------------------------------*
60 8000 CONTINUE
61* |
62* +-------------------------------------------------------------------*
63* Electron: "effective" mass = 0
64 AAMDSC (3) = ZERZER
65* Positron: "effective" mass = 2 x mass
66 AAMDSC (4) = 2.D+00 * AAM (4)
67* Neutron: "effective" mass = 0 (it should be taken into account the
68* neutrino energy when decaying)
69 AAMDSC (8) = ZERZER
70* Muon+: "effective" mass = muon mass + positron mass
71 AAMDSC (10) = AAM (10) + AAM (4)
72* Muon-: "effective" mass = muon mass - electron mass
73* (final stable state)
74 AAMDSC (11) = AAM (11) - AAM (3)
75* Tau+: "effective" mass = Tau mass + positron mass
76 AAMDSC (131) = AAM (131) + AAM (4)
77* Tau-: "effective" mass = Tau mass - electron mass
78* (final stable state)
79 AAMDSC (132) = AAM (132) - AAM (3)
80* +-------------------------------------------------------------------*
81* | Set the "effective" masses for particles in Paprop
82 DO 8500 I = 1, NALLWP
83 KP = IPTOKP (I)
84* | +----------------------------------------------------------------*
85* | |
86 IF ( KP .GT. 0 ) THEN
87 AMDISC (I) = AAMDSC (KP)
88 AM (I) = AAM (KP)
89 ICHRGE (I) = IICH (KP)
90 THALF (I) = TAU (KP)
91* | |
92* | +----------------------------------------------------------------*
93* | |
94 ELSE IF ( I .NE. 30 ) THEN
95 AMDISC (I) = ZERZER
96 AM (I) = ZERZER
97 ICHRGE (I) = 0
98 THALF (I) = ZERZER
99* | |
100* | +----------------------------------------------------------------*
101* | |
102 ELSE
103 AMDISC (I) = AAMDSC (1)
104 AM (I) = AAM (1)
105 ICHRGE (I) = IICH (1)
106 THALF (I) = TAU (1)
107 END IF
108* | |
109* | +----------------------------------------------------------------*
110* | +----------------------------------------------------------------*
111* | | Set the particle spin (in 1/2 units)
112* | | If the particle is a hadron :
113* | | mesons --> 0 spin
114* | | baryons,antibaryons --> 1/2 spin
115* | | otherwise :
116* | | e-/+,mu-/+,vu,vubar --> 1/2 spin
117* | | photons --> 1 spin
118 IF ( LHADRO (I) .AND. IIBAR (KP) .EQ. 0 ) THEN
119 JSPINP (I) = 0
120* | |
121* | +----------------------------------------------------------------*
122* | |
123 ELSE
124 IF ( I .EQ. 7 ) THEN
125 JSPINP (I) = 2
126 ELSE
127 JSPINP (I) = 1
128 END IF
129 END IF
130* | |
131* | +----------------------------------------------------------------*
132 8500 CONTINUE
133* |
134* +-------------------------------------------------------------------*
135*=== end of subroutine zeroin =========================================*
136 RETURN
137 END
62be6b28 138#else
139 SUBROUTINE ZEROIN_DUMMY
140 END
fe4da5cc 141#endif