- Setting Z positions of the tracking chamber to values given in Alain TOURNAIRE...
[u/mrichter/AliRoot.git] / HBTAN / AliHBTMonDistributionFctns.h
CommitLineData
58ee8590 1#ifndef ALIHBTMONDISTRIBUTIONFCTNS_H
2#define ALIHBTMONDISTRIBUTIONFCTNS_H
3//______________________________________________________________
4////////////////////////////////////////////////////////////////
5//
6// class AliHBTMonPxDistributionFctn;
7// class AliHBTMonPxDistributionVsPtFctn;
8// class AliHBTMonPyDistributionFctn;
9// class AliHBTMonPyDistributionVsPtFctn;
10// class AliHBTMonPzDistributionFctn;
11// class AliHBTMonPzDistributionVsPtFctn;
12// class AliHBTMonPDistributionFctn;
13// class AliHBTMonPDistributionVsPtFctn;
14// class AliHBTMonPtDistributionFctn;
15// class AliHBTMonVxDistributionFctn;
16// class AliHBTMonVyDistributionFctn;
17// class AliHBTMonVzDistributionFctn;
18// class AliHBTMonRDistributionFctn;
19// class AliHBTMonVyDistributionVsVxFctn;
20// class AliHBTMonRtDistributionVsVzFctn;
21//
a57afe91 22// added by Zbigniew.Chajecki@cern.ch
58ee8590 23// this classes create distribution functions of particle momentum
24//
25/////////////////////////////////////////////////////////////////
a57afe91 26
27class AliHBTMonPxDistributionFctn;
28class AliHBTMonPxDistributionVsPtFctn;
29class AliHBTMonPyDistributionFctn;
30class AliHBTMonPyDistributionVsPtFctn;
31class AliHBTMonPzDistributionFctn;
32class AliHBTMonPzDistributionVsPtFctn;
33class AliHBTMonPDistributionFctn;
34class AliHBTMonPDistributionVsPtFctn;
35class AliHBTMonPtDistributionFctn;
36
88cb7938 37class AliHBTMonVxDistributionFctn;
38class AliHBTMonVyDistributionFctn;
39class AliHBTMonVzDistributionFctn;
40class AliHBTMonRDistributionFctn;
41
42class AliHBTMonVyDistributionVsVxFctn;
43class AliHBTMonRtDistributionVsVzFctn;
44
a57afe91 45#include "AliHBTMonitorFunction.h"
46/***********************************************************************/
47/***********************************************************************/
48/*************************************************************************************/
49
50class AliHBTMonPxDistributionFctn: public AliHBTMonOneParticleFctn1D
51{
52 public:
53 AliHBTMonPxDistributionFctn(Int_t nbins = 200, Double_t maxXval = 1.4, Double_t minXval = -1.4);
54 virtual ~AliHBTMonPxDistributionFctn(){};
a57afe91 55 protected:
78d7c6d3 56 Double_t GetValue(AliVAODParticle * particle) const;
58ee8590 57 ClassDef(AliHBTMonPxDistributionFctn,1)
a57afe91 58};
59/*************************************************************************************/
60
61class AliHBTMonPyDistributionFctn: public AliHBTMonOneParticleFctn1D
62{
63 public:
64 AliHBTMonPyDistributionFctn(Int_t nbins = 200, Double_t maxXval = 1.4, Double_t minXval = -1.4);
65 virtual ~AliHBTMonPyDistributionFctn(){};
a57afe91 66 protected:
78d7c6d3 67 Double_t GetValue(AliVAODParticle * particle) const { return particle->Py();}
58ee8590 68 ClassDef(AliHBTMonPyDistributionFctn,1)
a57afe91 69};
70/*************************************************************************************/
71
72class AliHBTMonPzDistributionFctn: public AliHBTMonOneParticleFctn1D
73{
74 public:
75 AliHBTMonPzDistributionFctn(Int_t nbins = 200, Double_t maxXval = 1.4, Double_t minXval = -1.4);
76 virtual ~AliHBTMonPzDistributionFctn(){};
a57afe91 77 protected:
78d7c6d3 78 Double_t GetValue(AliVAODParticle * particle) const { return particle->Pz();}
58ee8590 79 ClassDef(AliHBTMonPzDistributionFctn,1)
a57afe91 80
81};
82/*************************************************************************************/
83
84class AliHBTMonPDistributionFctn: public AliHBTMonOneParticleFctn1D
85{
86 public:
87 AliHBTMonPDistributionFctn(Int_t nbins = 200, Double_t maxXval = 1.4, Double_t minXval = 0.0);
88 virtual ~AliHBTMonPDistributionFctn(){};
a57afe91 89 protected:
78d7c6d3 90 Double_t GetValue(AliVAODParticle * particle) const { return particle->P();}
58ee8590 91 ClassDef(AliHBTMonPDistributionFctn,1)
a57afe91 92
93};
94/*************************************************************************************/
95
96class AliHBTMonPtDistributionFctn: public AliHBTMonOneParticleFctn1D
97{
98 public:
99 AliHBTMonPtDistributionFctn(Int_t nbins = 200, Double_t maxXval = 1.4, Double_t minXval = 0.0);
100 virtual ~AliHBTMonPtDistributionFctn(){};
a57afe91 101 protected:
78d7c6d3 102 Double_t GetValue(AliVAODParticle * particle) const { return particle->Pt();}
58ee8590 103 ClassDef(AliHBTMonPtDistributionFctn,1)
a57afe91 104};
105
106/***********************************************************************/
107class AliHBTMonPxDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
108 {
109 public:
110 AliHBTMonPxDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
111 Int_t nYbins = 200, Double_t maxYval = 1.4, Double_t minYval =-1.4);
112 virtual ~AliHBTMonPxDistributionVsPtFctn(){}
113
78d7c6d3 114 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 115 {
58ee8590 116 x = partparticle->Pt();
117 y = partparticle->Px();
a57afe91 118 }
58ee8590 119 ClassDef(AliHBTMonPxDistributionVsPtFctn,1)
a57afe91 120 };
121
122/***********************************************************************/
123class AliHBTMonPyDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
124 {
125 public:
126 AliHBTMonPyDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
127 Int_t nYbins = 200, Double_t maxYval = 1.4, Double_t minYval =-1.4);
128 virtual ~AliHBTMonPyDistributionVsPtFctn(){}
129
78d7c6d3 130 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 131 {
132 x = partparticle->Pt();
133 y = partparticle->Py();
134 }
58ee8590 135 ClassDef(AliHBTMonPyDistributionVsPtFctn,1)
a57afe91 136 };
137/***********************************************************************/
138class AliHBTMonPzDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
139 {
140 public:
141 AliHBTMonPzDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
142 Int_t nYbins = 200, Double_t maxYval = 1.4, Double_t minYval =-1.4);
143 virtual ~AliHBTMonPzDistributionVsPtFctn(){}
144
78d7c6d3 145 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 146 {
147 x = partparticle->Pt();
148 y = partparticle->Pz();
149 }
58ee8590 150 ClassDef(AliHBTMonPzDistributionVsPtFctn,1)
a57afe91 151 };
152
153/***********************************************************************/
154class AliHBTMonPDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
155 {
156 public:
157 AliHBTMonPDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
158 Int_t nYbins = 200, Double_t maxYval = 1.4, Double_t minYval =-1.4);
159 virtual ~AliHBTMonPDistributionVsPtFctn(){}
160
78d7c6d3 161 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 162 {
163 x = partparticle->Pt();
164 y = partparticle->P();
165 }
58ee8590 166 ClassDef(AliHBTMonPDistributionVsPtFctn,1)
a57afe91 167 };
168
169/***********************************************************************/
170/***********************************************************************/
171/***********************************************************************/
172/***********************************************************************/
173
174class AliHBTMonPhiDistributionFctn: public AliHBTMonOneParticleFctn1D
175{
176 public:
177 AliHBTMonPhiDistributionFctn(Int_t nbins = 200, Double_t maxXval = 3.14, Double_t minXval = 0.0);
178 virtual ~AliHBTMonPhiDistributionFctn(){};
a57afe91 179 protected:
78d7c6d3 180 Double_t GetValue(AliVAODParticle * particle) const { return particle->Phi();}
58ee8590 181 ClassDef(AliHBTMonPhiDistributionFctn,1)
a57afe91 182};
183
184/***********************************************************************/
185class AliHBTMonThetaDistributionFctn: public AliHBTMonOneParticleFctn1D
186{
187 public:
188 AliHBTMonThetaDistributionFctn(Int_t nbins = 200, Double_t maxXval = 3.14, Double_t minXval = 0.0);
189 virtual ~AliHBTMonThetaDistributionFctn(){};
a57afe91 190 protected:
78d7c6d3 191 Double_t GetValue(AliVAODParticle * particle) const { return particle->Theta();}
58ee8590 192 ClassDef(AliHBTMonThetaDistributionFctn,1)
a57afe91 193
194};
195/***********************************************************************/
196/***********************************************************************/
197class AliHBTMonPhiDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
198 {
199 public:
200 AliHBTMonPhiDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
201 Int_t nYbins = 200, Double_t maxYval = 3.14, Double_t minYval =0.0);
202 virtual ~AliHBTMonPhiDistributionVsPtFctn(){}
203
78d7c6d3 204 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 205 {
206 x = partparticle->Pt();
207 y = partparticle->Phi();
208 }
58ee8590 209 ClassDef(AliHBTMonPhiDistributionVsPtFctn,1)
a57afe91 210 };
211
212/***********************************************************************/
213class AliHBTMonThetaDistributionVsPtFctn: public AliHBTMonOneParticleFctn2D
88cb7938 214{
a57afe91 215 public:
216 AliHBTMonThetaDistributionVsPtFctn(Int_t nXbins = 200, Double_t maxXval = 1.4, Double_t minXval = -0.1,
217 Int_t nYbins = 200, Double_t maxYval = 3.14, Double_t minYval =0.0);
218 virtual ~AliHBTMonThetaDistributionVsPtFctn(){}
219
78d7c6d3 220 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
a57afe91 221 {
222 x = partparticle->Pt();
223 y = partparticle->Theta();
224 }
a57afe91 225 ClassDef(AliHBTMonThetaDistributionVsPtFctn,1)
226 };
227
228/***********************************************************************/
88cb7938 229class AliHBTMonVxDistributionFctn: public AliHBTMonOneParticleFctn1D
230{
231 public:
232 AliHBTMonVxDistributionFctn(Int_t nbins = 200, Double_t maxXval = 500, Double_t minXval = -500);
233 virtual ~AliHBTMonVxDistributionFctn(){};
88cb7938 234 protected:
78d7c6d3 235 Double_t GetValue(AliVAODParticle * particle) const{ return particle->Vx();}
88cb7938 236 ClassDef(AliHBTMonVxDistributionFctn,1)
237};
a57afe91 238/***********************************************************************/
88cb7938 239class AliHBTMonVyDistributionFctn: public AliHBTMonOneParticleFctn1D
240{
241 public:
242 AliHBTMonVyDistributionFctn(Int_t nbins = 200, Double_t maxXval = 500, Double_t minXval = -500);
243 virtual ~AliHBTMonVyDistributionFctn(){};
88cb7938 244 protected:
78d7c6d3 245 Double_t GetValue(AliVAODParticle * particle) const { return particle->Vy();}
88cb7938 246 ClassDef(AliHBTMonVyDistributionFctn,1)
247};
248/***********************************************************************/
249class AliHBTMonVzDistributionFctn: public AliHBTMonOneParticleFctn1D
250{
251 public:
252 AliHBTMonVzDistributionFctn(Int_t nbins = 200, Double_t maxXval = 300, Double_t minXval = -300);
253 virtual ~AliHBTMonVzDistributionFctn(){};
88cb7938 254 protected:
78d7c6d3 255 Double_t GetValue(AliVAODParticle * particle) const { return particle->Vz();}
88cb7938 256 ClassDef(AliHBTMonVzDistributionFctn,1)
257};
258/***********************************************************************/
259class AliHBTMonRDistributionFctn: public AliHBTMonOneParticleFctn1D
260{
261 public:
262 AliHBTMonRDistributionFctn(Int_t nbins = 200, Double_t maxXval = 500, Double_t minXval = -500);
263 virtual ~AliHBTMonRDistributionFctn(){};
88cb7938 264 protected:
78d7c6d3 265 Double_t GetValue(AliVAODParticle * p) const { return TMath::Sqrt(p->Vx()*p->Vx() + p->Vy()*p->Vy() + p->Vz()*p->Vz());}
88cb7938 266 ClassDef(AliHBTMonRDistributionFctn,1)
267};
268
269/***********************************************************************/
270class AliHBTMonVyDistributionVsVxFctn: public AliHBTMonOneParticleFctn2D
271{
272 public:
273 AliHBTMonVyDistributionVsVxFctn(Int_t nXbins = 200, Double_t maxXval = 10.0, Double_t minXval = -10.0,
274 Int_t nYbins = 200, Double_t maxYval = 10.0, Double_t minYval =-10.0);
275 virtual ~AliHBTMonVyDistributionVsVxFctn(){}
276
78d7c6d3 277 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
88cb7938 278 {
279 x = partparticle->Vx();
280 y = partparticle->Vy();
281 }
88cb7938 282 ClassDef(AliHBTMonVyDistributionVsVxFctn,1)
283 };
284
285
286class AliHBTMonRtDistributionVsVzFctn: public AliHBTMonOneParticleFctn2D
287{
288 public:
289 AliHBTMonRtDistributionVsVzFctn(Int_t nXbins = 200, Double_t maxXval = 10.0, Double_t minXval = -10.0,
290 Int_t nYbins = 100, Double_t maxYval = 10.0, Double_t minYval = 0.0);
291 virtual ~AliHBTMonRtDistributionVsVzFctn(){}
292
78d7c6d3 293 void GetValues(AliVAODParticle* partparticle, Double_t& x, Double_t& y) const
88cb7938 294 {
295 x = partparticle->Vz();
296 y = TMath::Hypot(partparticle->Vx(),partparticle->Vy());
297 }
88cb7938 298 ClassDef(AliHBTMonRtDistributionVsVzFctn,1)
299 };
300
a57afe91 301/***********************************************************************/
302/***********************************************************************/
a57afe91 303
304#endif