]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TFluka/Ffheavy.h
Support for heavy ions as primary in source.cxx
[u/mrichter/AliRoot.git] / TFluka / Ffheavy.h
CommitLineData
fa3d1cc7 1extern "C" {
2//*$ create fheavy.add
3//*copy fheavy
4//*
5//*=== fheavy ===========================================================*
6//*
7//*----------------------------------------------------------------------*
8//* *
9//* include file: fheavy *
10//* *
11//* created on 5 april 1990 by alfredo ferrari, infn milan *
12//* *
13//* last change on 26-jul-97 by alfredo ferrari, infn milan *
14//* *
15//* included in the following subroutines or functions: not updated *
16//* *
17//* description of the common block(s) and variable(s) *
18//* *
19//* /fheavy/ is the storage for heavy secondaries created in the *
20//* nuclear evaporation *
21//* npheav = number of secondaries *
22//* kheavy(ip) = type of the secondary ip *
23//* ( 3 = deuteron, 4 = 3-h, 5 = 3-he, 6 = 4-he, *
24//* 7-12 = "heavy" fragment specified by ibheav and *
25//* icheav ) *
26//* cxheav(ip) = direction cosine of the secondary ip *
27//* with respect to x-axis *
28//* cyheav(ip) = direction cosine of the secondary ip *
29//* with respect to y-axis *
30//* czheav(ip) = direction cosine of the secondary ip *
31//* with respect to z-axis *
32//* tkheav(ip) = kinetic energy of secondary ip *
33//* pheavy(ip) = momentum of the secondary ip *
34//* wheavy(ip) = weight of the secondary ip *
35//* agheav(ip) = "age" of the secondary ip with respect to the *
36//* interaction time *
37//* amheav(kp) = atomic masses of the twelve types of evaporated *
38//* or fragmented or fissioned particles *
39//* amnhea(kp) = nuclear masses of the twelve types of evaporated *
40//* or fragmented or fissioned particles *
41//* bhheav(jp,kp) = (nuclear) binding energy of the jp_th hyperon of *
42//* the kp-type heavy particle *
43//* anheav(kp) = name of the kp-type heavy particle *
44//* icheav(kp) = charge of the kp-type heavy particle *
45//* ibheav(kp) = mass number of the kp-type heavy particle *
46//* imheav(kp) = isomeric state of the kp-type heavy particle *
47//* ihheav(kp) = number of hyperons of the kp-type heavy particle *
48//* khheav(jp,kp) = id of the jp_th hyperon of the kp-type heavy *
49//* particle *
9ed1543d 50//* infhea(ip) = possible extra infos for the ip_th secondary * 2006.3
fa3d1cc7 51//* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *
52//* !!! there is now the possibility to produce up to 6 "heavy" !!!! *
53//* !!! fragments besides the residual nucleus recorded in !!!! *
54//* !!! resnuc: they are identified by indeces 7-12, of course !!!! *
55//* !!! the corresponding physical properties (z,a,m..) must be !!!! *
56//* !!! updated every time they are produced !!!! *
57//* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *
58//*----------------------------------------------------------------------*
59//*
60const Int_t mxheav = 100;
5929ad29 61const Int_t kxheav = 30;
fa3d1cc7 62
63typedef struct {
9ed1543d 64 Double_t cxheav[mxheav];
65 Double_t cyheav[mxheav];
66 Double_t czheav[mxheav];
67 Double_t tkheav[mxheav];
68 Double_t pheavy[mxheav];
69 Double_t wheavy[mxheav];
70 Double_t agheav[mxheav];
71 Double_t bhheav[kxheav][ihypmx];
72 Double_t amheav[kxheav];
73 Double_t amnhea[kxheav];
74 Int_t kheavy[mxheav];
75 Int_t infhea[mxheav]; // 2006.3
76 Int_t icheav[kxheav];
77 Int_t ibheav[kxheav];
78 Int_t imheav[kxheav];
79 Int_t ihheav[kxheav];
80 Int_t khheav[kxheav][ihypmx];
81 Int_t npheav;
fa3d1cc7 82} fheavyCommon;
83#define FHEAVY COMMON_BLOCK(FHEAVY,fheavy)
84COMMON_BLOCK_DEF(fheavyCommon,FHEAVY);
85
86typedef struct {
87 Char_t anheav[kxheav][8];
88} fheavcCommon;
89#define FHEAVC COMMON_BLOCK(FHEAVC,fheavc)
90COMMON_BLOCK_DEF(fheavcCommon,FHEAVC);
91}