]>
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 | ||
78d7c6d3 | 56 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 57 | { |
58 | return (partparticle->Px()-trackparticle->Px()) ; | |
59 | } | |
0fd4140b | 60 | ClassDef(AliHBTMonPxResolutionFctn,1) |
a57afe91 | 61 | }; |
62 | /***********************************************************************/ | |
63 | class AliHBTMonPyResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
64 | { | |
65 | public: | |
66 | AliHBTMonPyResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
67 | virtual ~AliHBTMonPyResolutionFctn(){} | |
68 | ||
78d7c6d3 | 69 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 70 | { |
71 | return (partparticle->Py()-trackparticle->Py()) ; | |
72 | } | |
0fd4140b | 73 | ClassDef(AliHBTMonPyResolutionFctn,1) |
a57afe91 | 74 | }; |
75 | /***********************************************************************/ | |
76 | class AliHBTMonPzResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
77 | { | |
78 | public: | |
79 | AliHBTMonPzResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
80 | virtual ~AliHBTMonPzResolutionFctn(){} | |
81 | ||
78d7c6d3 | 82 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 83 | { |
84 | return (partparticle->Pz()-trackparticle->Pz()) ; | |
85 | } | |
0fd4140b | 86 | ClassDef(AliHBTMonPzResolutionFctn,1) |
a57afe91 | 87 | }; |
88 | /***********************************************************************/ | |
89 | class AliHBTMonPResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
90 | { | |
91 | public: | |
92 | AliHBTMonPResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
93 | virtual ~AliHBTMonPResolutionFctn(){} | |
94 | ||
78d7c6d3 | 95 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 96 | { |
97 | return (partparticle->P()-trackparticle->P()) ; | |
98 | } | |
0fd4140b | 99 | ClassDef(AliHBTMonPResolutionFctn,1) |
a57afe91 | 100 | }; |
101 | /***********************************************************************/ | |
102 | class AliHBTMonPtResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
103 | { | |
104 | public: | |
105 | AliHBTMonPtResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
106 | virtual ~AliHBTMonPtResolutionFctn(){} | |
107 | ||
78d7c6d3 | 108 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 109 | { |
110 | return (partparticle->Pt()-trackparticle->Pt()) ; | |
111 | } | |
0fd4140b | 112 | ClassDef(AliHBTMonPtResolutionFctn,1) |
a57afe91 | 113 | }; |
114 | /***********************************************************************/ | |
115 | /***********************************************************************/ | |
116 | /***********************************************************************/ | |
117 | class AliHBTMonPxResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
118 | { | |
119 | public: | |
120 | AliHBTMonPxResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
121 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
122 | virtual ~AliHBTMonPxResolutionVsPtFctn(){} | |
78d7c6d3 | 123 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 124 | { |
125 | x = partparticle->Pt(); | |
126 | y = partparticle->Px()-trackparticle->Px(); | |
127 | } | |
0fd4140b | 128 | ClassDef(AliHBTMonPxResolutionVsPtFctn,1) |
a57afe91 | 129 | }; |
130 | /***********************************************************************/ | |
131 | class AliHBTMonPyResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
132 | { | |
133 | public: | |
134 | AliHBTMonPyResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
135 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
136 | virtual ~AliHBTMonPyResolutionVsPtFctn(){} | |
78d7c6d3 | 137 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 138 | { |
139 | x = partparticle->Pt(); | |
140 | y = partparticle->Py()-trackparticle->Py(); | |
141 | } | |
0fd4140b | 142 | ClassDef(AliHBTMonPyResolutionVsPtFctn,1) |
a57afe91 | 143 | }; |
144 | /***********************************************************************/ | |
145 | class AliHBTMonPzResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
146 | { | |
147 | public: | |
148 | AliHBTMonPzResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
149 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
150 | virtual ~AliHBTMonPzResolutionVsPtFctn(){} | |
78d7c6d3 | 151 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 152 | { |
153 | x = partparticle->Pt(); | |
154 | y = partparticle->Pz()-trackparticle->Pz(); | |
155 | } | |
0fd4140b | 156 | ClassDef(AliHBTMonPzResolutionVsPtFctn,1) |
a57afe91 | 157 | }; |
158 | /***********************************************************************/ | |
159 | class AliHBTMonPResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
160 | { | |
161 | public: | |
162 | AliHBTMonPResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
163 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
164 | virtual ~AliHBTMonPResolutionVsPtFctn(){} | |
78d7c6d3 | 165 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 166 | { |
167 | x = partparticle->Pt(); | |
168 | y = partparticle->P()-trackparticle->P(); | |
169 | } | |
170 | protected: | |
171 | private: | |
a57afe91 | 172 | ClassDef(AliHBTMonPResolutionVsPtFctn,1) |
173 | }; | |
174 | /***********************************************************************/ | |
175 | class AliHBTMonPtResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
176 | { | |
177 | public: | |
178 | AliHBTMonPtResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
179 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
180 | virtual ~AliHBTMonPtResolutionVsPtFctn(){} | |
78d7c6d3 | 181 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 182 | { |
183 | x = partparticle->Pt(); | |
184 | y = partparticle->Pt()-trackparticle->Pt(); | |
185 | } | |
0fd4140b | 186 | ClassDef(AliHBTMonPtResolutionVsPtFctn,1) |
a57afe91 | 187 | }; |
188 | /***********************************************************************/ | |
189 | /***********************************************************************/ | |
190 | /***********************************************************************/ | |
191 | /***********************************************************************/ | |
192 | class AliHBTMonPhiResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
193 | { | |
194 | public: | |
195 | AliHBTMonPhiResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
196 | virtual ~AliHBTMonPhiResolutionFctn(){} | |
197 | ||
78d7c6d3 | 198 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 199 | { |
200 | return (partparticle->Phi()-trackparticle->Phi()) ; | |
201 | } | |
0fd4140b | 202 | ClassDef(AliHBTMonPhiResolutionFctn,1) |
a57afe91 | 203 | }; |
204 | /***********************************************************************/ | |
205 | class AliHBTMonThetaResolutionFctn: public AliHBTMonTwoParticleFctn1D | |
206 | { | |
207 | public: | |
208 | AliHBTMonThetaResolutionFctn(Int_t nbins = 200, Double_t maxXval = 0.05, Double_t minXval = -0.05); | |
209 | virtual ~AliHBTMonThetaResolutionFctn(){} | |
210 | ||
78d7c6d3 | 211 | Double_t GetValue(AliVAODParticle * trackparticle,AliVAODParticle * partparticle) const |
a57afe91 | 212 | { |
213 | return (partparticle->Theta()-trackparticle->Theta()) ; | |
214 | } | |
0fd4140b | 215 | ClassDef(AliHBTMonThetaResolutionFctn,1) |
a57afe91 | 216 | }; |
217 | /***********************************************************************/ | |
218 | /***********************************************************************/ | |
219 | class AliHBTMonPhiResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
220 | { | |
221 | public: | |
0fd4140b | 222 | AliHBTMonPhiResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = 0.0, |
a57afe91 | 223 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); |
224 | virtual ~AliHBTMonPhiResolutionVsPtFctn(){} | |
78d7c6d3 | 225 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 226 | { |
227 | x = partparticle->Pt(); | |
228 | y = partparticle->Phi()-trackparticle->Phi(); | |
229 | } | |
0fd4140b | 230 | ClassDef(AliHBTMonPhiResolutionVsPtFctn,1) |
231 | }; | |
232 | /***********************************************************************/ | |
233 | class AliHBTMonPhiResolutionVsPhiFctn: public AliHBTMonTwoParticleFctn2D | |
234 | { | |
235 | public: | |
236 | AliHBTMonPhiResolutionVsPhiFctn(Int_t nXbins = 200, Double_t maxXval = TMath::TwoPi(), Double_t minXval = 0.0, | |
237 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
238 | virtual ~AliHBTMonPhiResolutionVsPhiFctn(){} | |
78d7c6d3 | 239 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
0fd4140b | 240 | { |
241 | x = partparticle->Phi(); | |
242 | y = partparticle->Phi()-trackparticle->Phi(); | |
243 | } | |
244 | ClassDef(AliHBTMonPhiResolutionVsPhiFctn,1) | |
a57afe91 | 245 | }; |
246 | /***********************************************************************/ | |
247 | class AliHBTMonThetaResolutionVsPtFctn: public AliHBTMonTwoParticleFctn2D | |
248 | { | |
249 | public: | |
250 | AliHBTMonThetaResolutionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1, | |
251 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
252 | virtual ~AliHBTMonThetaResolutionVsPtFctn(){} | |
78d7c6d3 | 253 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
a57afe91 | 254 | { |
255 | x = partparticle->Pt(); | |
256 | y = partparticle->Theta()-trackparticle->Theta(); | |
257 | } | |
0fd4140b | 258 | ClassDef(AliHBTMonThetaResolutionVsPtFctn,1) |
a57afe91 | 259 | }; |
0fd4140b | 260 | |
261 | /***********************************************************************/ | |
262 | class AliHBTMonThetaResolutionVsThetaFctn: public AliHBTMonTwoParticleFctn2D | |
263 | { | |
264 | public: | |
265 | AliHBTMonThetaResolutionVsThetaFctn(Int_t nXbins = 200, Double_t maxXval = TMath::PiOver2(), Double_t minXval = -TMath::PiOver2(), | |
266 | Int_t nYbins = 200, Double_t maxYval = 0.05, Double_t minYval =-0.05); | |
267 | virtual ~AliHBTMonThetaResolutionVsThetaFctn(){} | |
78d7c6d3 | 268 | void GetValues(AliVAODParticle* trackparticle, AliVAODParticle* partparticle, Double_t& x, Double_t& y) const |
0fd4140b | 269 | { |
270 | y = partparticle->Theta()-trackparticle->Theta(); | |
271 | x = partparticle->Theta(); | |
272 | } | |
273 | ClassDef(AliHBTMonThetaResolutionVsThetaFctn,1) | |
274 | }; | |
275 | /***********************************************************************/ | |
a57afe91 | 276 | /***********************************************************************/ |
277 | /***********************************************************************/ | |
278 | /***********************************************************************/ | |
279 | /***********************************************************************/ | |
280 | /***********************************************************************/ | |
281 | /***********************************************************************/ | |
282 | /***********************************************************************/ | |
283 | /***********************************************************************/ | |
284 | /***********************************************************************/ | |
285 | ||
286 | #endif |