]>
Commit | Line | Data |
---|---|---|
becde6ce | 1 | #ifndef ALIHBTPIDPURITYFCTNS_H |
2 | #define ALIHBTPIDPURITYFCTNS_H | |
3 | //_______________________________________________________________________________ | |
4 | ///////////////////////////////////////////////////////////////////////////////// | |
5 | // | |
6 | // class AliHBTMonPIDPurityVsPtFctn; | |
7 | // class AliHBTMonThetaResolutionVsPtFctn; | |
8 | // | |
9 | // file: AliHBTPIDPurityFctns.cxx AliHBTPIDPurityFctns.h | |
10 | // | |
11 | // Caution: On 2D plots on X axis in simulated values | |
12 | // That is contrary to two-particle resolutions where it is reconstructed one | |
13 | // | |
14 | // added by Piotr.Skowronski@cern.ch | |
15 | // | |
16 | // | |
17 | ////////////////////////////////////////////////////////////////////////////////// | |
18 | ||
19 | #include "AliHBTFunction.h" | |
20 | #include "AliHBTMonitorFunction.h" | |
21 | ||
c93e6c76 | 22 | class AliHBTMonPIDPurityVsPtFctn: public AliHBTMonTwoParticleFctn1D, public AliHBTCorrelFunction |
becde6ce | 23 | { |
24 | public: | |
25 | AliHBTMonPIDPurityVsPtFctn(Int_t nbins = 20, Double_t maxXval = 2.0, Double_t minXval = 0.0); | |
26 | virtual ~AliHBTMonPIDPurityVsPtFctn(); | |
27 | void Init(); | |
28 | void Write(); | |
29 | void Rename(const Char_t * name); | |
30 | void Rename(const Char_t * name, const Char_t * title); | |
31 | TH1* GetResult(); | |
78d7c6d3 | 32 | Double_t GetValue(AliVAODParticle * /*track*/,AliVAODParticle * /*part*/) const { return 0.0; } |
33 | void Process(AliVAODParticle * track,AliVAODParticle * part); | |
becde6ce | 34 | protected: |
35 | TH1D* fGood; | |
81b40753 | 36 | TH1D* fAll; |
becde6ce | 37 | ClassDef(AliHBTMonPIDPurityVsPtFctn,1) |
38 | }; | |
39 | /***********************************************************************/ | |
40 | ||
41 | class AliHBTMonPIDContaminationVsPtFctn: public AliHBTMonTwoParticleFctn1D, public AliHBTCorrelFunction | |
42 | { | |
43 | public: | |
44 | AliHBTMonPIDContaminationVsPtFctn(Int_t nbins = 20, Double_t maxXval = 2.0, Double_t minXval = 0.0); | |
45 | virtual ~AliHBTMonPIDContaminationVsPtFctn(); | |
46 | void Init(); | |
47 | void Write(); | |
48 | void Rename(const Char_t * name); | |
49 | void Rename(const Char_t * name, const Char_t * title); | |
50 | TH1* GetResult(); | |
78d7c6d3 | 51 | Double_t GetValue(AliVAODParticle * /*track*/,AliVAODParticle * /*part*/) const { return 0.0; } |
52 | void Process(AliVAODParticle * track,AliVAODParticle * part); | |
becde6ce | 53 | protected: |
54 | TH1D* fWrong; | |
81b40753 | 55 | TH1D* fAll; |
becde6ce | 56 | ClassDef(AliHBTMonPIDContaminationVsPtFctn,1) |
57 | }; | |
58 | /*************************************************************************************/ | |
59 | ||
61763057 | 60 | class AliHBTQInvCorrelFctnPerfectPID: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction |
61 | { | |
62 | //Q Invaraint Correlation Function | |
63 | //1D two particle function | |
64 | //Fills the function only for correctly reconstructed PID | |
65 | //Together with | |
66 | public: | |
67 | AliHBTQInvCorrelFctnPerfectPID(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); | |
68 | virtual ~AliHBTQInvCorrelFctnPerfectPID(){}; | |
69 | void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
70 | void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
71 | TH1* GetResult(); | |
72 | protected: | |
73 | Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* /*partpair*/) const {return trackpair->GetQInv();} | |
74 | private: | |
75 | ClassDef(AliHBTQInvCorrelFctnPerfectPID,1) | |
76 | }; | |
77 | ||
78 | /*************************************************************************************/ | |
79 | ||
80 | class AliHBTWeightQInvCorrelFctnPerfectPID: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction | |
81 | { | |
82 | //Weight Q Invaraint Correlation Function | |
83 | //1D two particle function | |
84 | //Fills the function only for correctly reconstructed PID | |
85 | //Together with regular | |
86 | public: | |
87 | AliHBTWeightQInvCorrelFctnPerfectPID(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); | |
88 | virtual ~AliHBTWeightQInvCorrelFctnPerfectPID(){}; | |
89 | void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
90 | void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
91 | TH1* GetResult(); | |
92 | protected: | |
93 | Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* /*partpair*/) const {return trackpair->GetQInv();} | |
94 | private: | |
95 | ClassDef(AliHBTWeightQInvCorrelFctnPerfectPID,1) | |
96 | }; | |
97 | /*************************************************************************************/ | |
98 | class AliHBTWeightQOutSQideQLongFctnPerfectPID: public AliHBTTwoPairFctn3D, public AliHBTCorrelFunction | |
99 | { | |
100 | ||
101 | public: | |
102 | AliHBTWeightQOutSQideQLongFctnPerfectPID(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0, | |
103 | Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0, | |
104 | Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0); | |
105 | virtual ~AliHBTWeightQOutSQideQLongFctnPerfectPID(){} | |
106 | ||
107 | TH1* GetResult(); | |
108 | void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
109 | void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
110 | ||
111 | protected: | |
112 | void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} | |
113 | ||
114 | ClassDef(AliHBTWeightQOutSQideQLongFctnPerfectPID,1) | |
115 | }; | |
116 | ||
117 | /*************************************************************************************/ | |
118 | class AliHBTQOutSQideQLongFctnPerfectPID: public AliHBTTwoPairFctn3D, public AliHBTCorrelFunction | |
119 | { | |
120 | ||
121 | public: | |
122 | AliHBTQOutSQideQLongFctnPerfectPID(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0, | |
123 | Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0, | |
124 | Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0); | |
125 | virtual ~AliHBTQOutSQideQLongFctnPerfectPID(){} | |
126 | ||
127 | TH1* GetResult(); | |
128 | void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
129 | void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
130 | ||
131 | protected: | |
132 | void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} | |
133 | ||
134 | ClassDef(AliHBTQOutSQideQLongFctnPerfectPID,1) | |
135 | }; | |
136 | ||
137 | ||
138 | /*************************************************************************************/ | |
139 | ||
becde6ce | 140 | class AliHBTPairPIDProbVsQInvFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunction |
141 | { | |
142 | //Q Invaraint Correlation Function | |
143 | //1D two particle function | |
144 | public: | |
145 | AliHBTPairPIDProbVsQInvFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); | |
146 | virtual ~AliHBTPairPIDProbVsQInvFctn(){}; | |
147 | void ProcessSameEventParticles(AliHBTPair* pair); | |
148 | void ProcessDiffEventParticles(AliHBTPair* pair); | |
149 | TH1* GetResult(); | |
150 | protected: | |
a22a56ec | 151 | Double_t GetValue(AliHBTPair * pair) const {return pair->GetQInv();} |
becde6ce | 152 | private: |
153 | ClassDef(AliHBTPairPIDProbVsQInvFctn,1) | |
154 | }; | |
155 | /*************************************************************************************/ | |
1f4ef2d2 | 156 | |
becde6ce | 157 | class AliHBTPairPIDProbVsQOutSQideQLongFctn: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction |
158 | { | |
159 | ||
160 | public: | |
161 | AliHBTPairPIDProbVsQOutSQideQLongFctn(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0, | |
d277b11c | 162 | Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0, |
163 | Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0); | |
becde6ce | 164 | virtual ~AliHBTPairPIDProbVsQOutSQideQLongFctn(){} |
165 | ||
166 | TH1* GetResult(); | |
167 | void ProcessSameEventParticles(AliHBTPair* part); | |
168 | void ProcessDiffEventParticles(AliHBTPair* pair); | |
169 | ||
170 | protected: | |
a22a56ec | 171 | void GetValues(AliHBTPair* /*pair*/, Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} |
becde6ce | 172 | |
173 | ClassDef(AliHBTPairPIDProbVsQOutSQideQLongFctn,1) | |
174 | }; | |
1f4ef2d2 | 175 | /******************************************************************/ |
176 | ||
177 | class AliHBTTwoTrackEffFctnPtThetaPhiPerfectPID: public AliHBTTwoPairFctn3D, public AliHBTCorrelFunction | |
178 | { | |
179 | public: | |
d277b11c | 180 | AliHBTTwoTrackEffFctnPtThetaPhiPerfectPID(Int_t nXbins = 50, Double_t maxXval = 0.3, Double_t minXval = 0.0, |
181 | Int_t nYbins = 50, Double_t maxYval = 0.3, Double_t minYval = 0.0, | |
182 | Int_t nZbins = 50, Double_t maxZval = 0.3, Double_t minZval = 0.0); | |
1f4ef2d2 | 183 | virtual ~AliHBTTwoTrackEffFctnPtThetaPhiPerfectPID(){} |
184 | void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
185 | void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); | |
186 | ||
187 | TH1* GetResult(); | |
188 | protected: | |
189 | void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} | |
190 | private: | |
191 | ClassDef(AliHBTTwoTrackEffFctnPtThetaPhiPerfectPID,1) | |
192 | }; | |
193 | /*************************************************************************************/ | |
194 | ||
195 | class AliHBTPairPIDProbVsPtThetaPhiFctn: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction | |
196 | { | |
197 | ||
198 | public: | |
d277b11c | 199 | AliHBTPairPIDProbVsPtThetaPhiFctn(Int_t nXbins = 50, Double_t maxXval = 0.3, Double_t minXval = 0.0, |
200 | Int_t nYbins = 50, Double_t maxYval = 0.3, Double_t minYval = 0.0, | |
201 | Int_t nZbins = 50, Double_t maxZval = 0.3, Double_t minZval = 0.0); | |
1f4ef2d2 | 202 | virtual ~AliHBTPairPIDProbVsPtThetaPhiFctn(){} |
203 | ||
204 | TH1* GetResult(); | |
205 | void ProcessSameEventParticles(AliHBTPair* part); | |
206 | void ProcessDiffEventParticles(AliHBTPair* pair); | |
207 | ||
208 | protected: | |
209 | void GetValues(AliHBTPair* /*pair*/, Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const {} | |
210 | ||
211 | ClassDef(AliHBTPairPIDProbVsPtThetaPhiFctn,1) | |
212 | }; | |
213 | ||
becde6ce | 214 | |
215 | ||
216 | #endif |