]>
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: | |
181 | public: | |
182 | ClassDef(AliHBTMonPResolutionVsPtFctn,1) | |
183 | }; | |
184 | /***********************************************************************/ | |
185 | class AliHBTMonPtResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
186 | { | |
187 | public: | |
188 | AliHBTMonPtResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
189 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
190 | virtual ~AliHBTMonPtResolutionVsPtFctn(){} | |
191 | TH1* GetResult(){return fResult;} | |
192 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
193 | { | |
194 | x = partparticle->Pt(); | |
195 | y = partparticle->Pt()-trackparticle->Pt(); | |
196 | } | |
0fd4140b | 197 | ClassDef(AliHBTMonPtResolutionVsPtFctn,1) |
a57afe91 | 198 | }; |
199 | /***********************************************************************/ | |
200 | /***********************************************************************/ | |
201 | /***********************************************************************/ | |
202 | /***********************************************************************/ | |
203 | class AliHBTMonPhiResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
204 | { | |
205 | public: | |
206 | AliHBTMonPhiResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
207 | virtual ~AliHBTMonPhiResolutionFctn(){} | |
208 | ||
209 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
210 | { | |
211 | return (partparticle->Phi()-trackparticle->Phi()) ; | |
212 | } | |
213 | TH1* GetResult(){return fResult;} | |
0fd4140b | 214 | ClassDef(AliHBTMonPhiResolutionFctn,1) |
a57afe91 | 215 | }; |
216 | /***********************************************************************/ | |
217 | class AliHBTMonThetaResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
218 | { | |
219 | public: | |
220 | AliHBTMonThetaResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
221 | virtual ~AliHBTMonThetaResolutionFctn(){} | |
222 | ||
223 | Double_t GetValue(AliHBTParticle * trackparticle,AliHBTParticle * partparticle) | |
224 | { | |
225 | return (partparticle->Theta()-trackparticle->Theta()) ; | |
226 | } | |
227 | TH1* GetResult(){return fResult;} | |
0fd4140b | 228 | ClassDef(AliHBTMonThetaResolutionFctn,1) |
a57afe91 | 229 | }; |
230 | /***********************************************************************/ | |
231 | /***********************************************************************/ | |
232 | class AliHBTMonPhiResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
233 | { | |
234 | public: | |
0fd4140b | 235 | AliHBTMonPhiResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = 0.0, |
a57afe91 | 236 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); |
237 | virtual ~AliHBTMonPhiResolutionVsPtFctn(){} | |
238 | TH1* GetResult(){return fResult;} | |
239 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
240 | { | |
241 | x = partparticle->Pt(); | |
242 | y = partparticle->Phi()-trackparticle->Phi(); | |
243 | } | |
0fd4140b | 244 | ClassDef(AliHBTMonPhiResolutionVsPtFctn,1) |
245 | }; | |
246 | /***********************************************************************/ | |
247 | class AliHBTMonPhiResolutionVsPhiFctn: public AliHBTMonTwoParticleFctn2D | |
248 | { | |
249 | public: | |
250 | AliHBTMonPhiResolutionVsPhiFctn(Int_t nXbins = 200, Double_t maxXval = TMath::TwoPi(), Double_t minXval = 0.0, | |
251 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
252 | virtual ~AliHBTMonPhiResolutionVsPhiFctn(){} | |
253 | TH1* GetResult(){return fResult;} | |
254 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
255 | { | |
256 | x = partparticle->Phi(); | |
257 | y = partparticle->Phi()-trackparticle->Phi(); | |
258 | } | |
259 | ClassDef(AliHBTMonPhiResolutionVsPhiFctn,1) | |
a57afe91 | 260 | }; |
261 | /***********************************************************************/ | |
262 | class AliHBTMonThetaResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
263 | { | |
264 | public: | |
265 | AliHBTMonThetaResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
266 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
267 | virtual ~AliHBTMonThetaResolutionVsPtFctn(){} | |
268 | TH1* GetResult(){return fResult;} | |
269 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
270 | { | |
271 | x = partparticle->Pt(); | |
272 | y = partparticle->Theta()-trackparticle->Theta(); | |
273 | } | |
0fd4140b | 274 | ClassDef(AliHBTMonThetaResolutionVsPtFctn,1) |
a57afe91 | 275 | }; |
0fd4140b | 276 | |
277 | /***********************************************************************/ | |
278 | class AliHBTMonThetaResolutionVsThetaFctn: public AliHBTMonTwoParticleFctn2D | |
279 | { | |
280 | public: | |
281 | AliHBTMonThetaResolutionVsThetaFctn(Int_t nXbins = 200, Double_t maxXval = TMath::PiOver2(), Double_t minXval = -TMath::PiOver2(), | |
282 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
283 | virtual ~AliHBTMonThetaResolutionVsThetaFctn(){} | |
284 | TH1* GetResult(){return fResult;} | |
285 | void GetValues(AliHBTParticle* trackparticle, AliHBTParticle* partparticle, Double_t& x, Double_t& y) | |
286 | { | |
287 | y = partparticle->Theta()-trackparticle->Theta(); | |
288 | x = partparticle->Theta(); | |
289 | } | |
290 | ClassDef(AliHBTMonThetaResolutionVsThetaFctn,1) | |
291 | }; | |
292 | /***********************************************************************/ | |
a57afe91 | 293 | /***********************************************************************/ |
294 | /***********************************************************************/ | |
295 | /***********************************************************************/ | |
296 | /***********************************************************************/ | |
297 | /***********************************************************************/ | |
298 | /***********************************************************************/ | |
299 | /***********************************************************************/ | |
300 | /***********************************************************************/ | |
301 | /***********************************************************************/ | |
302 | ||
303 | #endif |