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:
12 #include "AliHBTWeights.h"
18 typedef Complex double_complex;
25 class AliHBTCrab: public AliHBTWeights
29 virtual ~AliHBTCrab(){fgCrab =0x0;}
30 static AliHBTCrab* Instance();
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
38 AliHBTCrab(const AliHBTCrab &/*source*/);
39 AliHBTCrab & operator=(const AliHBTCrab& /*source*/);
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);
44 Bool_t fBreitWigner;//switch if to calculated BW
45 Bool_t fReducedMom;//switch if
46 Float_t fMaxMomentum;//switch if
48 Bool_t SetConfig(const AliHBTPair* pair);
50 Int_t fPid1;//PID of the first particle
51 Int_t fPid2;//PID of the second particle
53 Double_t fMass1;//mass of the first particle
54 Double_t fMass2;//mass of the second particle
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
60 Float_t fInteractionDelk;//comment
61 Int_t fInteractionNkmax;// number of momentum points in mesh for strong/coul. interaction
64 static const complex fgkCI;//complex (1,0)
66 static const double_complex fgkCI;//complex (1,0)
68 static const Double_t fgkROOT2;//! some const
69 static const Double_t fgkWcons; //constant for fm->GeV conversion 1/0.1973
72 complex CGamma(complex c);
74 double_complex CGamma(double_complex c);
77 static AliHBTCrab* fgCrab;
78 ClassDef(AliHBTCrab,1)