]> git.uio.no Git - u/mrichter/AliRoot.git/blob - GEANT321/gkine/gludky.F
Minor changes at comments.
[u/mrichter/AliRoot.git] / GEANT321 / gkine / gludky.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1999/05/18 15:55:20  fca
6 * AliRoot sources
7 *
8 * Revision 1.1.1.1  1995/10/24 10:21:18  cernlib
9 * Geant
10 *
11 *
12 #include "geant321/pilot.h"
13 *CMZ :  3.21/04 09/01/95  16.20.45  by  S.Ravndal
14 *-- Author :
15       SUBROUTINE GLUDKY
16 C.
17 C.    ******************************************************************
18 C.    *                                                                *
19 C.    *        GEANT INTERFACE TO THE LUND MONTE-CARLO                 *
20 C.    *        FOR TAU DECAY GENERATION ONLY                           *
21 C.    *                                                                *
22 C.    *  THIS INTERFACE TO LUND                                        *
23 C.    *  A) INHIBITS DECAYS OF K0S,SIG+,SIG-,XI0,XI-,LAM,OM-           *
24 C.    *  B) ACCEPTS STABLE PARTICLES ONLY                              *
25 C.    *  C) CONVERTS THE PARTICLE CODES TO GEANT CONVENTIONS           *
26 C.    *                                                                *
27 C.    *  THUS THE PARTICLES FORWARDED TO GEANT ARE                     *
28 C.    *  GAMMA,ELECTRON,NEUTRINO(E,MU,TAU),MU-,PI+,K+,K0S,K0L,         *
29 C.    *  PROTON,NEUTRON,SIG(+,-),XI(0,-),LAM,OM-                       *
30 C.    *  ....  AND THEIR ANTIPARTICLES                                 *
31 C.    *                                                                *
32 C.    *       That routine can be called from the user routine GUDCAY  *
33 C.    *                                                                *
34 C.    *       Author    R.Hemingway  26 SEPT 1985                      *
35 C.    *                                                                *
36 C.    ******************************************************************
37 C.
38 C
39 #include "geant321/gcflag.inc"
40 #include "geant321/gckine.inc"
41 #include "geant321/gcking.inc"
42 #include "geant321/gctrak.inc"
43 #include "geant321/gconsp.inc"
44 #include "geant321/lujets.inc"
45 #include "geant321/ludat3.inc"
46       PARAMETER (NSEL=44)
47       DIMENSION IPLUND(NSEL)
48       DATA IPLUND/
49      +    22,   -11,    11,    12,   -13,    13,   111,   211,
50      +  -211,   130,   321,  -321,  2112,  2212, -2212,   310,
51      +   221,  3122,  3222,  3212,  3112,  3322,  3312,  3334,
52      + -2112, -3122, -3112, -3212, -3222, -3322, -3312, -3334,
53      +   -15,    15,   411,  -411,   421,  -421,   431,  -431,
54      +  4122,    24,   -24,    23/
55 *.
56 *.    ------------------------------------------------------------------
57 *.
58       IF (IFINIT(6).EQ.0)THEN
59 *
60 *--  Set some particles to be stable in LUND so that GEANT can handle
61 *--  their tracking and decays. (K0s, sigma+-, xi0-, lambda0, omega-)
62 *
63          MDCY(PYCOMP(310) ,1)=0
64          MDCY(PYCOMP(3222),1)=0
65          MDCY(PYCOMP(3112),1)=0
66          MDCY(PYCOMP(3322),1)=0
67          MDCY(PYCOMP(3312),1)=0
68          MDCY(PYCOMP(3122),1)=0
69          MDCY(PYCOMP(3334),1)=0
70          IFINIT(6) = 1
71       ENDIF
72 C
73       IF(IPART.EQ.33.OR.IPART.EQ.34) THEN
74          N=0
75          EDKY=GETOT
76          THDKY=ACOS(VECT(6))
77          PHDKY=ATAN2(VECT(5),VECT(4))
78 *
79 *            for TAU+ TAU-
80 *            could be extended to all charm particles
81 *
82          CALL PY1ENT(1,IPLUND(IPART),EDKY,THDKY,PHDKY)
83          CALL PYEXEC
84          NGKINE=0
85          DO 20 I = 1,N
86             IF(K(I,1).GE.1.AND.K(I,1).LE.10) THEN
87                DO 10 IGE=1, NSEL
88                   IF(IPLUND(IGE).EQ.K(I,2)) THEN
89                      NGKINE=NGKINE+1
90                      GKIN(1,NGKINE)=P(I,1)
91                      GKIN(2,NGKINE)=P(I,2)
92                      GKIN(3,NGKINE)=P(I,3)
93                      GKIN(4,NGKINE)=P(I,4)
94                      GKIN(5,NGKINE)=IGE
95                      GPOS(1,NGKINE)=V(I,1)
96                      GPOS(2,NGKINE)=V(I,2)
97                      GPOS(3,NGKINE)=V(I,3)
98                      TOFD(NGKINE)  =V(I,4)/(10.*CLIGHT)
99                   ENDIF
100    10          CONTINUE
101             ENDIF
102    20    CONTINUE
103       ENDIF
104 *
105       END