SetDisplayInfo added
[u/mrichter/AliRoot.git] / HBTAN / AliHBTQResolutionFctns.h
CommitLineData
89ef84e1 1#ifndef ALIHBTQOUTVsQINVRESOLFCTN_H
2#define ALIHBTQOUTVsQINVRESOLFCTN_H
1b446896 3//General Remark:
4//CMSLC means
5//Center of Mass System Longitudially Co-moving
6
7
8//this class creates resolution function of Qout
9//(difference of simulated pair Qout and recontructed pair)
10//in function of QInv
27b3fe5d 11//it inherits from AliHBTTwoPairFctn2D
1b446896 12// it needs two pairs to compare
13// and is two dimentional: numerator and denominator are TH2D
14
89ef84e1 15class AliHBTQOutResolVsQInvFctn; //QOutCMSLC Res Vs QInvCMSLC
16class AliHBTQSideResolVsQInvFctn; //QSideCMSLC Res Vs QInvCMSLC
17class AliHBTQLongResolVsQInvFctn; //QLongCMSLC Res Vs QInvCMSLC
18class AliHBTQInvResolVsQInvFctn; //QInvCMSLC Res Vs QInvCMSLC
1b446896 19
89ef84e1 20class AliHBTPairThetaResolVsQInvFctn;//PairTheta Res Vs QInvCMSLC
21class AliHBTPairPhiResolVsQInvFctn; //PairPhi Res Vs QInvCMSLC
1b446896 22
89ef84e1 23class AliHBTQInvResolVsKtFctn; //QInvCMSLC Res Vs Kt
24class AliHBTQOutResolVsKtFctn; //QOutCMSLC Res Vs Kt
25class AliHBTQSideResolVsKtFctn; //QSideCMSLC Res Vs Kt
26class AliHBTQLongResolVsKtFctn; //QLongCMSLC Res Vs Kt
1b446896 27
89ef84e1 28class AliHBTPairThetaResolVsKtFctn; //PairTheta Res Vs Kt
29class AliHBTPairPhiResolVsKtFctn; //PairPhi Res Vs Kt
1b446896 30
89ef84e1 31
32class AliHBTQOutResolVsQOutFctn; //QOutCMSLC Res Vs QOut
33class AliHBTQSideResolVsQSideFctn;//QSideCMSLC Res Vs QSide
34class AliHBTQLongResolVsQLongFctn;//QLongCMSLC Res Vs QLong
35
36
37
1b446896 38#include "AliHBTFunction.h"
39/***********************************************************************/
40/***********************************************************************/
89ef84e1 41class AliHBTQInvResolVsQInvFctn: public AliHBTTwoPairFctn2D
1b446896 42 {
43 public:
89ef84e1 44 AliHBTQInvResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
1b446896 45 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
46
89ef84e1 47 virtual ~AliHBTQInvResolVsQInvFctn(){}
48
49 TH1* GetResult(){return fNumerator;}
50 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
51 {
52 y = partpair->GetQInv() - trackpair->GetQInv();
53 x = partpair->GetQInv();
54 }
55 protected:
56 private:
57 public:
58 ClassDef(AliHBTQInvResolVsQInvFctn,1)
59 };
60
61
62/***********************************************************************/
63/***********************************************************************/
64class AliHBTQOutResolVsQInvFctn: public AliHBTTwoPairFctn2D
65 {
66 public:
67 AliHBTQOutResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
68 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
69
70 virtual ~AliHBTQOutResolVsQInvFctn(){}
1b446896 71
72 TH1* GetResult(){return fNumerator;}
73 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
74 {
19b27ae5 75 y = partpair->GetQOutCMSLC() - trackpair->GetQOutCMSLC();
76 x = partpair->GetQInv();
1b446896 77 }
78 protected:
79 private:
80 public:
89ef84e1 81 ClassDef(AliHBTQOutResolVsQInvFctn,1)
1b446896 82 };
83
84/***********************************************************************/
85/***********************************************************************/
89ef84e1 86class AliHBTQSideResolVsQInvFctn: public AliHBTTwoPairFctn2D
1b446896 87 {
88 public:
89ef84e1 89 AliHBTQSideResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
1b446896 90 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 91 virtual ~AliHBTQSideResolVsQInvFctn(){}
1b446896 92
93 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
94 {
19b27ae5 95 y = partpair->GetQSideCMSLC() - trackpair->GetQSideCMSLC();
96 x = partpair->GetQInv();
1b446896 97 }
98 TH1* GetResult(){return fNumerator;}
99 protected:
100 private:
101 public:
89ef84e1 102 ClassDef(AliHBTQSideResolVsQInvFctn,1)
1b446896 103 };
104
105/***********************************************************************/
106/***********************************************************************/
89ef84e1 107class AliHBTQLongResolVsQInvFctn: public AliHBTTwoPairFctn2D
1b446896 108 {
109 public:
89ef84e1 110 AliHBTQLongResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
1b446896 111 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 112 virtual ~AliHBTQLongResolVsQInvFctn(){}
1b446896 113
114 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
115 {
19b27ae5 116 y = partpair->GetQLongCMSLC() - trackpair->GetQLongCMSLC();
117 x = partpair->GetQInv();
1b446896 118 }
119 TH1* GetResult(){return fNumerator;}
120 protected:
121 private:
122 public:
89ef84e1 123 ClassDef(AliHBTQLongResolVsQInvFctn,1)
1b446896 124 };
125
126/***********************************************************************/
127/***********************************************************************/
89ef84e1 128class AliHBTQInvResolVsKtFctn: public AliHBTTwoPairFctn2D
1b446896 129 {
130 public:
89ef84e1 131 AliHBTQInvResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 1., Double_t minXval = 0.0,
1b446896 132 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 133 virtual ~AliHBTQInvResolVsKtFctn(){};
1b446896 134
135 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
136 {
19b27ae5 137 y = partpair->GetQInv() - trackpair->GetQInv();
138 x = partpair->GetKt();
1b446896 139 }
140 TH1* GetResult(){return fNumerator;}
141 protected:
142 private:
143 public:
89ef84e1 144 ClassDef(AliHBTQInvResolVsKtFctn,1)
1b446896 145 };
146/***********************************************************************/
147/***********************************************************************/
89ef84e1 148class AliHBTQOutResolVsKtFctn: public AliHBTTwoPairFctn2D
1b446896 149 {
150 public:
89ef84e1 151 AliHBTQOutResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 1., Double_t minXval = 0.0,
1b446896 152 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
89ef84e1 153 virtual ~AliHBTQOutResolVsKtFctn(){}
1b446896 154 TH1* GetResult(){return GetNumerator();}
155 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
156 {
19b27ae5 157 y = partpair->GetQOutCMSLC() - trackpair->GetQOutCMSLC();
158 x = partpair->GetKt();
1b446896 159 }
160 protected:
161 private:
162 public:
89ef84e1 163 ClassDef(AliHBTQOutResolVsKtFctn,1)
1b446896 164 };
165/***********************************************************************/
166/***********************************************************************/
89ef84e1 167class AliHBTQSideResolVsKtFctn: public AliHBTTwoPairFctn2D
1b446896 168 {
169 public:
89ef84e1 170 AliHBTQSideResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 1., Double_t minXval = 0.0,
1b446896 171 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 172 virtual ~AliHBTQSideResolVsKtFctn(){}
1b446896 173 TH1* GetResult(){return GetNumerator();}
174 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
175 {
19b27ae5 176 y = partpair->GetQSideCMSLC() - trackpair->GetQSideCMSLC();
177 x = partpair->GetKt();
1b446896 178 }
179 protected:
180 private:
181 public:
89ef84e1 182 ClassDef(AliHBTQSideResolVsKtFctn,1)
1b446896 183 };
184/***********************************************************************/
185/***********************************************************************/
89ef84e1 186class AliHBTQLongResolVsKtFctn: public AliHBTTwoPairFctn2D
1b446896 187 {
188 public:
89ef84e1 189 AliHBTQLongResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 1., Double_t minXval = 0.0,
1b446896 190 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 191 virtual ~AliHBTQLongResolVsKtFctn(){}
1b446896 192
193 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
194 {
19b27ae5 195 y = partpair->GetQLongCMSLC() - trackpair->GetQLongCMSLC();
196 x = partpair->GetKt();
1b446896 197 }
89ef84e1 198 TH1* GetResult(){return fNumerator;}
1b446896 199 protected:
200 private:
201 public:
89ef84e1 202 ClassDef(AliHBTQLongResolVsKtFctn,1)
1b446896 203 };
204/***********************************************************************/
205/***********************************************************************/
89ef84e1 206class AliHBTQOutResolVsQOutFctn: public AliHBTTwoPairFctn2D
1b446896 207 {
208 public:
89ef84e1 209 AliHBTQOutResolVsQOutFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = -0.2,
1b446896 210 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
89ef84e1 211 virtual ~AliHBTQOutResolVsQOutFctn(){}
1b446896 212
213 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
214 {
19b27ae5 215 x = partpair->GetQOutCMSLC();
216 y = x - trackpair->GetQOutCMSLC();
1b446896 217 }
218 TH1* GetResult(){return fNumerator;}
219 protected:
220 private:
221 public:
89ef84e1 222 ClassDef(AliHBTQOutResolVsQOutFctn,1)
1b446896 223 };
224
225/***********************************************************************/
226/***********************************************************************/
227
89ef84e1 228class AliHBTQSideResolVsQSideFctn: public AliHBTTwoPairFctn2D
1b446896 229 {
230 public:
89ef84e1 231 AliHBTQSideResolVsQSideFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = -0.2,
1b446896 232 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
89ef84e1 233 virtual ~AliHBTQSideResolVsQSideFctn(){}
1b446896 234
235 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
236 {
19b27ae5 237 x = partpair->GetQSideCMSLC();
238 y = x - trackpair->GetQSideCMSLC();
1b446896 239 }
240 TH1* GetResult(){return fNumerator;}
241 protected:
242 private:
243 public:
89ef84e1 244 ClassDef(AliHBTQSideResolVsQSideFctn,1)
1b446896 245 };
246
247
248/***********************************************************************/
249/***********************************************************************/
250
89ef84e1 251class AliHBTQLongResolVsQLongFctn: public AliHBTTwoPairFctn2D
1b446896 252 {
253 public:
89ef84e1 254 AliHBTQLongResolVsQLongFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = -0.2,
1b446896 255 Int_t nYbins = 500, Double_t maxYval = .05, Double_t minYval =-0.05);
89ef84e1 256 virtual ~AliHBTQLongResolVsQLongFctn(){}
1b446896 257
258 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
259 {
19b27ae5 260 x = partpair->GetQLongCMSLC();
261 y = x - trackpair->GetQLongCMSLC();
1b446896 262 }
263 TH1* GetResult(){return fNumerator;}
264 protected:
265 private:
266 public:
89ef84e1 267 ClassDef(AliHBTQLongResolVsQLongFctn,1)
268 };
269
270
271/***********************************************************************/
272/***********************************************************************/
273class AliHBTPairThetaResolVsQInvFctn: public AliHBTTwoPairFctn2D
274 {
275 public:
276 AliHBTPairThetaResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
277 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
278
279 virtual ~AliHBTPairThetaResolVsQInvFctn(){}
280
281 TH1* GetResult(){return fNumerator;}
282 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
283 {
284 Double_t partTheta = partpair->Particle1()->Theta() - partpair->Particle2()->Theta();
285 Double_t trackTheta = trackpair->Particle1()->Theta() - trackpair->Particle2()->Theta();
286 y = partTheta - trackTheta;
287 x = partpair->GetQInv();
288 }
289 protected:
290 private:
291 public:
292 ClassDef(AliHBTPairThetaResolVsQInvFctn,1)
293 };
294
295/***********************************************************************/
296/***********************************************************************/
297class AliHBTPairPhiResolVsQInvFctn: public AliHBTTwoPairFctn2D
298 {
299 public:
300 AliHBTPairPhiResolVsQInvFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
301 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
302
303 virtual ~AliHBTPairPhiResolVsQInvFctn(){}
304
305 TH1* GetResult(){return fNumerator;}
306 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
307 {
308 Double_t partPhi = partpair->Particle1()->Phi() - partpair->Particle2()->Phi();
309 Double_t trackPhi = trackpair->Particle1()->Phi() - trackpair->Particle2()->Phi();
310 y = partPhi - trackPhi;
311 x = partpair->GetQInv();
312 }
313 protected:
314 private:
315 public:
316 ClassDef(AliHBTPairPhiResolVsQInvFctn,1)
1b446896 317 };
318
89ef84e1 319/***********************************************************************/
320/***********************************************************************/
321class AliHBTPairThetaResolVsKtFctn: public AliHBTTwoPairFctn2D
322 {
323 public:
324 AliHBTPairThetaResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
325 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
326
327 virtual ~AliHBTPairThetaResolVsKtFctn(){}
328
329 TH1* GetResult(){return fNumerator;}
330 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
331 {
332 Double_t partTheta = partpair->Particle1()->Theta() - partpair->Particle2()->Theta();
333 Double_t trackTheta = trackpair->Particle1()->Theta() - trackpair->Particle2()->Theta();
334 y = partTheta - trackTheta;
335 x = partpair->GetKt();
336 }
337 protected:
338 private:
339 public:
340 ClassDef(AliHBTPairThetaResolVsKtFctn,1)
341 };
1b446896 342
89ef84e1 343/***********************************************************************/
344/***********************************************************************/
345class AliHBTPairPhiResolVsKtFctn: public AliHBTTwoPairFctn2D
346 {
347 public:
348 AliHBTPairPhiResolVsKtFctn(Int_t nXbins = 200, Double_t maxXval = 0.2, Double_t minXval = 0.0,
349 Int_t nYbins = 500, Double_t maxYval = .15, Double_t minYval =-0.15);
350
351 virtual ~AliHBTPairPhiResolVsKtFctn(){}
352
353 TH1* GetResult(){return fNumerator;}
354 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
355 {
356 Double_t partPhi = partpair->Particle1()->Phi() - partpair->Particle2()->Phi();
357 Double_t trackPhi = trackpair->Particle1()->Phi() - trackpair->Particle2()->Phi();
358 y = partPhi - trackPhi;
359 x = partpair->GetKt();
360 }
361 protected:
362 private:
363 public:
364 ClassDef(AliHBTPairPhiResolVsKtFctn,1)
365 };
1b446896 366
367#endif