]>
Commit | Line | Data |
---|---|---|
b9d0a01d | 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 | //* include file: paprop copy * | |
18 | //* * | |
19 | //* !!!! n e w v e r s i o n !!!! * | |
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 | //* included in the following subroutines or functions: not updated * | |
27 | //* * | |
28 | //* description of the common block(s) and variable(s) * | |
29 | //* * | |
30 | //* /paprop/ contains particle properties * | |
31 | //* btype = literal name of the particle * | |
32 | //* am = particle mass in gev * | |
33 | //* ichrge = electric charge of the particle * | |
34 | //* ibarch = baryonic charge of the particle * | |
35 | //* iscore = explanations for the scored distribution * | |
36 | //* genpar = names of the generalized particles * | |
37 | //* ijdisc = list of the particle types to be discarded * | |
38 | //* thalf = half life of the particle in sec * | |
39 | //* biasdc = decay biasing factors * | |
40 | //* biasin = inelastic interaction biasing factors * | |
41 | //* lhadro = flag for hadrons * | |
42 | //* jspinp = particle spin (in units of 1/2) * | |
43 | //* iparty = particle parity (when defined) * | |
44 | //* iparid = flag used to identify particle types * | |
45 | //* lbsdcy = logical flag for biased decay: if .true. the biasing * | |
46 | //* factor is used as an upper limit to the decay length * | |
47 | //* lprbsd = logical flag for biased decay: if .true. the biasing * | |
48 | //* factor is applied only to primaries * | |
49 | //* lprbsi = logical flag for inelastic interaction biasing: if * | |
50 | //* .true. the biasing factor is applied only to prima- * | |
51 | //* ries * | |
52 | //* lsclwf = logical flag for low energy neutron fission scoring * | |
53 | //* lscnbl = logical flag for neutron balance scoring * | |
54 | //* * | |
55 | //*----------------------------------------------------------------------* | |
56 | //* | |
57 | ||
58 | typedef struct { | |
59 | Double_t am[nallwp+7]; //(-6:NALLWP) | |
60 | Double_t amdisc[nallwp+7]; //(-6:NALLWP) | |
61 | Double_t thalf[nallwp+7]; //(-6:NALLWP) | |
62 | Double_t biasdc[nallwp+7]; //(-6:NALLWP) | |
63 | Double_t biasin[nallwp+7]; //(-6:NALLWP) | |
64 | Int_t ichrge[nallwp+7]; //(-6:NALLWP) | |
65 | Int_t ibarch[nallwp+7]; //(-6:NALLWP) | |
66 | Int_t ijdisc[nallwp+7]; //(-6:NALLWP) | |
67 | Int_t jspinp[nallwp+7]; //(-6:NALLWP) | |
68 | Int_t iparty[nallwp+7]; //(-6:NALLWP) | |
69 | Int_t iparid[nallwp+7]; //(-6:NALLWP) | |
70 | Int_t lhadro[nallwp+7]; //(-6:NALLWP) | |
71 | Int_t lbsdcy[nallwp+7]; //(-6:NALLWP) | |
72 | Int_t iscore[10]; | |
73 | Int_t lprbsd; | |
74 | Int_t lprbsi; | |
75 | Int_t lsclwf; | |
76 | Int_t lscnbl; | |
77 | } papropCommon; | |
78 | #define PAPROP COMMON_BLOCK(PAPROP,paprop) | |
79 | COMMON_BLOCK_DEF(papropCommon,PAPROP); | |
80 | ||
81 | typedef struct { | |
82 | Char_t btype[nallwp+7][8]; //(-6:NALLWP) | |
83 | Char_t genpar[30][8]; //(30) | |
84 | } chpprpCommon; | |
85 | #define CHPPRP COMMON_BLOCK(CHPPRP,chpprp) | |
86 | COMMON_BLOCK_DEF(chpprpCommon,CHPPRP); | |
87 | } | |
88 | ||
fa3d1cc7 | 89 | //Get functions |
90 | //inline Double_t GetFlukaAM(unsigned int i) {return PAPROP.am[i+6];} | |
91 | //inline Double_t GetFlukaAMDISC(unsigned int i) {return PAPROP.amdisc[i+6];} | |
92 | //inline Double_t GetFlukaTHALH(unsigned int i) {return PAPROP.thalf[i+6];} | |
93 | //inline Double_t GetFlukaBIASDC(unsigned int i) {return PAPROP.biasdc[i+6];} | |
94 | //inline Double_t GetFlukaBIASIN(unsigned int i) {return PAPROP.biasin[i+6];} | |
95 | //inline Int_t GetFlukaICHRGE(unsigned int i) {return PAPROP.ichrge[i+6];} | |
96 | //inline Int_t GetFlukaIBARCH(unsigned int i) {return PAPROP.ibarch[i+6];} | |
97 | //inline Int_t GetFlukaIJDISC(unsigned int i) {return PAPROP.ijdisc[i+6];} | |
98 | //inline Int_t GetFlukaJSPINP(unsigned int i) {return PAPROP.jspinp[i+6];} | |
99 | //inline Int_t GetFlukaIPARTY(unsigned int i) {return PAPROP.iparty[i+6];} | |
100 | //inline Int_t GetFlukaIPARID(unsigned int i) {return PAPROP.iparid[i+6];} | |
101 | //inline Int_t GetFlukaLHADRO(unsigned int i) {return PAPROP.lhadro[i+6];} | |
102 | //inline Int_t GetFlukaLBSDCY(unsigned int i) {return PAPROP.lbsdcy[i+6];} | |
b9d0a01d | 103 | #endif |