]>
Commit | Line | Data |
---|---|---|
dd82cadc | 1 | #ifndef ALIHBTWeightTHEORFCTN_H |
2 | #define ALIHBTWeightTHEORFCTN_H | |
3 | /* $Id$ */ | |
eb828ce0 | 4 | //_____________________________________________________________________________ |
5 | /////////////////////////////////////////////////////////////////////////////// | |
6 | // | |
7 | // class AliHBTWeightTheorQInvFctn | |
8 | // | |
9 | // This function allows to obtain Q_inv correlation function with weights | |
10 | // calculated by Lednicky's alghorithm. | |
11 | // Numerator is filled with weighted events. Weights are attributed to simulated particles. | |
12 | // Weights are calculated with corresponding simulated particles momenta. | |
13 | // Denominator is filled with mixing unweighted simulated particles. | |
14 | // One needs only simulated pairs, so | |
15 | // this function is of class AliHBTOnePairFctn1D. | |
16 | // Author Ludmila Malinina JINR (malinina@sunhe.jinr.ru) | |
17 | // | |
18 | /////////////////////////////////////////////////////////////////////////////// | |
dd82cadc | 19 | |
20 | #include "AliHBTFunction.h" | |
21 | ||
22 | class AliHBTWeights; | |
23 | ||
fc13079c | 24 | class AliHBTWeightTheorQInvFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction |
dd82cadc | 25 | { |
dd82cadc | 26 | public: |
f78d233e | 27 | AliHBTWeightTheorQInvFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); |
28 | virtual ~AliHBTWeightTheorQInvFctn(){} | |
29 | ||
30 | TH1* GetResult(); | |
31 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
dd82cadc | 32 | |
f78d233e | 33 | protected: |
a22a56ec | 34 | Double_t GetValue(AliHBTPair* partpair) const |
f78d233e | 35 | { return partpair->GetQInv();} |
dd82cadc | 36 | |
53c30a2e | 37 | ClassDef(AliHBTWeightTheorQInvFctn,2) |
dd82cadc | 38 | }; |
fc13079c | 39 | /*************************************************************/ |
dd82cadc | 40 | |
fc13079c | 41 | class AliHBTWeightTheorQOutFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction |
dd82cadc | 42 | { |
43 | ||
44 | public: | |
f78d233e | 45 | AliHBTWeightTheorQOutFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); |
46 | virtual ~AliHBTWeightTheorQOutFctn(){} | |
dd82cadc | 47 | |
f78d233e | 48 | TH1* GetResult(); |
49 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
dd82cadc | 50 | |
f78d233e | 51 | protected: |
a22a56ec | 52 | Double_t GetValue(AliHBTPair* partpair) const |
78d7c6d3 | 53 | { return partpair->GetQOutLCMS();} |
f78d233e | 54 | |
53c30a2e | 55 | ClassDef(AliHBTWeightTheorQOutFctn,2) |
dd82cadc | 56 | }; |
fc13079c | 57 | /*************************************************************/ |
dd82cadc | 58 | |
fc13079c | 59 | class AliHBTWeightTheorQSideFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction |
dd82cadc | 60 | { |
dd82cadc | 61 | public: |
f78d233e | 62 | AliHBTWeightTheorQSideFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); |
63 | virtual ~AliHBTWeightTheorQSideFctn(){} | |
dd82cadc | 64 | |
f78d233e | 65 | TH1* GetResult(); |
66 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
67 | ||
68 | protected: | |
a22a56ec | 69 | Double_t GetValue(AliHBTPair* partpair) const |
78d7c6d3 | 70 | { return partpair->GetQSideLCMS();} |
dd82cadc | 71 | |
53c30a2e | 72 | ClassDef(AliHBTWeightTheorQSideFctn,2) |
dd82cadc | 73 | }; |
fc13079c | 74 | /*************************************************************/ |
dd82cadc | 75 | |
fc13079c | 76 | class AliHBTWeightTheorQLongFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction |
dd82cadc | 77 | { |
dd82cadc | 78 | public: |
f78d233e | 79 | AliHBTWeightTheorQLongFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); |
80 | virtual ~AliHBTWeightTheorQLongFctn(){} | |
dd82cadc | 81 | |
f78d233e | 82 | TH1* GetResult(); |
83 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
84 | ||
85 | protected: | |
a22a56ec | 86 | Double_t GetValue(AliHBTPair* partpair) const |
78d7c6d3 | 87 | { return partpair->GetQLongLCMS();} |
dd82cadc | 88 | |
53c30a2e | 89 | ClassDef(AliHBTWeightTheorQLongFctn,2) |
dd82cadc | 90 | }; |
dc0241b8 | 91 | |
92 | /*************************************************************/ | |
93 | ||
94 | class AliHBTWeightTheorQtFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction | |
95 | { | |
96 | public: | |
97 | AliHBTWeightTheorQtFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); | |
98 | virtual ~AliHBTWeightTheorQtFctn(){} | |
99 | ||
100 | TH1* GetResult(); | |
101 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
102 | ||
103 | protected: | |
104 | Double_t GetValue(AliHBTPair* partpair) const | |
105 | { return partpair->GetQt();} | |
106 | ||
377276f3 | 107 | ClassDef(AliHBTWeightTheorQtFctn,1) |
dc0241b8 | 108 | }; |
109 | ||
fc13079c | 110 | /*************************************************************/ |
dd82cadc | 111 | |
fc13079c | 112 | class AliHBTWeightTheorOSLFctn: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction |
dd82cadc | 113 | { |
114 | ||
115 | public: | |
116 | AliHBTWeightTheorOSLFctn(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0, | |
117 | Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0, | |
118 | Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0); | |
119 | virtual ~AliHBTWeightTheorOSLFctn(){} | |
120 | ||
f78d233e | 121 | TH1* GetResult(); |
122 | void ProcessSameEventParticles(AliHBTPair* partpair); | |
dd82cadc | 123 | |
f78d233e | 124 | protected: |
a22a56ec | 125 | void GetValues(AliHBTPair* pair, Double_t& x, Double_t& y, Double_t& z) const |
78d7c6d3 | 126 | { x=TMath::Abs(pair->GetQOutLCMS()); y=TMath::Abs(pair->GetQSideLCMS()); z=TMath::Abs(pair->GetQLongLCMS());} |
dd82cadc | 127 | |
53c30a2e | 128 | ClassDef(AliHBTWeightTheorOSLFctn,2) |
dd82cadc | 129 | }; |
130 | ||
131 | #endif |