]>
Commit | Line | Data |
---|---|---|
0fd4140b | 1 | #ifndef ALIHBTMONRESOLUTIONFCTNS_H |
2 | #define ALIHBTMONRESOLUTIONFCTNS_H | |
3 | //_______________________________________________________________________________ | |
4 | ///////////////////////////////////////////////////////////////////////////////// | |
5 | // | |
6 | // class AliHBTMonPxResolutionFctn; | |
7 | // class AliHBTMonPyResolutionFctn; | |
8 | // class AliHBTMonPzResolutionFctn; | |
9 | // class AliHBTMonPResolutionFctn; | |
10 | // class AliHBTMonPtResolutionFctn; | |
11 | // class AliHBTMonPhiResolutionFctn; | |
12 | // class AliHBTMonThetaResolutionFctn; | |
13 | // class AliHBTMonPxResolutionVsPtFctn; | |
14 | // class AliHBTMonPyResolutionVsPtFctn; | |
15 | // class AliHBTMonPzResolutionVsPtFctn; | |
16 | // class AliHBTMonPResolutionVsPtFctn; | |
17 | // class AliHBTMonPtResolutionVsPtFctn; | |
18 | // class AliHBTMonPhiResolutionVsPtFctn; | |
19 | // class AliHBTMonThetaResolutionVsPtFctn; | |
20 | // | |
21 | // Caution: On 2D plots on X axis in simulated values | |
22 | // That is contrary to two-particle resolutions where it is reconstructed one | |
23 | // | |
a57afe91 | 24 | // added by Zbigniew.Chajecki@cern.ch |
25 | // this classes create resolution functions of particle momentum | |
0fd4140b | 26 | // |
27 | ////////////////////////////////////////////////////////////////////////////////// | |
a57afe91 | 28 | |
29 | class AliHBTMonPxResolutionFctn; | |
30 | class AliHBTMonPyResolutionFctn; | |
31 | class AliHBTMonPzResolutionFctn; | |
32 | class AliHBTMonPResolutionFctn; | |
33 | class AliHBTMonPtResolutionFctn; | |
34 | class AliHBTMonPhiResolutionFctn; | |
35 | class AliHBTMonThetaResolutionFctn; | |
36 | ||
37 | class AliHBTMonPxResolutionVsPtFctn; | |
38 | class AliHBTMonPyResolutionVsPtFctn; | |
39 | class AliHBTMonPzResolutionVsPtFctn; | |
40 | class AliHBTMonPResolutionVsPtFctn; | |
41 | class AliHBTMonPtResolutionVsPtFctn; | |
42 | class AliHBTMonPhiResolutionVsPtFctn; | |
43 | class AliHBTMonThetaResolutionVsPtFctn; | |
44 | ||
45 | ||
46 | #include "AliHBTMonitorFunction.h" | |
47 | /***********************************************************************/ | |
48 | /***********************************************************************/ | |
49 | /***********************************************************************/ | |
50 | class AliHBTMonPxResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
51 | { | |
52 | public: | |
53 | AliHBTMonPxResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
54 | virtual ~AliHBTMonPxResolutionFctn(){} | |
55 | ||
56 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
57 | { | |
58 | return (partparticle->Px()-trackparticle->Px()) ; | |
59 | } | |
60 | TH1* GetResult(){return fResult;} | |
0fd4140b | 61 | ClassDef(AliHBTMonPxResolutionFctn,1) |
a57afe91 | 62 | }; |
63 | /***********************************************************************/ | |
64 | class AliHBTMonPyResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
65 | { | |
66 | public: | |
67 | AliHBTMonPyResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
68 | virtual ~AliHBTMonPyResolutionFctn(){} | |
69 | ||
70 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
71 | { | |
72 | return (partparticle->Py()-trackparticle->Py()) ; | |
73 | } | |
74 | TH1* GetResult(){return fResult;} | |
0fd4140b | 75 | ClassDef(AliHBTMonPyResolutionFctn,1) |
a57afe91 | 76 | }; |
77 | /***********************************************************************/ | |
78 | class AliHBTMonPzResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
79 | { | |
80 | public: | |
81 | AliHBTMonPzResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
82 | virtual ~AliHBTMonPzResolutionFctn(){} | |
83 | ||
84 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
85 | { | |
86 | return (partparticle->Pz()-trackparticle->Pz()) ; | |
87 | } | |
88 | TH1* GetResult(){return fResult;} | |
0fd4140b | 89 | ClassDef(AliHBTMonPzResolutionFctn,1) |
a57afe91 | 90 | }; |
91 | /***********************************************************************/ | |
92 | class AliHBTMonPResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
93 | { | |
94 | public: | |
95 | AliHBTMonPResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
96 | virtual ~AliHBTMonPResolutionFctn(){} | |
97 | ||
98 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
99 | { | |
100 | return (partparticle->P()-trackparticle->P()) ; | |
101 | } | |
102 | TH1* GetResult(){return fResult;} | |
0fd4140b | 103 | ClassDef(AliHBTMonPResolutionFctn,1) |
a57afe91 | 104 | }; |
105 | /***********************************************************************/ | |
106 | class AliHBTMonPtResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
107 | { | |
108 | public: | |
109 | AliHBTMonPtResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
110 | virtual ~AliHBTMonPtResolutionFctn(){} | |
111 | ||
112 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
113 | { | |
114 | return (partparticle->Pt()-trackparticle->Pt()) ; | |
115 | } | |
116 | TH1* GetResult(){return fResult;} | |
0fd4140b | 117 | ClassDef(AliHBTMonPtResolutionFctn,1) |
a57afe91 | 118 | }; |
119 | /***********************************************************************/ | |
120 | /***********************************************************************/ | |
121 | /***********************************************************************/ | |
122 | class AliHBTMonPxResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
123 | { | |
124 | public: | |
125 | AliHBTMonPxResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
126 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
127 | virtual ~AliHBTMonPxResolutionVsPtFctn(){} | |
128 | TH1* GetResult(){return fResult;} | |
129 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
130 | { | |
131 | x = partparticle->Pt(); | |
132 | y = partparticle->Px()-trackparticle->Px(); | |
133 | } | |
0fd4140b | 134 | ClassDef(AliHBTMonPxResolutionVsPtFctn,1) |
a57afe91 | 135 | }; |
136 | /***********************************************************************/ | |
137 | class AliHBTMonPyResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
138 | { | |
139 | public: | |
140 | AliHBTMonPyResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
141 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
142 | virtual ~AliHBTMonPyResolutionVsPtFctn(){} | |
143 | TH1* GetResult(){return fResult;} | |
144 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
145 | { | |
146 | x = partparticle->Pt(); | |
147 | y = partparticle->Py()-trackparticle->Py(); | |
148 | } | |
0fd4140b | 149 | ClassDef(AliHBTMonPyResolutionVsPtFctn,1) |
a57afe91 | 150 | }; |
151 | /***********************************************************************/ | |
152 | class AliHBTMonPzResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
153 | { | |
154 | public: | |
155 | AliHBTMonPzResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
156 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
157 | virtual ~AliHBTMonPzResolutionVsPtFctn(){} | |
158 | TH1* GetResult(){return fResult;} | |
159 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
160 | { | |
161 | x = partparticle->Pt(); | |
162 | y = partparticle->Pz()-trackparticle->Pz(); | |
163 | } | |
0fd4140b | 164 | ClassDef(AliHBTMonPzResolutionVsPtFctn,1) |
a57afe91 | 165 | }; |
166 | /***********************************************************************/ | |
167 | class AliHBTMonPResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
168 | { | |
169 | public: | |
170 | AliHBTMonPResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
171 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
172 | virtual ~AliHBTMonPResolutionVsPtFctn(){} | |
173 | TH1* GetResult(){return fResult;} | |
174 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
175 | { | |
176 | x = partparticle->Pt(); | |
177 | y = partparticle->P()-trackparticle->P(); | |
178 | } | |
179 | protected: | |
180 | private: | |
a57afe91 | 181 | ClassDef(AliHBTMonPResolutionVsPtFctn,1) |
182 | }; | |
183 | /***********************************************************************/ | |
184 | class AliHBTMonPtResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
185 | { | |
186 | public: | |
187 | AliHBTMonPtResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
188 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
189 | virtual ~AliHBTMonPtResolutionVsPtFctn(){} | |
190 | TH1* GetResult(){return fResult;} | |
191 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
192 | { | |
193 | x = partparticle->Pt(); | |
194 | y = partparticle->Pt()-trackparticle->Pt(); | |
195 | } | |
0fd4140b | 196 | ClassDef(AliHBTMonPtResolutionVsPtFctn,1) |
a57afe91 | 197 | }; |
198 | /***********************************************************************/ | |
199 | /***********************************************************************/ | |
200 | /***********************************************************************/ | |
201 | /***********************************************************************/ | |
202 | class AliHBTMonPhiResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
203 | { | |
204 | public: | |
205 | AliHBTMonPhiResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
206 | virtual ~AliHBTMonPhiResolutionFctn(){} | |
207 | ||
208 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
209 | { | |
210 | return (partparticle->Phi()-trackparticle->Phi()) ; | |
211 | } | |
212 | TH1* GetResult(){return fResult;} | |
0fd4140b | 213 | ClassDef(AliHBTMonPhiResolutionFctn,1) |
a57afe91 | 214 | }; |
215 | /***********************************************************************/ | |
216 | class AliHBTMonThetaResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
217 | { | |
218 | public: | |
219 | AliHBTMonThetaResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
220 | virtual ~AliHBTMonThetaResolutionFctn(){} | |
221 | ||
222 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
223 | { | |
224 | return (partparticle->Theta()-trackparticle->Theta()) ; | |
225 | } | |
226 | TH1* GetResult(){return fResult;} | |
0fd4140b | 227 | ClassDef(AliHBTMonThetaResolutionFctn,1) |
a57afe91 | 228 | }; |
229 | /***********************************************************************/ | |
230 | /***********************************************************************/ | |
231 | class AliHBTMonPhiResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
232 | { | |
233 | public: | |
0fd4140b | 234 | AliHBTMonPhiResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = 0.0, |
a57afe91 | 235 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); |
236 | virtual ~AliHBTMonPhiResolutionVsPtFctn(){} | |
237 | TH1* GetResult(){return fResult;} | |
238 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
239 | { | |
240 | x = partparticle->Pt(); | |
241 | y = partparticle->Phi()-trackparticle->Phi(); | |
242 | } | |
0fd4140b | 243 | ClassDef(AliHBTMonPhiResolutionVsPtFctn,1) |
244 | }; | |
245 | /***********************************************************************/ | |
246 | class AliHBTMonPhiResolutionVsPhiFctn: public AliHBTMonTwoParticleFctn2D | |
247 | { | |
248 | public: | |
249 | AliHBTMonPhiResolutionVsPhiFctn(Int_t nXbins = 200, Double_t maxXval = TMath::TwoPi(), Double_t minXval = 0.0, | |
250 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
251 | virtual ~AliHBTMonPhiResolutionVsPhiFctn(){} | |
252 | TH1* GetResult(){return fResult;} | |
253 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
254 | { | |
255 | x = partparticle->Phi(); | |
256 | y = partparticle->Phi()-trackparticle->Phi(); | |
257 | } | |
258 | ClassDef(AliHBTMonPhiResolutionVsPhiFctn,1) | |
a57afe91 | 259 | }; |
260 | /***********************************************************************/ | |
261 | class AliHBTMonThetaResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
262 | { | |
263 | public: | |
264 | AliHBTMonThetaResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
265 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
266 | virtual ~AliHBTMonThetaResolutionVsPtFctn(){} | |
267 | TH1* GetResult(){return fResult;} | |
268 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
269 | { | |
270 | x = partparticle->Pt(); | |
271 | y = partparticle->Theta()-trackparticle->Theta(); | |
272 | } | |
0fd4140b | 273 | ClassDef(AliHBTMonThetaResolutionVsPtFctn,1) |
a57afe91 | 274 | }; |
0fd4140b | 275 | |
276 | /***********************************************************************/ | |
277 | class AliHBTMonThetaResolutionVsThetaFctn: public AliHBTMonTwoParticleFctn2D | |
278 | { | |
279 | public: | |
280 | AliHBTMonThetaResolutionVsThetaFctn(Int_t nXbins = 200, Double_t maxXval = TMath::PiOver2(), Double_t minXval = -TMath::PiOver2(), | |
281 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
282 | virtual ~AliHBTMonThetaResolutionVsThetaFctn(){} | |
283 | TH1* GetResult(){return fResult;} | |
284 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
285 | { | |
286 | y = partparticle->Theta()-trackparticle->Theta(); | |
287 | x = partparticle->Theta(); | |
288 | } | |
289 | ClassDef(AliHBTMonThetaResolutionVsThetaFctn,1) | |
290 | }; | |
291 | /***********************************************************************/ | |
a57afe91 | 292 | /***********************************************************************/ |
293 | /***********************************************************************/ | |
294 | /***********************************************************************/ | |
295 | /***********************************************************************/ | |
296 | /***********************************************************************/ | |
297 | /***********************************************************************/ | |
298 | /***********************************************************************/ | |
299 | /***********************************************************************/ | |
300 | /***********************************************************************/ | |
301 | ||
302 | #endif |