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