]>
Commit | Line | Data |
---|---|---|
b67ec6f7 | 1 | #ifndef ALIANALYSISTASKCHECKPERFORMANCECASCADE_H |
2 | #define ALIANALYSISTASKCHECKPERFORMANCECASCADE_H | |
3 | ||
4 | /* See cxx source for full Copyright notice */ | |
5 | ||
7e504402 | 6 | // //----------------------------------------------------------------- |
7 | // // AliAnalysisTaskCheckPerformanceCascade class | |
8 | // // This task is for a performance study of cascade identification. | |
9 | // // It works with MC info and ESD. | |
10 | // // Use with AOD tree = under development | |
11 | // // Origin : A.Maire Mar2009, antonin.maire@ires.in2p3.fr | |
12 | // // Modified : A.Maire Jan2010, antonin.maire@ires.in2p3.fr | |
13 | // //----------------------------------------------------------------- | |
b67ec6f7 | 14 | |
15 | class TList; | |
16 | class TH1F; | |
17 | class TH2F; | |
18 | class AliESDEvent; | |
7e504402 | 19 | class AliESDpid; |
20 | class AliCFContainer; | |
b67ec6f7 | 21 | |
22 | #include "AliAnalysisTaskSE.h" | |
23 | ||
24 | class AliAnalysisTaskCheckPerformanceCascade : public AliAnalysisTaskSE { | |
25 | public: | |
26 | ||
27 | AliAnalysisTaskCheckPerformanceCascade(); | |
28 | AliAnalysisTaskCheckPerformanceCascade(const char *name ); | |
29 | virtual ~AliAnalysisTaskCheckPerformanceCascade() {} | |
30 | ||
31 | //virtual void ConnectInputData(Option_t *); | |
32 | virtual void UserCreateOutputObjects(); | |
33 | virtual void UserExec(Option_t *option); | |
7e504402 | 34 | virtual Int_t DoESDTrackWithTPCrefitMultiplicity(const AliESDEvent *lESDevent); |
b67ec6f7 | 35 | virtual void Terminate(Option_t *); |
36 | ||
37 | void SetDebugLevelCascade(Int_t lDebugCascade = 0) {fDebugCascade = lDebugCascade;} | |
38 | void SetCollidingSystems (Short_t collidingSystems = 0) {fCollidingSystems = collidingSystems;} | |
39 | void SetAnalysisType (const char* analysisType = "ESD") {fAnalysisType = analysisType;} | |
40 | ||
41 | private: | |
7e504402 | 42 | Int_t fDebugCascade; // Denug Flag for this task devoted to cascade |
43 | TString fAnalysisType; // "ESD" or "AOD" analysis type | |
44 | Short_t fCollidingSystems; // 0 = pp collisions or 1 = AA collisions | |
45 | ||
46 | AliESDpid *fESDpid; // Tool data member to manage the TPC Bethe-Bloch info | |
b67ec6f7 | 47 | |
48 | TList *fListHistCascade; //! List of Cascade histograms | |
49 | // - Histos | |
50 | TH1F *fHistMCTrackMultiplicity; //! MC Track multiplicity | |
51 | ||
52 | ||
53 | // proton | |
54 | TH1F *fHistEtaGenProton; //! MC Pseudo-rapidity of any generated p+ (no cuts in acceptance) | |
55 | TH1F *fHistEtaGenAntiProton; //! MC Pseudo-rapidity of any generated p+ (no cuts in acceptance) | |
56 | ||
57 | // Part 1 - Generated cascades | |
58 | ||
59 | //-------------- | |
60 | // Xi- | |
61 | TH1F *fHistEtaGenCascXiMinus; //! MC Pseudo-rapidity of any generated Xi- (no cuts in acceptance) | |
ff0753e1 | 62 | TH2F *f2dHistGenPtVsGenYGenXiMinus; //! MC Pt Vs MC Y of generated Xi- |
63 | ||
b67ec6f7 | 64 | // - Histos planned for Xi- emitted within the acceptance (cuts in theta + pt of daughters) |
65 | // = findable cascades | |
66 | TH1F *fHistThetaGenCascXiMinus; //! MC Theta angle of the generated Xi- | |
ff0753e1 | 67 | TH2F *f2dHistGenPtVsGenYFdblXiMinus; //! MC Pt Vs MC y of the findable Xi- |
b67ec6f7 | 68 | |
69 | TH1F *fHistThetaLambdaXiMinus; //! MC Theta angle of the Lambda daughter of the generated Xi- | |
db71a168 | 70 | TH1F *fHistThetaBachXiMinus; //! MC Theta angle of the Bachelor (pi-) |
b67ec6f7 | 71 | |
72 | TH1F *fHistThetaMesDghterXiMinus; //! MC Theta angle of the mesonic V0 daughter in the generated cascade, pi- | |
73 | TH1F *fHistThetaBarDghterXiMinus; //! MC Theta angle of the baryonic V0 daughter in the generated cascade, p+ | |
74 | ||
db71a168 | 75 | TH1F *fHistPtBachXiMinus; //! MC Pt of the Bachelor (pi-) (Control Plot) |
b67ec6f7 | 76 | TH1F *fHistPtMesDghterXiMinus; //! MC Pt of the meson daughter of the 'Lambda0', pi- (Control Plot) |
77 | TH1F *fHistPtBarDghterXiMinus; //! MC Pt of the baryon daughter of the 'Lambda0', p+ (Control Plot) | |
78 | ||
79 | ||
80 | ||
81 | //-------------- | |
82 | // Xi+ | |
83 | TH1F *fHistEtaGenCascXiPlus; //! MC Pseudo-rapidity of any generated Xi+ (no cuts in acceptance) | |
ff0753e1 | 84 | TH2F *f2dHistGenPtVsGenYGenXiPlus; //! MC Pt Vs MC Y of generated Xi+ |
85 | ||
b67ec6f7 | 86 | // - Histos planned for Xi+ emitted within the acceptance (cuts in theta + pt of daughters) |
87 | TH1F *fHistThetaGenCascXiPlus; //! MC Theta angle of the generated Xi+ | |
ff0753e1 | 88 | TH2F *f2dHistGenPtVsGenYFdblXiPlus; //! MC Pt Vs MC y of the findable Xi+ |
b67ec6f7 | 89 | |
90 | TH1F *fHistThetaLambdaXiPlus; //! MC Theta angle of the anti-Lambda daughter of the generated Xi+ | |
db71a168 | 91 | TH1F *fHistThetaBachXiPlus; //! MC Theta angle of the Bachelor (pi+) |
b67ec6f7 | 92 | |
93 | TH1F *fHistThetaMesDghterXiPlus; //! MC Theta angle of the mesonic V0 daughter in the generated cascade, pi+ | |
94 | TH1F *fHistThetaBarDghterXiPlus; //! MC Theta angle of the baryonic V0 daughter in the generated cascade, p- | |
95 | ||
db71a168 | 96 | TH1F *fHistPtBachXiPlus; //! MC Pt of the Bachelor (pi+) (Control Plot) |
b67ec6f7 | 97 | TH1F *fHistPtMesDghterXiPlus; //! MC Pt of the meson daughter of the 'Lambda0', pi+ (Control Plot) |
98 | TH1F *fHistPtBarDghterXiPlus; //! MC Pt of the baryon daughter of the 'Lambda0', p- (Control Plot) | |
99 | ||
100 | ||
101 | ||
102 | //-------------- | |
103 | // Omega- | |
db71a168 | 104 | TH1F *fHistEtaGenCascOmegaMinus; //! MC Pseudo-rapidity of any generated Omega- (no cuts in acceptance) |
ff0753e1 | 105 | TH2F *f2dHistGenPtVsGenYGenOmegaMinus; //! MC Pt Vs MC Y of generated Omega- |
b67ec6f7 | 106 | |
107 | // - Histos planned for Omega- emitted within the acceptance (cuts in theta + pt of daughters) | |
108 | TH1F *fHistThetaGenCascOmegaMinus; //! MC Theta angle of the generated Omega- | |
ff0753e1 | 109 | TH2F *f2dHistGenPtVsGenYFdblOmegaMinus; //! MC Pt Vs MC y of the findable Omega- |
b67ec6f7 | 110 | |
111 | TH1F *fHistThetaLambdaOmegaMinus; //! MC Theta angle of the Lambda daughter of the generated Omega- | |
112 | TH1F *fHistThetaBachOmegaMinus; //! MC Theta angle of the Bachelor (K-) | |
113 | ||
db71a168 | 114 | TH1F *fHistThetaMesDghterOmegaMinus; //! MC Theta angle of the mesonic V0 daughter in the generated cascade, pi- |
115 | TH1F *fHistThetaBarDghterOmegaMinus; //! MC Theta angle of the baryonic V0 daughter in the generated cascade, p+ | |
b67ec6f7 | 116 | |
117 | TH1F *fHistPtBachOmegaMinus; //! MC Pt of the Bachelor (K-) (Control Plot) | |
118 | TH1F *fHistPtMesDghterOmegaMinus; //! MC Pt of the meson daughter of the 'Lambda0', pi- (Control Plot) | |
119 | TH1F *fHistPtBarDghterOmegaMinus; //! MC Pt of the baryon daughter of the 'Lambda0', p+ (Control Plot) | |
120 | ||
121 | ||
122 | ||
123 | //-------------- | |
124 | // Omega+ | |
125 | TH1F *fHistEtaGenCascOmegaPlus; //! MC Pseudo-rapidity of any generated Omega+ (no cuts in acceptance) | |
ff0753e1 | 126 | TH2F *f2dHistGenPtVsGenYGenOmegaPlus; //! MC Pt Vs MC Y of generated Omega+ |
b67ec6f7 | 127 | |
b67ec6f7 | 128 | // - Histos planned for Omega+ emitted within the acceptance (cuts in theta + pt of daughters) |
129 | TH1F *fHistThetaGenCascOmegaPlus; //! MC Theta angle of the generated Omega+ | |
ff0753e1 | 130 | TH2F *f2dHistGenPtVsGenYFdblOmegaPlus; //! MC Pt Vs MC y of the findable Omega+ |
b67ec6f7 | 131 | |
132 | TH1F *fHistThetaLambdaOmegaPlus; //! MC Theta angle of the anti-Lambda daughter of the generated Omega+ | |
133 | TH1F *fHistThetaBachOmegaPlus; //! MC Theta angle of the Bachelor (K+) | |
134 | ||
db71a168 | 135 | TH1F *fHistThetaMesDghterOmegaPlus; //! MC Theta angle of the mesonic V0 daughter in the generated cascade, pi+ |
136 | TH1F *fHistThetaBarDghterOmegaPlus; //! MC Theta angle of the baryonic V0 daughter in the generated cascade, p- | |
b67ec6f7 | 137 | |
138 | TH1F *fHistPtBachOmegaPlus; //! MC Pt of the Bachelor (K+) (Control Plot) | |
139 | TH1F *fHistPtMesDghterOmegaPlus; //! MC Pt of the meson daughter of the 'Lambda0', pi+ (Control Plot) | |
140 | TH1F *fHistPtBarDghterOmegaPlus; //! MC Pt of the baryon daughter of the 'Lambda0', p- (Control Plot) | |
141 | ||
142 | ||
143 | ||
144 | // Part 2 - Any reconstructed cascades + reconstructed cascades associated with MC | |
ff0753e1 | 145 | // 2.1 - Effective mass and PID |
b67ec6f7 | 146 | // - Effective mass histos for all the cascade candidates |
147 | TH1F *fHistMassXiMinus; //! reconstructed cascade effective mass, under Xi- hyp. | |
148 | TH1F *fHistMassXiPlus; //! reconstructed cascade effective mass, under Xi+ hyp. | |
149 | TH1F *fHistMassOmegaMinus; //! reconstructed cascade effective mass, under Omega- hyp. | |
150 | TH1F *fHistMassOmegaPlus; //! reconstructed cascade effective mass, under Omega+ hyp. | |
151 | ||
f87cd3db | 152 | // - Effective mass histos with reconstruction combined PID |
153 | TH1F *fHistMassWithCombPIDXiMinus; //! reconstructed Xi- effective mass, with bach. comb PID | |
154 | TH1F *fHistMassWithCombPIDXiPlus; //! reconstructed Xi+ effective mass, with bach. comb PID | |
155 | TH1F *fHistMassWithCombPIDOmegaMinus; //! reconstructed Omega- effective mass, with bach. comb PID | |
156 | TH1F *fHistMassWithCombPIDOmegaPlus; //! reconstructed Omega+ effective mass, with bach. comb PID | |
f870ac91 | 157 | |
158 | // - PID Probability versus MC Pt(bachelor track) | |
159 | TH2F *f2dHistPIDprobaKaonVsMCPtBach; //! Comb. PID probability for the bach. to be a Kaon Vs MC pt(bach) | |
160 | TH2F *f2dHistPIDprobaPionVsMCPtBach; //! Comb. PID probability for the bach. to be a Pion Vs MC pt(bach) | |
f87cd3db | 161 | |
162 | // - Effective mass histos with perfect MC PID | |
163 | TH1F *fHistMassWithMcPIDXiMinus; //! reconstructed Xi- effective mass, with MC bach. PID | |
164 | TH1F *fHistMassWithMcPIDXiPlus; //! reconstructed Xi+ effective mass, with MC bach. PID | |
165 | TH1F *fHistMassWithMcPIDOmegaMinus; //! reconstructed Omega- effective mass, with MC bach. PID | |
166 | TH1F *fHistMassWithMcPIDOmegaPlus; //! reconstructed Omega+ effective mass, with MC bach. PID | |
167 | ||
168 | ||
ff0753e1 | 169 | // 2.2 - Associated candidates |
f870ac91 | 170 | // - Effective mass histos for the cascade candidates associated with MC, without PID info |
b67ec6f7 | 171 | TH1F *fHistAsMCMassXiMinus; //! reconstr. cascade effective mass, under Xi- hyp. for Associated cand. |
172 | TH1F *fHistAsMCMassXiPlus; //! reconstr. cascade effective mass, under Xi+ hyp. for Associated cand. | |
173 | TH1F *fHistAsMCMassOmegaMinus; //! reconstr. cascade effective mass, under Omega- hyp. for Associated cand. | |
174 | TH1F *fHistAsMCMassOmegaPlus; //! reconstr. cascade effective mass, under Omega+ hyp. for Associated cand. | |
175 | ||
ff0753e1 | 176 | // - Generated Pt Vs generated Y of the cascade candidates associated with MC |
177 | // + having the proper maximum proba of combined PID for the bachelor | |
178 | TH2F *f2dHistAsMCandCombPIDGenPtVsGenYXiMinus; //! Pt(gen) Vs Y(gen) from the MC Xi- associated with Reco cand + with PID info | |
179 | TH2F *f2dHistAsMCandCombPIDGenPtVsGenYXiPlus; //! Pt(gen) Vs Y(gen) from the MC Xi+ associated with Reco cand + with PID info | |
180 | TH2F *f2dHistAsMCandCombPIDGenPtVsGenYOmegaMinus; //! Pt(gen) Vs Y(gen) from the MC Omega- associated with Reco cand + with PID info | |
181 | TH2F *f2dHistAsMCandCombPIDGenPtVsGenYOmegaPlus; //! Pt(gen) Vs Y(gen) from the MC Omega+ associated with Reco cand + with PID info | |
182 | ||
183 | // - Generated Pt Vs generated Y, for the cascade candidates associated with MC, without PID info | |
184 | TH2F *f2dHistAsMCGenPtVsGenYXiMinus; //! gen. Pt Vs gen. Rap. from the MC Xi- associated with a reconstr. cascade | |
185 | TH2F *f2dHistAsMCGenPtVsGenYXiPlus; //! gen. Pt Vs gen. Rap. from the MC Xi+ associated with a reconstr. cascade | |
186 | TH2F *f2dHistAsMCGenPtVsGenYOmegaMinus; //! gen. Pt Vs gen. Rap. from the MC Omega- associated with a reconstr. cascade | |
187 | TH2F *f2dHistAsMCGenPtVsGenYOmegaPlus; //! gen. Pt Vs gen. Rap. from the MC Omega+ associated with a reconstr. cascade | |
b67ec6f7 | 188 | |
f870ac91 | 189 | // - Generated Eta of the the cascade candidates associated with MC, without PID info |
b67ec6f7 | 190 | TH1F *fHistAsMCGenEtaXiMinus; //! generated Eta from the MC Xi- associated with a reconstr. cascade |
191 | TH1F *fHistAsMCGenEtaXiPlus; //! generated Eta from the MC Xi+ associated with a reconstr. cascade | |
192 | TH1F *fHistAsMCGenEtaOmegaMinus; //! generated Eta from the MC Omega- associated with a reconstr. cascade | |
193 | TH1F *fHistAsMCGenEtaOmegaPlus; //! generated Eta from the MC Omega+ associated with a reconstr. cascade | |
194 | ||
195 | // - Resolution in Pt as function of generated Pt | |
196 | TH2F *f2dHistAsMCResPtXiMinus; //! resolution in Pt as function of gen. Pt, for Xi- | |
197 | TH2F *f2dHistAsMCResPtXiPlus; //! resolution in Pt as function of gen. Pt, for Xi- | |
198 | TH2F *f2dHistAsMCResPtOmegaMinus; //! resolution in Pt as function of gen. Pt, for Omega- | |
199 | TH2F *f2dHistAsMCResPtOmegaPlus; //! resolution in Pt as function of gen. Pt, for Omega+ | |
200 | ||
201 | // - Resolution in R(2D) as function of generated R | |
ff0753e1 | 202 | TH2F *f2dHistAsMCResRXiMinus; //! resolution in transv. R = f(transv. gen. R), for Xi- |
203 | TH2F *f2dHistAsMCResRXiPlus; //! resolution in transv. R = f(transv. gen. R), for Xi+ | |
204 | TH2F *f2dHistAsMCResROmegaMinus; //! resolution in transv. R = f(transv. gen. R), for Omega- | |
205 | TH2F *f2dHistAsMCResROmegaPlus; //! resolution in transv. R = f(transv. gen. R), for Omega+ | |
7e504402 | 206 | |
207 | // - Compilation of all PID plots (3D = casc. transv. momemtum Vs Casc Eff mass Vs Y), stored into an AliCFContainer | |
208 | AliCFContainer *fCFContCascadePIDAsXiMinus; //! for Xi- : Container to store any 3D histos with the different PID flavours | |
209 | AliCFContainer *fCFContCascadePIDAsXiPlus; //! for Xi+ : Container to store any 3D histos with the different PID flavours | |
210 | AliCFContainer *fCFContCascadePIDAsOmegaMinus; //! for Omega-: Container to store any 3D histos with the different PID flavours | |
211 | AliCFContainer *fCFContCascadePIDAsOmegaPlus; //! for Omega+: Container to store any 3D histos with the different PID flavours | |
212 | ||
b67ec6f7 | 213 | |
214 | ||
215 | AliAnalysisTaskCheckPerformanceCascade(const AliAnalysisTaskCheckPerformanceCascade&); // not implemented | |
216 | AliAnalysisTaskCheckPerformanceCascade& operator=(const AliAnalysisTaskCheckPerformanceCascade&); // not implemented | |
217 | ||
7e504402 | 218 | ClassDef(AliAnalysisTaskCheckPerformanceCascade, 3); |
b67ec6f7 | 219 | }; |
220 | ||
221 | #endif |