]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TFluka/Fgenstk.h
New ion numbering convention according to
[u/mrichter/AliRoot.git] / TFluka / Fgenstk.h
1 #ifndef FGENSTK
2 #define FGENSTK_H 1
3                                                                                 
4 #include "Rtypes.h"
5 #include "cfortran.h"
6                                                                                 
7 #include "Fdimpar.h"
8 //*$ CREATE GENSTK.ADD
9 //*COPY GENSTK
10 //*
11 //*=== Genstk ===========================================================*
12 //*
13 //*----------------------------------------------------------------------*
14 //*                                                                      *
15 //*     hadron GENerator STacK for FLUKA: (new version of old Finuc of   *
16 //*     FLUKA86 by J.Ranft)                                              *
17 //*                                                                      *
18 //*     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!      *
19 //*     !!!!     S E E   A L S O   I N C L U D E   F I L E     !!!!      *
20 //*     !!!!                 G E N S T K 2                     !!!!      *
21 //*     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!      *
22 //*                                                                      *
23 //*     Created on  20 january 1996  by    Alfredo Ferrari & Paola Sala  *
24 //*                                                   Infn - Milan       *
25 //*                                                                      *
26 //*     Last change on 15-may-05     by    Alfredo Ferrari               *
27 //*                                                                      *
28 //*                                                                      *
29 //*     /Genstk/ is the storage for secondaries created in hadronic      *
30 //*              events                                                  *
31 //*        Np        = total number of secondaries                       *
32 //*       Kpart (ip) = (Paprop) id of the ip_th secondary                *
33 //*         Cxr (ip) = x-axis direction cosine of the ip_th secondary    *
34 //*         Cyr (ip) = y-axis direction cosine of the ip_th secondary    *
35 //*         Czr (ip) = z-axis direction cosine of the ip_th secondary    *
36 //*      Cxrpol (ip) = x-axis direction cosine of the ip_th secondary    *
37 //*                    polarization vector (rest frame when applicable)  *
38 //*      Cyrpol (ip) = y-axis direction cosine of the ip_th secondary    *
39 //*                    polarization vector (rest frame when applicable)  *
40 //*      Czrpol (ip) = z-axis direction cosine of the ip_th secondary    *
41 //*                    polarization vector (rest frame when applicable)  *
42 //*         Tki (ip) = laboratory kinetic energy of ip_th secondary (GeV)*
43 //*         Plr (ip) = laboratory momentum of the ip_th secondary (GeV/c)*
44 //*         Wei (ip) = statistical weight of the ip_th secondary         *
45 //*      Agesec (ip) = "age" of the ip_th secondary with respect to the  *
46 //*                    interaction time                                  *
47 //*        Tv        = excitation energy (GeV)                           *
48 //*        Tvcms     = actual excitation energy of the residual nucleus  *
49 //*        Tvrecl    = recoil kinetic energy of the residual nucleus     *
50 //*        Tvheav    = recoil kinetic energies of heavy (2-H, 3-H, 3-He, *
51 //*                    4-He) fragments after evaporation                 *
52 //*        Tvbind    = approximate energy wasted in nuclear binding      *
53 //*                    effects (not yet operational)                     *
54 //*      Infext (ip) = possible extra infos for the ip_th secondary      * 2006.3
55 //*                                                                      *
56 //*----------------------------------------------------------------------*
57
58 extern "C" {
59 const Int_t mxp = mxpscs;
60 //*
61
62 typedef struct {
63     Double_t cxr[mxp];
64     Double_t cyr[mxp];
65     Double_t czr[mxp];
66     Double_t cxrpol[mxp];
67     Double_t cyrpol[mxp];
68     Double_t czrpol[mxp];
69     Double_t tki[mxp];
70     Double_t plr[mxp];
71     Double_t wei[mxp];
72     Double_t agesec[mxp];
73     Double_t tv;
74     Double_t tvcms;
75     Double_t tvrecl;
76     Double_t tvheav;
77     Double_t tvbind;
78     Int_t    kpart[mxp];
79     Int_t    infext[mxpscs];
80     Int_t    np0;
81     Int_t    np;
82 } genstkCommon;
83 #define GENSTK COMMON_BLOCK(GENSTK,genstk)
84 COMMON_BLOCK_DEF(genstkCommon,GENSTK);
85 }
86 #endif