1 #include "AliHBTQResolutionFctns.h"
3 //__________________________________________________________________
4 ////////////////////////////////////////////////////////////////////
8 // Center of Mass System Longitudially Co-moving //
11 // This class creates resolution function of Qout //
12 // (difference of simulated pair Qout and recontructed pair) //
13 // in function of QInv //
14 // it inherits from AliHBTTwoPairFctn2D //
15 // it needs two pairs to compare //
16 // and is two dimentional: numerator and denominator are TH2D //
18 ////////////////////////////////////////////////////////////////////
22 /******************************************************************/
23 /******************************************************************/
24 /******************************************************************/
25 ClassImp( AliHBTKtResolVsQInvFctn )
26 AliHBTKtResolVsQInvFctn::
27 AliHBTKtResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
28 Int_t nYbins, Double_t maxYval, Double_t minYval):
29 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
32 Rename("KtResolVsQInv","K_{t} Resolution vs. Q_{Inv}");
34 /******************************************************************/
35 /******************************************************************/
36 /******************************************************************/
37 ClassImp( AliHBTQInvResolVsQInvFctn )
38 AliHBTQInvResolVsQInvFctn::
39 AliHBTQInvResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
40 Int_t nYbins, Double_t maxYval, Double_t minYval):
41 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
44 Rename("QInvResolVsQInv","Q_{Inv} Resolution vs. Q_{Inv}");
46 /******************************************************************/
47 /******************************************************************/
48 /******************************************************************/
50 ClassImp( AliHBTQOutResolVsQInvFctn )
51 AliHBTQOutResolVsQInvFctn::
52 AliHBTQOutResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
53 Int_t nYbins, Double_t maxYval, Double_t minYval):
54 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
57 Rename("QOutResolVsQInv","Q_{Out} Resolution vs. Q_{Inv}");
59 /******************************************************************/
61 void AliHBTQOutResolVsQInvFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
63 //returns Qoutsim-Qoutrec for y
65 Double_t tqout = trackpair->GetQOutCMSLC();
66 y = partpair->GetQOutCMSLC() - tqout;
67 if (tqout < 0.0) y = -y;
68 x = partpair->GetQInv();
71 /******************************************************************/
72 /******************************************************************/
73 /******************************************************************/
75 ClassImp( AliHBTQSideResolVsQInvFctn )
77 AliHBTQSideResolVsQInvFctn::
78 AliHBTQSideResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
79 Int_t nYbins, Double_t maxYval, Double_t minYval):
80 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
83 Rename("QSideResolVsQInv","Q_{Side} Resolution vs. Q_{Inv}");
85 /******************************************************************/
87 void AliHBTQSideResolVsQInvFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
89 //returns Qsidesim-Qsiderec for y
91 y = partpair->GetQSideCMSLC() - trackpair->GetQSideCMSLC();
92 if (trackpair->GetQSideCMSLC() < 0.0) y = -y;
93 x = partpair->GetQInv();
96 /******************************************************************/
97 /******************************************************************/
98 /******************************************************************/
100 ClassImp( AliHBTQLongResolVsQInvFctn )
102 AliHBTQLongResolVsQInvFctn::
103 AliHBTQLongResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
104 Int_t nYbins, Double_t maxYval, Double_t minYval):
105 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
108 Rename("QLongResolVsQInv","Q_{Long} Resolution vs. Q_{Inv}");
110 /******************************************************************/
112 void AliHBTQLongResolVsQInvFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
114 //returns Qlongsim-Qlongrec for y
116 y = partpair->GetQLongCMSLC() - trackpair->GetQLongCMSLC();
117 if (trackpair->GetQLongCMSLC() < 0.0) y = -y;
118 x = partpair->GetQInv();
121 /******************************************************************/
122 /******************************************************************/
123 /******************************************************************/
125 ClassImp( AliHBTQInvResolVsKtFctn )
127 AliHBTQInvResolVsKtFctn::
128 AliHBTQInvResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
129 Int_t nYbins, Double_t maxYval, Double_t minYval):
130 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
133 Rename("QInvResolVsKt","Q_{Inv} Resolution vs. K_{t}");
136 /******************************************************************/
137 /******************************************************************/
138 /******************************************************************/
139 ClassImp( AliHBTQOutResolVsKtFctn )
141 AliHBTQOutResolVsKtFctn::
142 AliHBTQOutResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
143 Int_t nYbins, Double_t maxYval, Double_t minYval):
144 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
147 Rename("QOutResolVsKt","Q_{Out} Resolution vs. K_{t} ");
149 /******************************************************************/
151 void AliHBTQOutResolVsKtFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
153 //returns Qoutsim-Qoutrec for y
155 y = partpair->GetQOutCMSLC() - trackpair->GetQOutCMSLC();
156 if (trackpair->GetQOutCMSLC() < 0.0) y = -y;
157 x = partpair->GetKt();
160 /******************************************************************/
161 /******************************************************************/
162 /******************************************************************/
163 ClassImp( AliHBTQSideResolVsKtFctn )
165 AliHBTQSideResolVsKtFctn::
166 AliHBTQSideResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
167 Int_t nYbins, Double_t maxYval, Double_t minYval):
168 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
171 Rename("QSideResolVsKt","Q_{Side} Resolution vs. K_{t} ");
173 /******************************************************************/
175 void AliHBTQSideResolVsKtFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
177 //returns Qsidesim-Qsiderec for y
179 y = partpair->GetQSideCMSLC() - trackpair->GetQSideCMSLC();
180 if (trackpair->GetQSideCMSLC() < 0.0) y = -y;
181 x = partpair->GetKt();
184 /******************************************************************/
185 /******************************************************************/
186 /******************************************************************/
187 ClassImp( AliHBTQLongResolVsKtFctn )
189 AliHBTQLongResolVsKtFctn::
190 AliHBTQLongResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
191 Int_t nYbins, Double_t maxYval, Double_t minYval):
192 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
195 Rename("QLongResolVsKt","Q_{Long} Resolution vs. K_{t} ");
197 /******************************************************************/
199 void AliHBTQLongResolVsKtFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
201 //returns Qlongsim-Qlongrec for y
203 y = partpair->GetQLongCMSLC() - trackpair->GetQLongCMSLC();
204 if (trackpair->GetQLongCMSLC() < 0.0) y = -y;
205 x = partpair->GetKt();
207 /******************************************************************/
208 /******************************************************************/
209 /******************************************************************/
211 ClassImp( AliHBTQOutResolVsQOutFctn)
213 AliHBTQOutResolVsQOutFctn::
214 AliHBTQOutResolVsQOutFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
215 Int_t nYbins, Double_t maxYval, Double_t minYval):
216 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
219 Rename("QOutResolVsQOut","Q_{Out} Resolution vs. Q_{Out} ");
222 /******************************************************************/
223 /******************************************************************/
224 /******************************************************************/
225 ClassImp( AliHBTQSideResolVsQSideFctn )
227 AliHBTQSideResolVsQSideFctn::
228 AliHBTQSideResolVsQSideFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
229 Int_t nYbins, Double_t maxYval, Double_t minYval):
230 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
233 Rename("QSideResolVsQSide","Q_{Side} Resolution vs. Q_{Side} ");
236 /******************************************************************/
237 /******************************************************************/
238 /******************************************************************/
239 ClassImp( AliHBTQLongResolVsQLongFctn )
241 AliHBTQLongResolVsQLongFctn::
242 AliHBTQLongResolVsQLongFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
243 Int_t nYbins, Double_t maxYval, Double_t minYval):
244 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
247 Rename("QLongResolVsQLong","Q_{Long} Resolution vs. Q_{Long} ");
252 /******************************************************************/
253 /******************************************************************/
254 /******************************************************************/
256 ClassImp( AliHBTPairThetaResolVsQInvFctn )
258 AliHBTPairThetaResolVsQInvFctn::
259 AliHBTPairThetaResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
260 Int_t nYbins, Double_t maxYval, Double_t minYval):
261 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
264 Rename("PairThetaResolVsQInv","Pair Theta Angle Resolution vs. Q_{Inv} ");
266 /******************************************************************/
268 void AliHBTPairThetaResolVsQInvFctn::GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
270 //returns Pair Theta sim - Pair Theta rec for y
272 Double_t partTheta = partpair->Particle1()->Theta() - partpair->Particle2()->Theta();
273 Double_t trackTheta = trackpair->Particle1()->Theta() - trackpair->Particle2()->Theta();
274 y = partTheta - trackTheta;
275 x = partpair->GetQInv();
277 /******************************************************************/
278 /******************************************************************/
279 /******************************************************************/
281 ClassImp( AliHBTPairThetaResolVsPairThetaFctn )
283 AliHBTPairThetaResolVsPairThetaFctn::
284 AliHBTPairThetaResolVsPairThetaFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
285 Int_t nYbins, Double_t maxYval, Double_t minYval):
286 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
289 Rename("PairThetaResolVsPairTheta","Pair Theta Angle Resolution vs. Pair Theta ");
291 /******************************************************************/
292 void GetValues(AliHBTPair* trackpair, AliHBTPair* partpair, Double_t& x, Double_t& y)
294 //returns Pair Theta sim - Pair Theta rec for y
295 //returns Pair Theta sim for x
296 Double_t partTheta = partpair->Particle1()->Theta() - partpair->Particle2()->Theta();
297 Double_t trackTheta = trackpair->Particle1()->Theta() - trackpair->Particle2()->Theta();
298 y = partTheta - trackTheta;
299 if (trackTheta < 0.0) y = -y;
302 /******************************************************************/
303 /******************************************************************/
304 /******************************************************************/
306 ClassImp( AliHBTPairPhiResolVsQInvFctn )
308 AliHBTPairPhiResolVsQInvFctn::
309 AliHBTPairPhiResolVsQInvFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
310 Int_t nYbins, Double_t maxYval, Double_t minYval):
311 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
314 Rename("PairPhiResolVsQInv","Pair Phi Angle Resolution vs. Q_{Inv} ");
316 /******************************************************************/
317 /******************************************************************/
318 /******************************************************************/
321 ClassImp( AliHBTPairThetaResolVsKtFctn )
323 AliHBTPairThetaResolVsKtFctn::
324 AliHBTPairThetaResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
325 Int_t nYbins, Double_t maxYval, Double_t minYval):
326 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
329 Rename("PairThetaResolVsKt","Pair Theta Angle Resolution vs. K_{t} ");
331 /******************************************************************/
332 /******************************************************************/
333 /******************************************************************/
335 ClassImp( AliHBTPairPhiResolVsKtFctn )
337 AliHBTPairPhiResolVsKtFctn::
338 AliHBTPairPhiResolVsKtFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
339 Int_t nYbins, Double_t maxYval, Double_t minYval):
340 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
343 Rename("PairPhiResolVsKt","Pair Phi Angle Resolution vs. K_{t} ");
345 /******************************************************************/
346 /******************************************************************/
347 /******************************************************************/
350 ClassImp( AliHBTPairPhiResolVsPairPhiFctn )
352 AliHBTPairPhiResolVsPairPhiFctn::
353 AliHBTPairPhiResolVsPairPhiFctn(Int_t nXbins, Double_t maxXval, Double_t minXval,
354 Int_t nYbins, Double_t maxYval, Double_t minYval):
355 AliHBTTwoPairFctn2D(nXbins,maxXval,minXval,nYbins,maxYval,minYval)
358 Rename("PairPhiResolVsPairPhi","Pair Phi Angle Resolution vs. Pair Phi ");
361 /******************************************************************/
362 /******************************************************************/
363 /******************************************************************/