]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - TFluka/Fpaprop.h
User stepping methods added (E. Futo)
[u/mrichter/AliRoot.git] / TFluka / Fpaprop.h
... / ...
CommitLineData
1#ifndef FPAPROP_H
2#define FPAPROP_H 1
3
4#include "Rtypes.h"
5#include "cfortran.h"
6
7#include "Fdimpar.h"
8
9extern "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
58typedef 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)
79COMMON_BLOCK_DEF(papropCommon,PAPROP);
80
81typedef 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)
86COMMON_BLOCK_DEF(chpprpCommon,CHPPRP);
87}
88
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];}
103#endif