]>
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 | ||
fd1065a1 | 14 | #ifdef __DECCXX |
15 | #include <complex.h> | |
16 | #else | |
17 | class Complex; | |
18 | typedef Complex double_complex; | |
19 | #endif | |
20 | ||
21 | #include <math.h> | |
22 | ||
dd82cadc | 23 | class AliHBTPair; |
24 | ||
25 | class AliHBTCrab: public AliHBTWeights | |
26 | { | |
27 | public: | |
28 | ||
29 | virtual ~AliHBTCrab(){fgCrab =0x0;} | |
30 | static AliHBTCrab* Instance(); | |
31 | void Set(); | |
32 | ||
33 | Double_t GetWeight(const AliHBTPair* partpair); | |
34 | void Init(Int_t pid1,Int_t pid2); //put the initial values in fortran commons fsiini, led_bldata | |
c114f4f8 | 35 | |
dd82cadc | 36 | private: |
37 | AliHBTCrab(); | |
38 | AliHBTCrab(const AliHBTCrab &/*source*/); | |
39 | AliHBTCrab & operator=(const AliHBTCrab& /*source*/); | |
40 | ||
c114f4f8 | 41 | void GetComQuantities(const AliHBTPair* pair, double *qred,double *r,double *qdotr,double *mom, int *test); |
42 | double CorrCalc(double trueqred,double trueqdotr,double truer); | |
dd82cadc | 43 | |
c114f4f8 | 44 | Bool_t fBreitWigner;//switch if to calculated BW |
45 | Bool_t fReducedMom;//switch if | |
46 | Float_t fMaxMomentum;//switch if | |
dd82cadc | 47 | |
48 | Bool_t SetConfig(const AliHBTPair* pair); | |
49 | ||
c114f4f8 | 50 | Int_t fPid1;//PID of the first particle |
51 | Int_t fPid2;//PID of the second particle | |
dd82cadc | 52 | |
c114f4f8 | 53 | Double_t fMass1;//mass of the first particle |
54 | Double_t fMass2;//mass of the second particle | |
dd82cadc | 55 | |
c114f4f8 | 56 | Float_t fInteractionWsym;// fractions of symmetric and antisym weights of the various spin channels |
57 | Float_t fInteractionWanti;//comment | |
58 | Float_t fInteractionWnosym;//comment | |
dd82cadc | 59 | |
c114f4f8 | 60 | Float_t fInteractionDelk;//comment |
61 | Int_t fInteractionNkmax;// number of momentum points in mesh for strong/coul. interaction | |
dd82cadc | 62 | |
8882f543 | 63 | #ifdef __DECCXX |
c114f4f8 | 64 | static const complex fgkCI;//complex (1,0) |
8882f543 | 65 | #else |
c114f4f8 | 66 | static const double_complex fgkCI;//complex (1,0) |
8882f543 | 67 | #endif |
dd82cadc | 68 | static const Double_t fgkROOT2;//! some const |
69 | static const Double_t fgkWcons; //constant for fm->GeV conversion 1/0.1973 | |
70 | ||
8882f543 | 71 | #ifdef __DECCXX |
c114f4f8 | 72 | complex CGamma(complex c); |
8882f543 | 73 | #else |
c114f4f8 | 74 | double_complex CGamma(double_complex c); |
8882f543 | 75 | #endif |
dd82cadc | 76 | |
77 | static AliHBTCrab* fgCrab; | |
78 | ClassDef(AliHBTCrab,1) | |
79 | }; | |
80 | ||
81 | #endif |