]>
Commit | Line | Data |
---|---|---|
dd82cadc | 1 | /* $Id$ */ |
2 | ||
3 | // This class introduces the weight's calculation | |
4 | // according to the Lednicky's algorithm. | |
5 | // The detailed description of the algorithm can be found | |
6 | // in comments to fortran code: | |
7 | // fsiw.f, fsiini.f | |
8 | ||
9 | #ifndef ALIHBTCrab_H | |
10 | #define ALIHBTCrab_H | |
11 | ||
12 | #include "AliHBTWeights.h" | |
13 | ||
8882f543 | 14 | #ifdef __DECCXX |
15 | #include <complex.h> | |
227b510f | 16 | #else |
17 | class Complex; | |
18 | typedef Complex double_complex; | |
8882f543 | 19 | #endif |
20 | #include <math.h> | |
dd82cadc | 21 | |
22 | class AliHBTPair; | |
23 | ||
24 | class AliHBTCrab: public AliHBTWeights | |
25 | { | |
26 | public: | |
27 | ||
28 | virtual ~AliHBTCrab(){fgCrab =0x0;} | |
29 | static AliHBTCrab* Instance(); | |
30 | void Set(); | |
31 | ||
32 | Double_t GetWeight(const AliHBTPair* partpair); | |
33 | void Init(Int_t pid1,Int_t pid2); //put the initial values in fortran commons fsiini, led_bldata | |
34 | private: | |
35 | AliHBTCrab(); | |
36 | AliHBTCrab(const AliHBTCrab &/*source*/); | |
37 | AliHBTCrab & operator=(const AliHBTCrab& /*source*/); | |
38 | ||
39 | void get_com_quantities(const AliHBTPair* pair, double *qred,double *r,double *qdotr,double *mom, int *test); | |
40 | double corrcalc(double trueqred,double trueqdotr,double truer); | |
41 | ||
42 | Bool_t fBreitWigner; | |
43 | Bool_t fReducedMom; | |
44 | Float_t fMaxMomentum; | |
45 | ||
46 | Bool_t SetConfig(const AliHBTPair* pair); | |
47 | ||
48 | Int_t fPid1; | |
49 | Int_t fPid2; | |
50 | ||
51 | Double_t MASS1; | |
52 | Double_t MASS2; | |
53 | ||
54 | Float_t INTERACTION_WSYM;/* fractions of symmetric and antisym weights of the various spin channels */ | |
55 | Float_t INTERACTION_WANTI; | |
56 | Float_t INTERACTION_WNOSYM; | |
57 | ||
58 | Float_t INTERACTION_DELK; | |
59 | Int_t INTERACTION_NKMAX;/* number of momentum points in mesh for strong/coul. interaction */ | |
60 | ||
8882f543 | 61 | #ifdef __DECCXX |
62 | static const complex ci; | |
63 | #else | |
dd82cadc | 64 | static const double_complex ci; |
8882f543 | 65 | #endif |
dd82cadc | 66 | static const Double_t fgkROOT2;//! some const |
67 | static const Double_t fgkWcons; //constant for fm->GeV conversion 1/0.1973 | |
68 | ||
8882f543 | 69 | #ifdef __DECCXX |
70 | complex cgamma(complex c); | |
71 | #else | |
dd82cadc | 72 | double_complex cgamma(double_complex c); |
8882f543 | 73 | #endif |
dd82cadc | 74 | |
75 | static AliHBTCrab* fgCrab; | |
76 | ClassDef(AliHBTCrab,1) | |
77 | }; | |
78 | ||
79 | #endif |