Updates needed for geant4.6 and fluka2004.
[u/mrichter/AliRoot.git] / TFluka / Ffinuc.h
1 #ifndef FFINUC
2 #define FFINUC_H 1
3                                                                                 
4 #include "Rtypes.h"
5 #include "cfortran.h"
6                                                                                 
7 #include "Fdimpar.h"
8 extern "C" {
9 //*$ create finuc.add
10 //*copy finuc
11 //*
12 //*=== finuc ============================================================*
13 //*
14 //*----------------------------------------------------------------------*
15 //*                                                                      *
16 //*     include file: finuc (new version of old finuc of fluka86)        *
17 //*                                                                      *
18 //*     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!      *
19 //*     !!!!     s e e   a l s o   i n c l u d e   f i l e     !!!!      *
20 //*     !!!!                 f i n u c 2                       !!!!      *
21 //*     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!      *
22 //*                                                                      *
23 //*     created on  20 january 1996  by    alfredo ferrari & paola sala  *
24 //*                                                   infn - milan       *
25 //*                                                                      *
26 //*     last change on 26-jul-97     by    alfredo ferrari               *
27 //*                                                                      *
28 //*     included in the following subroutines or functions: not updated  *
29 //*                                                                      *
30 //*     description of the common block(s) and variable(s)               *
31 //*                                                                      *
32 //*     /finuc/ is the storage for secondaries created in event          *
33 //*        np        = number of secondaries                             *
34 //*       kpart (ip) = type of the secondary ip                          *
35 //*         cxr (ip) = direction cosine of the secondary ip              *
36 //*                    with respect to x-axis                            *
37 //*         cyr (ip) = direction cosine of the secondary ip              *
38 //*                    with respect to y-axis                            *
39 //*         czr (ip) = direction cosine of the secondary ip              *
40 //*                    with respect to z-axis                            *
41 //*      cxrpol (ip) = direction cosine of the secondary ip polarization *
42 //*                    with respect to x-axis                            *
43 //*      cyrpol (ip) = direction cosine of the secondary ip polarization *
44 //*                    with respect to y-axis                            *
45 //*      czrpol (ip) = direction cosine of the secondary ip polarization *
46 //*                    with respect to z-axis                            *
47 //*         tki (ip) = kinetic energy of secondary ip                    *
48 //*         plr (ip) = momentum of the secondary ip                      *
49 //*         wei (ip) = weight of the secondary ip                        *
50 //*      agesec (ip) = "age" of the secondary ip with respect to the     *
51 //*                    interaction time                                  *
52 //*        tv        = excitation energy                                 *
53 //*        tvcms     = actual excitation energy of the residual nucleus  *
54 //*        tvrecl    = recoil kinetic energy of the residual nucleus     *
55 //*        tvheav    = recoil kinetic energies of heavy (2-h, 3-h, 3-he, *
56 //*                    4-he) fragments after evaporation                 *
57 //*        tvbind    = approximate energy wasted in nuclear binding      *
58 //*                    effects (not yet operational)                     *
59 //*                                                                      *
60 //*----------------------------------------------------------------------*
61 //*
62 const Int_t mxp = mxpscs;
63 //*
64
65 typedef struct {
66    Double_t cxr[mxp];
67    Double_t cyr[mxp];
68    Double_t czr[mxp];
69    Double_t cxrpol[mxp];
70    Double_t cyrpol[mxp];
71    Double_t czrpol[mxp];
72    Double_t tki[mxp];
73    Double_t plr[mxp];
74    Double_t wei[mxp];
75    Double_t agesec[mxp];
76    Double_t tv;
77    Double_t tvcms;
78    Double_t tvrecl;
79    Double_t tvheav;
80    Double_t tvbind;
81    Int_t    np0;
82    Int_t    np;
83    Int_t    kpart[mxp];
84 } finucCommon;
85 #define FINUC COMMON_BLOCK(FINUC,finuc)
86 COMMON_BLOCK_DEF(finucCommon,FINUC);
87 }
88 #endif