]>
Commit | Line | Data |
---|---|---|
4fdf4eb3 | 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 | |
88cb7938 | 8 | |
7f92929e | 9 | #ifndef ALIHBTLLWEIGHTS_H |
10 | #define ALIHBTLLWEIGHTS_H | |
11 | ||
dd82cadc | 12 | #include "AliHBTWeights.h" |
7f92929e | 13 | |
14 | class AliHBTPair; | |
dd82cadc | 15 | class AliHBTLLWeights: public AliHBTWeights |
88cb7938 | 16 | { |
17 | public: | |
ae4a4473 | 18 | AliHBTLLWeights(); |
88cb7938 | 19 | virtual ~AliHBTLLWeights(){;} |
20 | static AliHBTLLWeights* Instance(); | |
ae4a4473 | 21 | |
dd82cadc | 22 | void Set(); |
88cb7938 | 23 | |
24 | Double_t GetWeight(const AliHBTPair* partpair); //get weight calculated by Lednicky's algorithm | |
25 | ||
26 | void Init(); //put the initial values in fortran commons fsiini, led_bldata | |
27 | void SetTest(Bool_t rtest = kTRUE);//Sets fTest member | |
4fdf4eb3 | 28 | |
88cb7938 | 29 | void SetColoumb(Bool_t col = kTRUE);//: (ICH in fortran code) Coulomb interaction between the two particles ON (OFF) |
30 | void SetQuantumStatistics(Bool_t qss = kTRUE);//IQS: quantum statistics for the two particles ON (OFF) //if non-identical particles automatically off | |
31 | void SetStrongInterSwitch(Bool_t sis = kTRUE);//ISI: strong interaction between the two particles ON (OFF) | |
32 | void SetColWithResidNuclSwitch(Bool_t crn = kTRUE);//I3C: Coulomb interaction with residual nucleus ON (OFF) | |
526c2bd5 | 33 | void SetLambda(Double_t la){fOneMinusLambda=1.-la;} //lambda=haoticity |
88cb7938 | 34 | void SetApproxModel(Int_t ap);//sets Model of Approximation (NS in Fortran code) |
35 | void SetRandomPosition(Bool_t rp = kTRUE); //ON=kTRUE(OFF=kFALSE) | |
36 | void SetR1dw(Double_t R); //spherical source model radii | |
37 | void SetParticlesTypes(Int_t pid1, Int_t pid2); //set AliRoot particles types | |
38 | void SetNucleusCharge(Double_t ch); // not used now (see comments in fortran code) | |
39 | void SetNucleusMass(Double_t mass); // (see comments in fortran code) | |
526c2bd5 | 40 | |
88cb7938 | 41 | protected: |
42 | ||
43 | Bool_t fTest; //flag indicating if parameters listed below are to be calculated automatically (0) | |
44 | //or | |
37e71815 | 45 | Bool_t fColoumbSwitch; //switches on/off Coulumb effect |
46 | Bool_t fQuantStatSwitch; //switches on/off Quantum Statistics effect | |
88cb7938 | 47 | Bool_t fStrongInterSwitch;//Switches strong interactions TRUE=ON |
48 | Bool_t fColWithResidNuclSwitch;//Switches couloumb interaction | |
49 | //with residual nucleus TRUE=ON | |
50 | Double_t fNuclMass; //mass of nucleus | |
51 | Double_t fNuclCharge; //charge of nucleus | |
52 | ||
53 | Bool_t fRandomPosition;//flag indicating if positions of particles shuold be randomized according to parameters below | |
54 | Double_t fRadius; //radius used for randomizing particle vertex position | |
526c2bd5 | 55 | |
56 | Double_t fOneMinusLambda; //1 - intercept parameter | |
7f92929e | 57 | |
88cb7938 | 58 | Int_t fApproximationModel; //approximation used to calculate Bethe-Salpeter amplitude see SetApproxModel for more comments |
59 | ||
37e71815 | 60 | Int_t fPID1; //Pdg Code of the first particle in the pair |
61 | Int_t fPID2; //Pdg Code of the second particle in the pair | |
88cb7938 | 62 | Double_t fSigma; //constants for spherical source model in cm |
63 | static const Double_t fgkWcons; //constant for fm->GeV conversion 1/0.1973 | |
64 | ||
65 | static AliHBTLLWeights *fgLLWeights;// pointer to wrapper of Fortran Lednicky code | |
66 | ||
67 | static Int_t GetPairCode(Int_t pid1,Int_t pid2); | |
68 | static Int_t GetPairCode(const AliHBTPair* partpair);//calculate automatically internal code | |
69 | ||
70 | private: | |
111e505b | 71 | AliHBTLLWeights(const AliHBTLLWeights &/*source*/); |
72 | AliHBTLLWeights & operator=(const AliHBTLLWeights& /*source*/); | |
73 | ||
88cb7938 | 74 | ClassDef(AliHBTLLWeights,1) |
7f92929e | 75 | }; |
76 | ||
77 | #endif |