1 #ifndef ALIMONPXRESOLUTIONVSPTFCTN_H
2 #define ALIMONPXRESOLUTIONVSPTFCTN_H
4 // added by Zbigniew.Chajecki@cern.ch
5 // this classes create resolution functions of particle momentum
7 class AliHBTMonPxResolutionFctn;
8 class AliHBTMonPyResolutionFctn;
9 class AliHBTMonPzResolutionFctn;
10 class AliHBTMonPResolutionFctn;
11 class AliHBTMonPtResolutionFctn;
12 class AliHBTMonPhiResolutionFctn;
13 class AliHBTMonThetaResolutionFctn;
15 class AliHBTMonPxResolutionVsPtFctn;
16 class AliHBTMonPyResolutionVsPtFctn;
17 class AliHBTMonPzResolutionVsPtFctn;
18 class AliHBTMonPResolutionVsPtFctn;
19 class AliHBTMonPtResolutionVsPtFctn;
20 class AliHBTMonPhiResolutionVsPtFctn;
21 class AliHBTMonThetaResolutionVsPtFctn;
24 #include "AliHBTMonitorFunction.h"
25 /***********************************************************************/
26 /***********************************************************************/
27 /***********************************************************************/
28 class AliHBTMonPxResolutionFctn: public AliHBTMonTwoParticleFctn1D
31 AliHBTMonPxResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
32 virtual ~AliHBTMonPxResolutionFctn(){}
34 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
36 return (partparticle->Px()-trackparticle->Px()) ;
38 TH1* GetResult(){return fResult;}
42 ClassDef(AliHBTMonPxResolutionFctn,1)
44 /***********************************************************************/
45 class AliHBTMonPyResolutionFctn: public AliHBTMonTwoParticleFctn1D
48 AliHBTMonPyResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
49 virtual ~AliHBTMonPyResolutionFctn(){}
51 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
53 return (partparticle->Py()-trackparticle->Py()) ;
55 TH1* GetResult(){return fResult;}
59 ClassDef(AliHBTMonPyResolutionFctn,1)
61 /***********************************************************************/
62 class AliHBTMonPzResolutionFctn: public AliHBTMonTwoParticleFctn1D
65 AliHBTMonPzResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
66 virtual ~AliHBTMonPzResolutionFctn(){}
68 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
70 return (partparticle->Pz()-trackparticle->Pz()) ;
72 TH1* GetResult(){return fResult;}
76 ClassDef(AliHBTMonPzResolutionFctn,1)
78 /***********************************************************************/
79 class AliHBTMonPResolutionFctn: public AliHBTMonTwoParticleFctn1D
82 AliHBTMonPResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
83 virtual ~AliHBTMonPResolutionFctn(){}
85 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
87 return (partparticle->P()-trackparticle->P()) ;
89 TH1* GetResult(){return fResult;}
93 ClassDef(AliHBTMonPResolutionFctn,1)
95 /***********************************************************************/
96 class AliHBTMonPtResolutionFctn: public AliHBTMonTwoParticleFctn1D
99 AliHBTMonPtResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
100 virtual ~AliHBTMonPtResolutionFctn(){}
102 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
104 return (partparticle->Pt()-trackparticle->Pt()) ;
106 TH1* GetResult(){return fResult;}
110 ClassDef(AliHBTMonPtResolutionFctn,1)
112 /***********************************************************************/
113 /***********************************************************************/
114 /***********************************************************************/
115 class AliHBTMonPxResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
118 AliHBTMonPxResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
119 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
120 virtual ~AliHBTMonPxResolutionVsPtFctn(){}
121 TH1* GetResult(){return fResult;}
122 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
124 x = partparticle->Pt();
125 y = partparticle->Px()-trackparticle->Px();
130 ClassDef(AliHBTMonPxResolutionVsPtFctn,1)
132 /***********************************************************************/
133 class AliHBTMonPyResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
136 AliHBTMonPyResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
137 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
138 virtual ~AliHBTMonPyResolutionVsPtFctn(){}
139 TH1* GetResult(){return fResult;}
140 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
142 x = partparticle->Pt();
143 y = partparticle->Py()-trackparticle->Py();
148 ClassDef(AliHBTMonPyResolutionVsPtFctn,1)
150 /***********************************************************************/
151 class AliHBTMonPzResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
154 AliHBTMonPzResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
155 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
156 virtual ~AliHBTMonPzResolutionVsPtFctn(){}
157 TH1* GetResult(){return fResult;}
158 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
160 x = partparticle->Pt();
161 y = partparticle->Pz()-trackparticle->Pz();
166 ClassDef(AliHBTMonPzResolutionVsPtFctn,1)
168 /***********************************************************************/
169 class AliHBTMonPResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
172 AliHBTMonPResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
173 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
174 virtual ~AliHBTMonPResolutionVsPtFctn(){}
175 TH1* GetResult(){return fResult;}
176 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
178 x = partparticle->Pt();
179 y = partparticle->P()-trackparticle->P();
184 ClassDef(AliHBTMonPResolutionVsPtFctn,1)
186 /***********************************************************************/
187 class AliHBTMonPtResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
190 AliHBTMonPtResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
191 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
192 virtual ~AliHBTMonPtResolutionVsPtFctn(){}
193 TH1* GetResult(){return fResult;}
194 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
196 x = partparticle->Pt();
197 y = partparticle->Pt()-trackparticle->Pt();
202 ClassDef(AliHBTMonPtResolutionVsPtFctn,1)
204 /***********************************************************************/
205 /***********************************************************************/
206 /***********************************************************************/
207 /***********************************************************************/
208 class AliHBTMonPhiResolutionFctn: public AliHBTMonTwoParticleFctn1D
211 AliHBTMonPhiResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
212 virtual ~AliHBTMonPhiResolutionFctn(){}
214 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
216 return (partparticle->Phi()-trackparticle->Phi()) ;
218 TH1* GetResult(){return fResult;}
222 ClassDef(AliHBTMonPhiResolutionFctn,1)
224 /***********************************************************************/
225 class AliHBTMonThetaResolutionFctn: public AliHBTMonTwoParticleFctn1D
228 AliHBTMonThetaResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05);
229 virtual ~AliHBTMonThetaResolutionFctn(){}
231 Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle)
233 return (partparticle->Theta()-trackparticle->Theta()) ;
235 TH1* GetResult(){return fResult;}
239 ClassDef(AliHBTMonThetaResolutionFctn,1)
241 /***********************************************************************/
242 /***********************************************************************/
243 class AliHBTMonPhiResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
246 AliHBTMonPhiResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
247 Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05);
248 virtual ~AliHBTMonPhiResolutionVsPtFctn(){}
249 TH1* GetResult(){return fResult;}
250 void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y)
252 x = partparticle->Pt();
253 y = partparticle->Phi()-trackparticle->Phi();
258 ClassDef(AliHBTMonPhiResolutionVsPtFctn,1)
260 /***********************************************************************/
261 class AliHBTMonThetaResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D
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)
270 x = partparticle->Pt();
271 y = partparticle->Theta()-trackparticle->Theta();
276 ClassDef(AliHBTMonThetaResolutionVsPtFctn,1)
278 /***********************************************************************/
279 /***********************************************************************/
280 /***********************************************************************/
281 /***********************************************************************/
282 /***********************************************************************/
283 /***********************************************************************/
284 /***********************************************************************/
285 /***********************************************************************/
286 /***********************************************************************/