added cdb stuff
[u/mrichter/AliRoot.git] / TFluka / Fpaprop.h
1 #ifndef FPAPROP_H
2 #define FPAPROP_H 1
3
4 #include "Rtypes.h"
5 #include "cfortran.h"
6
7 #include "Fdimpar.h"
8
9 extern "C" {
10   //*$ CREATE PAPROP.ADD
11   //*COPY PAPROP
12   //*
13   //*=== paprop ===========================================================*
14   //*
15   //*----------------------------------------------------------------------*
16   //*                                                                      *
17   //*     PArticle PROPerties:                                             *
18   //*                                                                      *
19   //*     !!!!  N E W   V E R S I O N   F O R   FLUKA9x/FLUKA200x  !!!!    *
20   //*                                                                      *
21   //*     Created on    07 may 1991    by    Alfredo Ferrari & Paola Sala  *
22   //*                                                   Infn - Milan       *
23   //*                                                                      *
24   //*     Last change on 03-jul-97     by    Alfredo Ferrari               *
25   //*                                                                      *
26   //*     Variable description:                                            *
27   //*                                                                      *
28   //*        btype (i) = literal name of the i_th particle                 *
29   //*        am    (i) = i_th particle mass (GeV)                          *
30   //*        amdisc(i) = i_th particle mass (GeV) for energy conservation  *
31   //*                    purposes when discarded                           *
32   //*        ichrge(i) = electric charge of the i_th particle              *
33   //*        ibarch(i) = baryonic charge of the i_th particle              *
34   //*        iscore(j) = id for the j_th scored distribution               *
35   //*        gnname(k) = name of the k_th generalized particle type        * 2006.3
36   //*        ijdisc(i) = flag for discarding the i_th particle type        *
37   //*        tmnlf (i) = mean (not half!) life of the i_th particle (s)    *
38   //*        biasdc(i) = decay biasing factor for the i_th particle        *
39   //*        biasin(i) = inelastic interaction biasing factor for the i_th *
40   //*                    particle                                          *
41   //*        lhadro(i) = True if the i_th particle type is a hadron        *
42   //*        jspinp(i) = i_th particle spin (in units of 1/2)              *
43   //*        iparty(i) = i_th particle parity (when meaningful)            *
44   //*        iparid(i) = particle type id flag for the i_th particle       *
45   //*        lbsdcy(i) = logical flag for biased decay for the i_th parti- *
46   //*                    cle: if .true. the biasing factor is used as an   *
47   //*                    upper limit to the decay length                   *
48   //*        lprbsd    = logical flag for biased decay: if .true. the bia- *
49   //*                    sing factor is applied only to primaries          *
50   //*        lprbsi    = logical flag for inelastic interaction biasing:   *
51   //*                    if .true. the biasing factor is applied only to   *
52   //*                    primaries                                         *
53   //*        lsclwf    = logical flag for low energy neutron fission sco-  *
54   //*                    ring                                              *
55   //*        lscnbl    = logical flag for neutron balance scoring          *
56   //*                                                                      *
57   //*----------------------------------------------------------------------*
58
59
60 //    const Int_t mxgnpr =  33; // 2006.3
61     const Int_t mxgnpr =  35;
62     typedef struct {
63         Double_t am[nallwp+7];         //(-6:NALLWP)
64         Double_t amdisc[nallwp+7];     //(-6:NALLWP)
65         Double_t tmnlf[nallwp+7];      //(-6:NALLWP)
66         Double_t biasdc[nallwp+7];     //(-6:NALLWP)
67         Double_t biasin[nallwp+7];     //(-6:NALLWP)
68         Int_t    ichrge[nallwp+7];     //(-6:NALLWP)
69         Int_t    ibarch[nallwp+7];     //(-6:NALLWP)
70         Int_t    ijdisc[nallwp+7];     //(-6:NALLWP)
71         Int_t    jspinp[nallwp+7];     //(-6:NALLWP)
72         Int_t    iparty[nallwp+7];     //(-6:NALLWP)
73         Int_t    iparid[nallwp+7];     //(-6:NALLWP)
74         Int_t    lhadro[nallwp+7];     //(-6:NALLWP)
75         Int_t    lbsdcy[nallwp+7];     //(-6:NALLWP)
76         Int_t    iscore[12];
77         Int_t    lprbsd;
78         Int_t    lprbsi;
79         Int_t    lsclwf;
80         Int_t    lscnbl;
81     } papropCommon;
82 #define PAPROP COMMON_BLOCK(PAPROP,paprop)
83 COMMON_BLOCK_DEF(papropCommon,PAPROP);
84
85     typedef struct {
86         Char_t   btype[nallwp+7][8];     //(-6:NALLWP)
87 //      Char_t   genpar[mxgnpr][8];          // 2006.3 
88         Char_t   gnname[mxgnpr][8];          // 2006.3
89     } chpprpCommon;
90 #define CHPPRP COMMON_BLOCK(CHPPRP,chpprp)
91 COMMON_BLOCK_DEF(chpprpCommon,CHPPRP);
92 }
93 #endif