2 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * See cxx source for full Copyright notice */
6 AliAnalysisTaskLambdaOverK0sJets class
8 This program obtains the production of K0s and Lambdas and calculates
9 the correlation (in the variables phi and eta) with respect to the
10 triggers particles (high-pt charged particles).
11 It works with MC information and AOD tree.
12 Origin: X. Sanchez Castro August2012, xsanchez@cern.ch
16 #ifndef ALIANALYSISTASKLAMBDAOVERK0SJETS_H
17 #define ALIANALYSISTASKLAMBDAOVERK0SJETS_H
19 #include "AliAnalysisTaskSE.h"
38 const float kPtBinV0[kN1+1] = {2.0,2.25,2.5,2.75,3.0,3.5,4.0,5.0,7.0};
40 const int kNVtxZ = 10;
41 const double kBinVtxZ[kNVtxZ+1] = {-10.,-8.,-6.,-4.,-2.,0.,2.,4.,6.,8.,10.};
44 const double kBinCent[kNCent+1] = {0.0,5.0,10.0,20.0,40.0};
46 // ------------------------------------
47 // Inv. Mass width as function of the centrality
48 // Linear polimomial dependence: sigma(pt) = a0 * a1*pt
50 const double kCteK0s2010[kNCent] = {0.00348, 0.00351, 0.00346, 0.00318};
51 const double kLinearK0s2010[kNCent] = {8.024E-4, 7.403E-4, 7.250E-4, 7.665E-4};
53 const double kCteK0s2011[kNCent] = {0.00338, 0.00328, 0.00333, 0.00326};
54 const double kLinearK0s2011[kNCent] = {8.336E-4, 8.385E-4, 7.891E-4, 7.851E-4};
56 const double kCteLambda2010[kNCent] = {0.00145, 0.00122, 0.00140, 0.00135};
57 const double kLinearLambda2010[kNCent] = {2.233E-4, 2.836-4, 2.105-4, 2.076E-4};
59 const double kCteLambda2011[kNCent] = {0.00130, 0.00123, 0.00114, 0.00121};
60 const double kLinearLambda2011[kNCent] = {3.002E-4, 3.067E-4, 3.207E-4, 2.813E-4};
62 const double kCteAntiLambda2010[kNCent] = {0.00109, 0.00134, 0.00117, 0.00116};
63 const double kLinearAntiLambda2010[kNCent] = {3.245E-4, 2.308E-4, 2.707E-4, 2.562E-4};
65 const double kCteAntiLambda2011[kNCent] = {9.859E-4, 0.00111, 0.00104, 0.00110};
66 const double kLinearAntiLambda2011[kNCent] = {3.881E-4, 3.379E-4, 3.490E-4, 3.166E-4};
68 // -------------------------------------
70 class AliAnalysisTaskLambdaOverK0sJets : public AliAnalysisTaskSE {
74 enum V0LoopStep_t { kTriggerCheck=1, kReconstruction=2 };
76 AliAnalysisTaskLambdaOverK0sJets(const char *name = "AliAnalysisTaskLambdaOverK0sJets");
77 virtual ~AliAnalysisTaskLambdaOverK0sJets();
79 // Setter for global variables in the event
80 void SetCollisionType(TString data="PbPb2010") {fCollision=data;}
81 void SetMC(Bool_t isMC=kTRUE) {fIsMC=isMC;}
82 void SetPID(Bool_t usePID=kTRUE) {fUsePID=usePID;}
83 void SetCentrality(Float_t min=0., Float_t max=90.) {fCentMin=min;fCentMax=max;}
84 void SetQA(Bool_t doQA=kFALSE){fDoQA=doQA;}
85 void SetDoMix(Bool_t doMixEvt=kTRUE) {fDoMixEvt=doMixEvt;}
86 void SetTriggerFilterBit(Int_t triggerFB=768){fTriggerFB=triggerFB;}
87 void SetTriggerPt(Float_t ptMinTrig=8., Float_t ptMaxTrig=50.) {fTrigPtMin=ptMinTrig;fTrigPtMax=ptMaxTrig;}
88 void SetTriggerEta(Float_t etaMaxTrig=0.8){fTrigEtaMax=etaMaxTrig;}
89 void SetCheckIDTrig(Bool_t checkIDTrig=kFALSE){fCheckIDTrig=checkIDTrig;}
90 void SetSeparateInjectedPart(Bool_t doSep=kTRUE) {fSeparateInjPart=doSep;}
93 void SetMinPtDaughter(Float_t minPtDaughter=0.160) {fMinPtDaughter=minPtDaughter;}
94 void SetMaxEtaDaughter(Float_t maxEta=0.8) {fMaxEtaDaughter=maxEta;}
95 void SetMaxDCADaughter(Float_t maxDCA=1.0) {fMaxDCADaughter=maxDCA;}
96 void SetDCAToPrimVtx(Float_t dcaToPrimVtx=0.1) {fDCAToPrimVtx=dcaToPrimVtx;}
97 void SetNSigmaPID(Float_t nSigma=3) {fNSigma=nSigma;}
98 void SetNClsTPC(Float_t nClsTPC=70.) {fDaugNClsTPC=nClsTPC;}
100 void SetEtaCut(Bool_t etaCut=kFALSE) {fUseEtaCut=etaCut;}
101 void SetMaxY(Float_t yMax=0.5) {fYMax=yMax;}
102 void SetMinCPA(Float_t minCPA=0.998) {fMinCPA=minCPA;}
103 void SetCtau(Float_t minCtau = 0., Float_t maxCtau = 3.) {fMinCtau=minCtau;fMaxCtau=maxCtau;}
105 // Setting variables for splitting cut
106 void SetTPCRadius(Float_t tpcRadius=125.) {fTPCRadius=tpcRadius;}
107 void SetFracSharedTPCcls(Float_t fracSharedTPCcls=0.4) {fFracTPCcls=fracSharedTPCcls;}
108 void SetDiffSharedTPCcls(Float_t diffSharedTPCcls=0.06) {fDiffTrigDaugFracTPCSharedCls=diffSharedTPCcls;}
111 Float_t GetMinCentr() { return fCentMin; }
112 Float_t GetMaxCentr() { return fCentMax; }
115 virtual void UserCreateOutputObjects();
116 virtual Bool_t AcceptTrack(const AliAODTrack *t);
117 virtual Bool_t AcceptTrackV0(const AliAODTrack *t);
118 virtual Bool_t AcceptV0(AliAODVertex *vtx, const AliAODv0 *v0);
119 virtual Double_t ThetaS(TString part);
120 virtual Double_t EtaS(TString part);
121 virtual Float_t dEtaS();
122 virtual Float_t dPhiSAtR125();
123 virtual void SetSftPosR125(const AliAODTrack *track,const Float_t bfield,const Float_t priVtx[3], TString part);
124 virtual void RecCascade(const AliAODTrack *trk1,const AliAODTrack *trk2,const AliAODTrack *trkBch,TString histo);
125 virtual void V0Loop(V0LoopStep_t step, Bool_t isTriggered, Int_t iArray, Int_t idTrig);
126 virtual void TriggerParticle();
128 virtual void UserExec(Option_t *option);
129 virtual void Terminate(Option_t *);
133 AliAnalysisTaskLambdaOverK0sJets(const AliAnalysisTaskLambdaOverK0sJets&); //not implemented
134 AliAnalysisTaskLambdaOverK0sJets& operator=(const AliAnalysisTaskLambdaOverK0sJets&);//not implemented
137 TString fCollision; // Data: PbPb2010 / PbPb2011
138 Bool_t fIsMC; // Use MC data
139 Bool_t fUsePID; // Use PID for tracks
140 Float_t fCentMin; // Minimum centrality
141 Float_t fCentMax; // Maximum centrality
142 Bool_t fDoQA; // Do Auality Assurance?
143 Bool_t fDoMixEvt; // Do Mixed Events
144 Int_t fTriggerFB; // Trigger track filter bit
145 Float_t fTrigPtMin; // Minimum pt for trigger particle
146 Float_t fTrigPtMax; // Maximum pt for trigger particle
147 Float_t fTrigPtMCMin; // Minimum pt for trigger particle in MC
148 Float_t fTrigPtMCMax; // Maximum pt for trigger particle in MC
149 Float_t fTrigEtaMax; // Maximum eta for trigger particle
150 Bool_t fCheckIDTrig; // Do comparison with V0's daughter tracks?
151 Bool_t fSeparateInjPart; // Separate MC injected particles in case of correlation
152 Int_t fEndOfHijingEvent; // Limit natural-injected MC particles
153 AliPIDResponse *fPIDResponse; // PID Response
155 Float_t fMinPtDaughter; // Minimum transverse momentum for V0's daughters
156 Float_t fMaxEtaDaughter; // Maximum pseudo-rapidity for V0's daughters
157 Float_t fMaxDCADaughter; // Maximum Distance of Closest Approach between daughters (given in sigmas)
158 Bool_t fUseEtaCut; // Swicth between rapidity or pseudo-rapidity cut
159 Float_t fYMax; // Maximum rapidity for V0
160 Float_t fDCAToPrimVtx; // Mimimum distance of closest approach of daughters to the vertex
161 Float_t fMinCPA; // Minimum Cosine of the Pointing Angle to the vertex for V0
162 Float_t fNSigma; // Number of sigmas for PID wi dE/dx
163 Float_t fDaugNClsTPC; // Number of TPC clusters for daughters
164 Float_t fMinCtau; // Minimum ctau
165 Float_t fMaxCtau; // Maximum ctau
167 Int_t fIdTrigger; // ID track of the trigger particle
168 Int_t fIsV0LP; // Flag: V0 has the highest pt in the event
169 Float_t fPtV0LP; // Pt of the leading V0
170 Int_t fIsSndCheck; // Flag: trigger particle is the second leaidng particle
172 Float_t fTPCRadius; // Radial position of TPC to obtain the separation between the trigger particle and the daughter particle
173 Float_t fTrigSftR125[3]; // Shifted position of the daughter track to the Primary verterx
174 Float_t fDaugSftR125[3]; // Shifted position of the trigger track to the Primary verterx
175 Float_t fFracTPCcls; // Threshold for the fraction of TPC shared clusters for single track
176 Float_t fDiffTrigDaugFracTPCSharedCls; // Allowed dispertion in the fraction of TPC shared clusters between trigger particle and the daughter track
179 TList* fOutput; //! List of histograms for main analysis
180 TList* fOutputQA; //! List of histograms for Quality Assurance
181 TList* fOutputME; //! List of histograms for Mixed Events
182 TList** fMEList; //![] List of Mixed Events
184 TObjArray* fTriggerParticles; // Trigger particle array
185 TObjArray* fTriggerPartMC; // MC Trigger particle array
186 TObjArray* fAssocParticles; // Associated particle array
187 TObjArray* fAssocPartMC; // MC Associated particle array
189 TH1F* fEvents; //! Counter for the number of events in each step
190 TH2F* fEvtPerCent; //! Counter for the number of events in each step per centrality bin
191 TH1F* fCentrality; //! Event centrality per centil
192 TH1F* fCentrality2; //! Event centrality per centil with |VtxZ|<10cm
193 TH2F* fCentralityTrig; //! Event centrality per trigger
194 TH2F* fPrimayVtxGlobalvsSPD; //! Zvtx tracking vs Zvtx SPD
195 TH1F* fPrimaryVertexX; //! Primary vertex position in X
196 TH1F* fPrimaryVertexY; //! Primary vertex position in Y
197 TH1F* fPrimaryVertexZ; //! Primary vertex position in Z
199 TH1F* fTriggerEventPlane; //! Distance between the trigger particle direction and the event plane angle
201 TH2F* fTriggerMCPtCent; //! Trigger particle MC: pt vs centrality
202 TH3F* fTriggerMCResPt; //! Trigger particle MC: pt resolution
203 TH3F* fTriggerMCResEta; //! Trigger particle MC: eta resolution
204 TH3F* fTriggerMCResPhi; //! Trigger particle MC: phi resolution
205 TH3F* fTriggerPtCent; //! Trigger particle: pt vs centrality vs Z vertex
206 TH3F* fTriggerPtCentCh; //! Trigger particle: pt vs centrality vs Z vertex for hh correlations
207 TH2F* fNTrigPerEvt; //! Trigger particle: Number of particle triggers per event
208 TH1F* fTriggerWiSPDHit; //! Trigger particle: Has Hits in the SPD?
209 TH2F* fTriggerEtaPhi; //! Trigger particle: eta vs phi
210 TH2F* fTrigFracShTPCcls; //! Trigger particle: pt vs fraction of shared TPC cls
211 TH2F* fTriggerDCA; //! Trigger particle: dca to primary vertex
212 TH1F* fCheckTriggerFromV0Daug; //! Trigger particle: it is a daughter from a V0-candidate
213 TH1F* fTriggerComingFromDaug; //! Trigger particle: pt when LP is a daughter from a V0-candidate
214 TH1F* fTriggerIsV0; //! Trigger particle: the V0 is the highest-pt particle
215 TH3F* fCheckIDTrigPtK0s; //! Trigger particle: pt comparison between trigger track and K0s daughter track
216 TH3F* fCheckIDTrigPhiK0s; //! Trigger particle: phi comparison between trigger track and K0s daughter track
217 TH3F* fCheckIDTrigEtaK0s; //! Trigger particle: eta comparison between trigger track and K0s daughter track
218 TH3F* fCheckIDTrigNclsK0s; //! Trigger particle: number of cluster of the daughter particle
219 TH3F* fCheckIDTrigPtLambda; //! Trigger particle: pt comparison between trigger track and Lambda daughter track
220 TH3F* fCheckIDTrigPhiLambda; //! Trigger particle: phi comparison between trigger track and Lambda daughter track
221 TH3F* fCheckIDTrigEtaLambda; //! Trigger particle: eta comparison between trigger track and Lambda daughter track
222 TH3F* fCheckIDTrigNclsLambda; //! Trigger particle: number of cluster of the daughter particle
223 TH3F* fCheckIDTrigPtAntiLambda; //! Trigger particle: pt comparison between trigger track and AntiLambda daughter track
224 TH3F* fCheckIDTrigPhiAntiLambda; //! Trigger particle: phi comparison between trigger track and AntiLambda daughter track
225 TH3F* fCheckIDTrigEtaAntiLambda; //! Trigger particle: eta comparison between trigger track and AntiLambda daughter track
226 TH3F* fCheckIDTrigNclsAntiLambda; //! Trigger particle: number of cluster of the daughter particle
228 // ============== Monte Carlo ================= //
229 TH1F* fInjectedParticles; //! Number of injected particles
232 TH1F* fK0sMCPt; //! K0s MC: pt
233 TH3F* fK0sMCPtRap; //! K0s MC: pt vs rapidity
234 TH3F* fK0sMCPtRap2; //! K0s MC: pt vs rapidity (is Natural)
235 TH3F* fK0sMCPtRapVtx[kNCent]; //! K0s MC: pt vs Z vtx position vs centrality
236 TH3F* fK0sMCPtRapEmbeded; //! K0s MC: pt vs rapidity (embeded particles)
237 TH3F* fK0sMCPtRapVtxEmbeded[kNCent]; //! K0s MC: pt vs Z vtx position rapidity vs centrality (embeded particles)
238 THnSparse* fK0sMCPtRapPtDaugPt[kNCent]; //! K0s MC: pt vs rapidity vs transverse momemtum of daughters
239 THnSparse* fK0sMCPtRapPtDaugPtEmbeded[kNCent]; //! K0s MC: pt vs rapidity vs transverse momemtum of daughters
240 TH3F* fK0sMCPtPhiEta[kNCent]; //! K0s MC: pt vs pseudo-rapidity
242 TH1F* fK0sAssocPt; //! K0s Assoc: pt
243 TH3F* fK0sAssocPtArm; //! K0s Assoc: pt vs rapidity vs centrality (arm. pod. cut)
244 TH3F* fK0sAssocPtRap; //! K0s Assoc: pt vs rapidity vs centrality
245 TH3F* fK0sAssocPtRapEmbeded; //! K0s Assoc: pt vs rapidity vs centrality (embeded particles)
246 TH3F* fK0sAssocPtPhiEta[kNCent]; //! K0s Assoc: pt vs pseudo-rapidity
248 THnSparse* fK0sAssocPtMassArm[kNCent]; //! K0s Assoc: mass vs pt vs centrality
249 THnSparse* fK0sAssocMassPtVtx[kNCent]; //! K0s Assoc: mass vs pt vs Z vertex position
250 THnSparse* fK0sAssocMassPtDCADaug[kNCent]; //! K0s Assoc: mass vs pt vs dca between daughters
251 THnSparse* fK0sAssocMassPtCPA[kNCent]; //! K0s Assoc: mass vs pt vs cpa
252 THnSparse* fK0sAssocMassPtDCAPV[kNCent]; //! K0s Assoc: mass vs pt vs dca to prim. vtx
253 THnSparse* fK0sAssocMassPtDaugNClsTPC[kNCent]; //! K0s Assoc: mass vs pt vs num. of tpc clusters
254 THnSparse* fK0sAssocMassPtShTPCcls[kNCent]; //! K0s Assoc: mass vs pt vs fraction of shared TPC cls
255 THnSparse* fK0sAssocMassPtDaugPt[kNCent]; //! K0s Assoc: mass vs pt vs transverse momemtum of daughters
256 THnSparse* fK0sAssocMassPtCtau[kNCent]; //! K0s Assoc: mass vs pt vs proper time of life
257 THnSparse* fK0sAssocMassPtFidVolume[kNCent]; //! K0s Assoc: mass vs pt vs fiducial volume
259 THnSparse* fK0sAssocPtMassArmEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs rapidity (embeded particles)
260 THnSparse* fK0sAssocMassPtVtxEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs Z vertex position (embeded particles)
261 THnSparse* fK0sAssocMassPtDCADaugEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs dca between daughters (embeded particles)
262 THnSparse* fK0sAssocMassPtCPAEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs cpa (embeded particles)
263 THnSparse* fK0sAssocMassPtDCAPVEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs dca to prim. vtx (embeded particles)
264 THnSparse* fK0sAssocMassPtDaugNClsTPCEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs num. o ftpc clusters (embeded particles)
265 THnSparse* fK0sAssocMassPtShTPCclsEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs fraction of shared TPC cls
266 THnSparse* fK0sAssocMassPtDaugPtEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs transverse momemtum of daughters
267 THnSparse* fK0sAssocMassPtCtauEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs proper time of life
268 THnSparse* fK0sAssocMassPtFidVolumeEmbeded[kNCent]; //! K0s Assoc: mass vs pt vs fiducial volume
271 TH3F* fK0sMCResEta; //! K0s Assoc: eta resolution
272 TH3F* fK0sMCResPhi; //! K0s Assoc: phi resolution
273 TH3F* fK0sMCResPt; //! K0s Assoc: pt resolution
274 TH3F* fK0sPosMCResEta; //! K0s Pos. Daughter: eta resolution
275 TH3F* fK0sPosMCResPhi; //! K0s Pos. Daughter: phi resolution
276 TH3F* fK0sPosMCResPt; //! K0s Pos. Daughter: pt resolution
277 TH3F* fK0sNegMCResEta; //! K0s Neg. Daughter: eta resolution
278 TH3F* fK0sNegMCResPhi; //! K0s Neg. Daughter: phi resolution
279 TH3F* fK0sNegMCResPt; //! K0s Neg. Daughter: pt resolution
282 TH1F* fLambdaMCPt; //! Lambda MC: pt
283 TH3F* fLambdaMCPtRap; //! Lambda MC: pt vs rapidity
284 TH3F* fLambdaMCPtRap2; //! Lambda MC: pt vs rapidity (is Natural)
285 TH3F* fLambdaMCPtRapVtx[kNCent]; //! Lambda MC: pt vs Z vtx position rapidity vs centrality
286 TH3F* fLambdaMCPtRapEmbeded; //! Lambda MC: pt vs rapidity (embeded particles)
287 TH3F* fLambdaMCPtRapVtxEmbeded[kNCent]; //! Lambda MC: pt vs Z vtx position vs centrality (embeded particles)
288 THnSparse* fLambdaMCPtRapPtDaugPt[kNCent]; //! Lambda MC: pt vs rapidity vs transverse momemtum of daughters
289 THnSparse* fLambdaMCPtRapPtDaugPtEmbeded[kNCent]; //! Lambda MC: pt vs rapidity vs transverse momemtum of daughters
290 TH2F* fLambdaMCFromXi; //! Lambda MC: coming from Xi
291 TH3F* fLambdaMCPtPhiEta[kNCent]; //! Lambda MC: pt vs pseudo-rapidity
293 TH1F* fLambdaAssocPt; //! Lambda Assoc: pt
294 TH3F* fLambdaAssocPtRap; //! Lambda Assoc: pt vs rapidity
295 TH2F* fLambdaAssocFromXi; //! Lambda Assoc: coming from Xi
296 TH3F* fLambdaAssocPtPhiEta[kNCent]; //! Lambda Assoc: pt vs pseudo-rapidity
298 THnSparse* fLambdaAssocMassPtRap[kNCent]; //! Lambda Assoc: pt vs rapidity vs mass
299 THnSparse* fLambdaAssocMassPtRap2[kNCent]; //! Lambda Assoc: pt vs rapidity vs mass (wo Cross contamination)
300 THnSparse* fLambdaAssocMassPtVtx[kNCent]; //! Lambda Assoc: mass vs pt vs Z vertex position
301 THnSparse* fLambdaAssocMassPtDCADaug[kNCent]; //! Lambda Assoc: mass vs pt vs dca btween daughters
302 THnSparse* fLambdaAssocMassPtCPA[kNCent]; //! Lambda Assoc: mass vs pt vs cpa
303 THnSparse* fLambdaAssocMassPtDCAPV[kNCent]; //! Lambda Assoc: mass vs pt vs dca to prim vtx
304 THnSparse* fLambdaAssocMassPtDaugNClsTPC[kNCent]; //! Lambda Assoc: mass vs pt vs num.of tpc clusters
305 THnSparse* fLambdaAssocMassPtShTPCcls[kNCent]; //! Lambda Assoc: mass vs pt vs fraction of shared TPC cls
306 THnSparse* fLambdaAssocMassPtDaugPt[kNCent]; //! Lambda Assoc: mass vs pt vs transverse momemtum of daughters
307 THnSparse* fLambdaAssocMassPtCtau[kNCent]; //! Lambda Assoc: mass vs pt vs proper time of life
308 THnSparse* fLambdaAssocMassPtFidVolume[kNCent]; //! Lambda Assoc: mass vs pt vs fiducial volume
310 THnSparse* fLambdaAssocMassPtRapEmbeded[kNCent]; //! Lambda Assoc: pt vs rapidity vs mass (embeded)
311 THnSparse* fLambdaAssocMassPtRapEmbeded2[kNCent]; //! Lambda Assoc: pt vs rapidity vs mass (wo Cross contamination) (embeded)
312 THnSparse* fLambdaAssocMassPtVtxEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs Z vertex position (embeded particles)
313 THnSparse* fLambdaAssocMassPtDCADaugEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs dca between daughters (embeded particles)
314 THnSparse* fLambdaAssocMassPtCPAEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs cpa (embeded particles)
315 THnSparse* fLambdaAssocMassPtDCAPVEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs dca to prim vtx (embeded particles)
316 THnSparse* fLambdaAssocMassPtDaugNClsTPCEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs num. of tpc clusters (embeded particles)
317 THnSparse* fLambdaAssocMassPtShTPCclsEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs fraction of shared TPC cls
318 THnSparse* fLambdaAssocMassPtDaugPtEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs transverse momemtum of daughters
319 THnSparse* fLambdaAssocMassPtCtauEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs proper time of life
320 THnSparse* fLambdaAssocMassPtFidVolumeEmbeded[kNCent]; //! Lambda Assoc: mass vs pt vs fiducial volume
323 TH3F* fLambdaMCResEta; //! Lambda Assoc: eta resolution
324 TH3F* fLambdaMCResPhi; //! Lambda Assoc: phi resolution
325 TH3F* fLambdaMCResPt; //! Lambda Assoc: pt resolution
326 TH3F* fLambdaPosMCResEta; //! Lambda Pos. Daughter: eta resolution
327 TH3F* fLambdaPosMCResPhi; //! Lambda Pos. Daughter: phi resolution
328 TH3F* fLambdaPosMCResPt; //! Lambda Pos. Daughter: pt resolution
329 TH3F* fLambdaNegMCResEta; //! Lambda Neg. Daughter: eta resolution
330 TH3F* fLambdaNegMCResPhi; //! Lambda Neg. Daughter: phi resolution
331 TH3F* fLambdaNegMCResPt; //! Lambda Neg. Daughter: pt resolution
334 TH1F* fAntiLambdaMCPt; //! AntiLambda MC: pt
335 TH3F* fAntiLambdaMCPtRap; //! AntiLambda MC: pt vs rapidity
336 TH3F* fAntiLambdaMCPtRap2; //! AntiLambda MC: pt vs rapidity (is Natural)
337 TH3F* fAntiLambdaMCPtRapVtx[kNCent]; //! AntiLambda MC: pt vs rapidity vs Z vtx position
338 TH3F* fAntiLambdaMCPtRapEmbeded; //! AntiLambda MC: pt vs rapidity (embeded particles)
339 TH3F* fAntiLambdaMCPtRapVtxEmbeded[kNCent]; //! AntiLambda MC: pt vs rapidity vs Z vtx position
340 THnSparse* fAntiLambdaMCPtRapPtDaugPt[kNCent]; //! AntiLambda MC: pt vs rapidity vs transverse momemtum of daughters
341 THnSparse* fAntiLambdaMCPtRapPtDaugPtEmbeded[kNCent]; //! AntiLambda MC: pt vs rapidity vs transverse momemtum of daughters
342 TH2F* fAntiLambdaMCFromXi; //! AntiLambda MC: coming from Xi
343 TH3F* fAntiLambdaMCPtPhiEta[kNCent]; //! AntiLambda MC: pt vs pseudo-rapidity
345 TH1F* fAntiLambdaAssocPt; //! AntiLambda Assoc: pt
346 TH3F* fAntiLambdaAssocPtRap; //! AntiLambda Assoc: pt vs rapidity vscentrality
347 TH2F* fAntiLambdaAssocFromXi; //! AntiLambda Assoc: coming from Xi
348 TH3F* fAntiLambdaAssocPtPhiEta[kNCent]; //! AntiLambda Assoc: pt vs pseudo-rapidity
350 THnSparse* fAntiLambdaAssocMassPtRap[kNCent]; //! AntiLambda Assoc: mass vs pt vs rapidity
351 THnSparse* fAntiLambdaAssocMassPtRap2[kNCent]; //! AntiLambda Assoc: mass vs pt vs rapidity (wo Cross contamination)
352 THnSparse* fAntiLambdaAssocMassPtVtx[kNCent]; //! AntiLambda Assoc: mass vs pt vs Z vtx position
353 THnSparse* fAntiLambdaAssocMassPtDCADaug[kNCent]; //! AntiLambda Assoc: mass vs pt vs Dca between daughters
354 THnSparse* fAntiLambdaAssocMassPtCPA[kNCent]; //! AntiLambda Assoc: mass vs pt vs cpa
355 THnSparse* fAntiLambdaAssocMassPtDCAPV[kNCent]; //! AntiLambda Assoc: mass vs pt vs dca to prim. vtx
356 THnSparse* fAntiLambdaAssocMassPtDaugNClsTPC[kNCent]; //! AntiLambda Assoc: mass vs pt vs num. of tpc clusters
357 THnSparse* fAntiLambdaAssocMassPtShTPCcls[kNCent]; //! AntiLambda Assoc: mass vs pt vs fraction of shared TPC cls
358 THnSparse* fAntiLambdaAssocMassPtDaugPt[kNCent]; //! AntiLambda Assoc: mass vs pt vs transverse momemtum of daughters
359 THnSparse* fAntiLambdaAssocMassPtCtau[kNCent]; //! AntiLambda Assoc: mass vs pt vs proper time of life
360 THnSparse* fAntiLambdaAssocMassPtFidVolume[kNCent]; //! AntiLambda Assoc: mass vs pt vs fiducial volume
362 THnSparse* fAntiLambdaAssocMassPtRapEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs rapidity (embeded)
363 THnSparse* fAntiLambdaAssocMassPtRapEmbeded2[kNCent]; //! AntiLambda Assoc: mass vs pt vs rapidity (wo Cross contamination) (embeded)
364 THnSparse* fAntiLambdaAssocMassPtVtxEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs Z vtx. position (embeded particles)
365 THnSparse* fAntiLambdaAssocMassPtDCADaugEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs dca between daughters (embeded particles)
366 THnSparse* fAntiLambdaAssocMassPtCPAEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs cpa (embeded particles)
367 THnSparse* fAntiLambdaAssocMassPtDCAPVEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs dca to prim. vtx (embeded particles)
368 THnSparse* fAntiLambdaAssocMassPtDaugNClsTPCEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs num. of tpc clusters (embeded particles)
369 THnSparse* fAntiLambdaAssocMassPtShTPCclsEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs fraction of shared TPC cls
370 THnSparse* fAntiLambdaAssocMassPtDaugPtEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs transverse momemtum of daughters
371 THnSparse* fAntiLambdaAssocMassPtCtauEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs proper time of life
372 THnSparse* fAntiLambdaAssocMassPtFidVolumeEmbeded[kNCent]; //! AntiLambda Assoc: mass vs pt vs fiducial volume
375 TH3F* fAntiLambdaMCResEta; //! AntiLambda Assoc: eta resolution
376 TH3F* fAntiLambdaMCResPhi; //! AntiLambda Assoc: phi resolution
377 TH3F* fAntiLambdaMCResPt; //! AntiLambda Assoc: pt resolution
378 TH3F* fAntiLambdaPosMCResEta; //! AntiLambda Pos. Daughter: eta resolution
379 TH3F* fAntiLambdaPosMCResPhi; //! AntiLambda Pos. Daughter: phi resolution
380 TH3F* fAntiLambdaPosMCResPt; //! AntiLambda Pos. Daughter: pt resolution
381 TH3F* fAntiLambdaNegMCResEta; //! AntiLambda Neg. Daughter: eta resolution
382 TH3F* fAntiLambdaNegMCResPhi; //! AntiLambda Neg. Daughter: phi resolution
383 TH3F* fAntiLambdaNegMCResPt; //! AntiLambda Neg. Daughter: pt resolution
387 /// ====== Histograms for Correlations ====== ///
389 TH3F* fHistArmenterosPodolanski; //! Armenteros-Podolanski plot inside 3 sigma of the signal
390 TH3F* fHistArmPodBckg; //! Armenteros-Podolanski plot outside 3 sigma of the signal
393 TH3F* fK0sMass; //! Mass for K0s
394 TH3F* fK0sMassEmbeded; //! Mass for K0s embeded
395 TH3F* fK0sMassPtEta; //! K0s: mass vs pt vs eta
396 TH3F* fK0sMassPtRap[kNCent]; //! K0s: mass vs pt vs rap vs centrality
397 TH3F* fK0sMassPtPhi; //! K0s: mass vs pt vs phi
398 TH3F* fK0sPosDaugFracShTPCcls; //! K0s Pos. Daug: mass vs pt vs fraction of shared TPC cls
399 TH3F* fK0sNegDaugFracShTPCcls; //! K0s Neg Daug: mass vs pt vs fraction of shared TPC cls
401 TH2F* fK0sDaughtersPt; //! K0s: pt of daughters
402 THnSparse* fK0sPosDaugdPhiSdEtaS[kNCent]; //! K0s: Positive daughter: delta(phi)* delta(eta)*
403 THnSparse* fK0sNegDaugdPhiSdEtaS[kNCent]; //! K0s: Negative daughter: delta(phi)* delta(eta)*
404 THnSparse* fK0sPosDaugSplCheckCovMat[kNCent]; //! K0s: Check Covariance Matrix elemenets between trigger trcak and daughter track
405 THnSparse* fK0sNegDaugSplCheckCovMat[kNCent]; //! K0s: Check Covariance Matrix elemenets between trigger trcak and daughter track
406 THnSparse* fK0sPosMCResdEtaSdPhiS[kNCent]; //! K0s: Positive daughter: resolution for delta(phi)* delta(eta)*
407 THnSparse* fK0sNegMCResdEtaSdPhiS[kNCent]; //! K0s: Negative daughter: resolution for delta(phi)* delta(eta)*
408 TH3F* fK0sPosDaugFracShTPCclsTrig; //! K0s Pos. Daug: mass vs pt vs fraction of shared TPC cls
409 TH3F* fK0sNegDaugFracShTPCclsTrig; //! K0s Neg Daug: mass vs pt vs fraction of shared TPC cls
410 TH3F* fK0sDCADaugToPrimVtx; //! K0s: DCA to primary vertex of daughters vs leading particle's pt inside a radio wrt the near-side peak
411 TH3F* fK0sSpatialRes; //! K0s: Spatial resolution
413 TH3F* fK0sdPhidEtaMC[kNCent*kN1]; //! K0s MC: Delta phi,Delta eta vs Z vertex position
414 TH3F* fK0sdPhidEtaPtL[kNVtxZ*kNCent*kN1]; //! K0s: Delta phi,Delta eta vs Z vertex position
415 //TH3F* fK0sdPhidEtaPtLBckg[kNCent*kN1]; //! K0s background: Delta phi,Delta eta vs Z vertex position
417 TH2F* fK0sBckgDecLength; //! K0s background: Decay lenght vs leading particle's pt inside a radio wrt the near-side peak
418 TH3F* fK0sBckgDCADaugToPrimVtx; //! K0s background: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
419 TH2F* fK0sBckgEtaPhi; //! K0s background: Phi vs Eta inside a radio wrt the near-side peak
420 TH2F* fK0sBckgPhiRadio; //! K0s background: Phi vs radio inside a radio wrt the near-side peak
421 TH2F* fK0sBckgDCANegDaugToPrimVtx; //! K0s background: DCA of Negative daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
422 TH2F* fK0sBckgDCAPosDaugToPrimVtx; //! K0s background: DCA of Positive daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
423 TH2F* fV0MassCascade; //! V0s candiates: Possible mismatching of tracks due to cascades decays
427 TH3F* fLambdaMass; //! Mass for Lambda
428 TH3F* fLambdaMassEmbeded; //! Mass for Lambda embeded
429 TH3F* fLambdaMass2; //! Mass for Lambda (rejecting crosscontamination)
430 TH3F* fLambdaMass2Embeded; //! Mass for Lambda embded (rejecting crosscontamination)
431 TH3F* fLambdaMassPtEta; //! Lambda: mass vs pt vs eta
432 TH3F* fLambdaMassPtRap[kNCent]; //! Lambda: mass vs pt vs rap
433 TH3F* fLambdaMassPtPhi; //! Lambda: mass vs pt vs phi
434 TH3F* fLambdaPosDaugFracShTPCcls; //! Lambda Pos. Daug: mass vs pt vs fraction of shared TPC cls
435 TH3F* fLambdaNegDaugFracShTPCcls; //! Lambda Neg Daug: mass vs pt vs fraction of shared TPC cls
437 TH2F* fLambdaDaughtersPt; //! Lambda: pt of daughters
438 THnSparse* fLambdaPosDaugdPhiSdEtaS[kNCent]; //! Lambda:Positive daughter: delta(phi)* delta(eta)*
439 THnSparse* fLambdaNegDaugdPhiSdEtaS[kNCent]; //! Lambda: Negative daughter: delta(phi)* delta(eta)*
440 THnSparse* fLambdaPosDaugSplCheckCovMat[kNCent]; //! Lambda: Check Covariance Matrix elemenets between trigger trcak and daughter track
441 THnSparse* fLambdaNegDaugSplCheckCovMat[kNCent]; //! Lambda: Check Covariance Matrix elemenets between trigger trcak and daughter track
442 THnSparse* fLambdaPosMCResdEtaSdPhiS[kNCent]; //! Lambda: Positive daughter: resolution for delta(phi)* delta(eta)*
443 THnSparse* fLambdaNegMCResdEtaSdPhiS[kNCent]; //! Lambda: Negative daughter: resolution for delta(phi)* delta(eta)*
444 TH3F* fLambdaPosDaugFracShTPCclsTrig; //! Lambda Pos. Daug: mass vs pt vs fraction of shared TPC cls
445 TH3F* fLambdaNegDaugFracShTPCclsTrig; //! Lambda Neg Daug: mass vs pt vs fraction of shared TPC cls
446 TH3F* fLambdaDCADaugToPrimVtx; //! Lambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
447 TH3F* fLambdaSpatialRes; //! Lambda: Spatial resolution
449 TH3F* fLambdadPhidEtaMC[kNCent*kN1]; //! Lambda MC: Delta phi,Delta eta vs Z vertex position
450 TH3F* fLambdadPhidEtaPtL[kNVtxZ*kNCent*kN1]; //! Lambda: Delta phi,Delta eta vs Z vertex position
451 //TH3F* fLambdadPhidEtaPtLBckg[kNCent*kN1]; //! Lambda background: Delta phi,Delta eta vs Z vertex position
454 TH2F* fLambdaBckgDecLength; //! Lambda background: Decay lenght vs leading particle's pt inside a radio wrt the near-side peak
455 TH3F* fLambdaBckgDCADaugToPrimVtx; //! Lambda background: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
456 TH2F* fLambdaBckgEtaPhi; //! Lambda background: Phi vs Eta inside a radio wrt the near-side peak
457 TH2F* fLambdaBckgPhiRadio ; //! Lambda background: Phi vs radio inside a radio wrt the near-side peak
458 TH2F* fLambdaBckgDCANegDaugToPrimVtx; //! Lambda background: DCA of Negative daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
459 TH2F* fLambdaBckgDCAPosDaugToPrimVtx; //! Lambda background: DCA of Positive daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
463 TH3F* fAntiLambdaMass; //! Mass for AntiLambda
464 TH3F* fAntiLambdaMassEmbeded; //! Mass for AntiLambda embeded
465 TH3F* fAntiLambdaMass2; //! Mass for AntiLambda (rejecting crosscontamination)
466 TH3F* fAntiLambdaMass2Embeded; //! Mass for AntiLambda embded (rejecting crosscontamination)
468 TH3F* fAntiLambdaMassPtEta; //! AntiLambda: pt vs eta
469 TH3F* fAntiLambdaMassPtRap[kNCent]; //! AntiLambda: pt vs rap
470 TH3F* fAntiLambdaMassPtPhi; //! AntiLambda: mass vs phi
471 TH3F* fAntiLambdaPosDaugFracShTPCcls; //! AntiLambda Pos. Daug: mass vs pt vs fraction of shared TPC cls
472 TH3F* fAntiLambdaNegDaugFracShTPCcls; //! AntiLambda Neg Daug: mass vs pt vs fraction of shared TPC cls
474 TH2F* fAntiLambdaDaughtersPt; //! AntiLambda: pt of daughters
475 THnSparse* fAntiLambdaPosDaugdPhiSdEtaS[kNCent]; //! AntiLambda: Positive daughter: delta(phi)* delta(eta)*
476 THnSparse* fAntiLambdaNegDaugdPhiSdEtaS[kNCent]; //! AntiLambda: Negative daughter: delta(phi)* delta(eta)*
477 THnSparse* fAntiLambdaPosDaugSplCheckCovMat[kNCent]; //! AntiLambda: Check Covariance Matrix elemenets between trigger trcak and daughter track
478 THnSparse* fAntiLambdaNegDaugSplCheckCovMat[kNCent]; //! AntiLambda: Check Covariance Matrix elemenets between trigger trcak and daughter track
479 THnSparse* fAntiLambdaPosMCResdEtaSdPhiS[kNCent]; //! AntiLambda: Positive daughter: resolution for delta(phi)* delta(eta)*
480 THnSparse* fAntiLambdaNegMCResdEtaSdPhiS[kNCent]; //! AntiLambda: Negative daughter: resolution for delta(phi)* delta(eta)*
481 TH3F* fAntiLambdaPosDaugFracShTPCclsTrig; //! AntiLambda Pos. Daug: mass vs pt vs fraction of shared TPC cls
482 TH3F* fAntiLambdaNegDaugFracShTPCclsTrig; //! AntiLambda Neg Daug: mass vs pt vs fraction of shared TPC cls
483 TH3F* fAntiLambdaDCADaugToPrimVtx; //! AntiLambda: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
484 TH3F* fAntiLambdaSpatialRes; //! AntiLambda: Spatial resolution
486 TH3F* fAntiLambdadPhidEtaMC[kNCent*kN1]; //! AntiLambda MC: Delta phi,Delta eta vs Z vertex position
487 TH3F* fAntiLambdadPhidEtaPtL[kNVtxZ*kNCent*kN1]; //! AntiLambda: Delta phi,Delta eta vs pt of the leading particle
488 //TH3F* fAntiLambdadPhidEtaPtLBckg[kNCent*kN1]; //! AntiLambda background: Delta phi,Delta eta vs Z vertex position
490 TH2F* fAntiLambdaBckgDecLength; //! AntiLambda background: Decay lenght vs leading particle's pt inside a radio wrt the near-side peak
491 TH3F* fAntiLambdaBckgDCADaugToPrimVtx; //! AntiLambda background: DCA to primary vrtex of daughters vs leading particle's pt inside a radio wrt the near-side peak
492 TH2F* fAntiLambdaBckgEtaPhi; //! AntiLambda background: Phi vs Eta inside a radio wrt the near-side peak
493 TH2F* fAntiLambdaBckgPhiRadio ; //! AntiLambda background: Phi vs radio inside a radio wrt the near-side peak
494 TH2F* fAntiLambdaBckgDCANegDaugToPrimVtx; //! AntiLambda background: DCA of Negative daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
495 TH2F* fAntiLambdaBckgDCAPosDaugToPrimVtx; //! AntiLambda background: DCA of Positive daughter to the primary vertex inside the radio 0.4 wrt the near-side peak
498 /// ==== Quality Assurance plots === ///
501 TH2F* fK0sPtPosDaug; //! K0s: Pos. pt
502 TH2F* fK0sPtNegDaug; //! K0s: Neg. pt
503 TH2F* fK0sBckgPtPosDaug; //! K0s Bckg: Pos. pt
504 TH2F* fK0sBckgPtNegDaug; //! K0s Bckg: Neg. pt
506 TH3F* fK0sPhiEtaPosDaug; //! K0s: Pos. track phi vs eta
507 TH3F* fK0sPhiEtaNegDaug; //! K0s: Neg. track phi vs eta
508 TH3F* fK0sBckgPhiEtaPosDaug; //! K0s Bckg: Pos. track phi vs eta
509 TH3F* fK0sBckgPhiEtaNegDaug; //! K0s Bckg: Neg. track phi vs eta
511 TH2F* fK0sDCAPosDaug; //! K0s: Pos. track DCA to primary vertex
512 TH2F* fK0sDCANegDaug; //! K0s: Neg. track DCA to primary vertex
513 TH2F* fK0sBckgDCAPosDaug; //! K0s Bckg: Pos. track DCA to primary vertex
514 TH2F* fK0sBckgDCANegDaug; //! K0s Bckg: Neg. track DCA to primary vertex
516 TH3F* fK0sDecayPos; //! K0s: 2D decay position
517 TH3F* fK0sBckgDecayPos; //! K0s Bckg: 2D decay position
518 TH2F* fK0sDecayVertex; //! K0s: decay lenght
519 TH2F* fK0sBckgDecayVertex; //! K0s Bckg: decay lenght
521 TH2F* fK0sCPA; //! K0s: cosine of the pointing angle
522 TH2F* fK0sBckgCPA; //! K0s Bckg: cosine of the pointing angle
523 TH2F* fK0sDCAV0Daug; //! K0s: distance of the closest approach to the primary vertex
524 TH2F* fK0sBckgDCAV0Daug; //! K0s Bckg: distance of the closest approach to the primary vertex
526 TH3F* fK0sNClustersTPC; //! K0s: Numbers of TPC clusters of the daughter tracks
527 TH3F* fK0sBckgNClustersTPC; //! K0s Bckg: Numbers of TPC clusters of the daughter tracks
528 TH3F* fK0sNClustersITSPos; //! K0s: Pos. Daug. Numbers of ITS clusters of the daughter tracks
529 TH3F* fK0sNClustersITSNeg; //! K0s: Neg. Daug. Numbers of ITS clusters of the daughter tracks
530 TH3F* fK0sBckgNClustersITSPos; //! K0s Bckg: Pos. Daug. Numbers of ITS clusters of the daughter tracks
531 TH3F* fK0sBckgNClustersITSNeg; //! K0s Bckg: Neg. Daug. Numbers of ITS clusters of the daughter tracks
535 TH2F* fLambdaPtPosDaug; //! Lambda: Pos. pt
536 TH2F* fLambdaPtNegDaug; //! Lambda: Neg. pt
537 TH2F* fLambdaBckgPtPosDaug; //! Lambda Bckg: Pos. pt
538 TH2F* fLambdaBckgPtNegDaug; //! Lambda Bckg: Neg. pt
540 TH3F* fLambdaPhiEtaPosDaug; //! Lambda: Pos. track phi vs eta
541 TH3F* fLambdaPhiEtaNegDaug; //! Lambda: Neg. track phi vs eta
542 TH3F* fLambdaBckgPhiEtaPosDaug; //! Lambda Bckg: Pos. track phi vs eta
543 TH3F* fLambdaBckgPhiEtaNegDaug; //! Lambda Bckg: Neg. track phi vs eta
545 TH2F* fLambdaDCAPosDaug; //! Lambda: Pos. track DCA to primary vertex
546 TH2F* fLambdaDCANegDaug; //! Lambda: Neg. track DCA to primary vertex
547 TH2F* fLambdaBckgDCAPosDaug; //! Lambda Bckg: Pos. track DCA to primary vertex
548 TH2F* fLambdaBckgDCANegDaug; //! Lambda Bckg: Neg. track DCA to primary vertex
550 TH3F* fLambdaDecayPos; //! Lambda: 2D decay position
551 TH3F* fLambdaBckgDecayPos; //! Lambda Bckg: 2D decay position
552 TH2F* fLambdaDecayVertex; //! Lambda: decay lenght
553 TH2F* fLambdaBckgDecayVertex; //! Lambda Bckg: decay lenght
555 TH2F* fLambdaCPA; //! Lambda: cosine of the pointing angle
556 TH2F* fLambdaBckgCPA; //! Lambda Bckg: cosine of the pointing angle
557 TH2F* fLambdaDCAV0Daug; //! Lambda: distance of the closest approach to the primary vertex
558 TH2F* fLambdaBckgDCAV0Daug; //! Lambda Bckg: distance of the closest approach to the primary vertex
560 TH3F* fLambdaNClustersTPC; //! Lambda: Numbers of TPC clusters of the daughter tracks
561 TH3F* fLambdaBckgNClustersTPC; //! Lambda Bckg: Numbers of TPC clusters of the daughter tracks
562 TH3F* fLambdaNClustersITSPos; //! Lambda: Pos. Daug. Numbers of ITS clusters of the daughter tracks
563 TH3F* fLambdaNClustersITSNeg; //! Lambda: Neg. Daug. Numbers of ITS clusters of the daughter tracks
564 TH3F* fLambdaBckgNClustersITSPos; //! Lambda Bckg: Pos. Daug. Numbers of ITS clusters of the daughter tracks
565 TH3F* fLambdaBckgNClustersITSNeg; //! Lambda Bckg: Neg. Daug. Numbers of ITS clusters of the daughter tracks
569 TH2F* fAntiLambdaPtPosDaug; //! AntiLambda: Pos. pt
570 TH2F* fAntiLambdaPtNegDaug; //! AntiLambda: Neg. pt
571 TH2F* fAntiLambdaBckgPtPosDaug; //! AntiLambda Bckg: Pos. pt
572 TH2F* fAntiLambdaBckgPtNegDaug; //! AntiLambda Bckg: Neg. pt
574 TH3F* fAntiLambdaPhiEtaPosDaug; //! AntiLambda: Pos. track phi vs eta
575 TH3F* fAntiLambdaPhiEtaNegDaug; //! AntiLambda: Neg. track phi vs eta
576 TH3F* fAntiLambdaBckgPhiEtaPosDaug; //! AntiLambda Bckg: Pos. track phi vs eta
577 TH3F* fAntiLambdaBckgPhiEtaNegDaug; //! AntiLambda Bckg: Neg. track phi vs eta
579 TH2F* fAntiLambdaDCAPosDaug; //! AntiLambda: Pos. track DCA to primary vertex
580 TH2F* fAntiLambdaDCANegDaug; //! AntiLambda: Neg. track DCA to primary vertex
581 TH2F* fAntiLambdaBckgDCAPosDaug; //! AntiLambda Bckg: Pos. track DCA to primary vertex
582 TH2F* fAntiLambdaBckgDCANegDaug; //! AntiLambda Bckg: Neg. track DCA to primary vertex
584 TH3F* fAntiLambdaDecayPos; //! AntiLambda: 2D decay position
585 TH3F* fAntiLambdaBckgDecayPos; //! AntiLambda Bckg: 2D decay position
586 TH2F* fAntiLambdaDecayVertex; //! AntiLambda: decay lenght
587 TH2F* fAntiLambdaBckgDecayVertex; //! AntiLambda Bckg: decay lenght
589 TH2F* fAntiLambdaCPA; //! AntiLambda: cosine of the pointing angle
590 TH2F* fAntiLambdaBckgCPA; //! AntiLambda Bckg: cosine of the pointing angle
591 TH2F* fAntiLambdaDCAV0Daug; //! AntiLambda: distance of the closest approach to the primary vertex
592 TH2F* fAntiLambdaBckgDCAV0Daug; //! AntiLambda Bckg: distance of the closest approach to the primary vertex
594 TH3F* fAntiLambdaNClustersTPC; //! AntiLambda: Numbers of TPC clusters of the daughter tracks
595 TH3F* fAntiLambdaBckgNClustersTPC; //! AntiLambda Bckg: Numbers of TPC clusters of the daughter tracks
596 TH3F* fAntiLambdaNClustersITSPos; //! AntiLambda: Pos. Daug. Numbers of ITS clusters of the daughter tracks
597 TH3F* fAntiLambdaNClustersITSNeg; //! AntiLambda: Neg. Daug. Numbers of ITS clusters of the daughter tracks
598 TH3F* fAntiLambdaBckgNClustersITSPos; //! AntiLambda Bckg: Pos. Daug. Numbers of ITS clusters of the daughter tracks
599 TH3F* fAntiLambdaBckgNClustersITSNeg; //! AntiLambda Bckg: Neg. Daug. Numbers of ITS clusters of the daughter tracks
602 /// ==== Mixed Events plots === ///
603 TH3F* fK0sdPhidEtaME[kNVtxZ*kNCent*kN1+1]; //! K0s Mixed Events
604 TH3F* fLambdadPhidEtaME[kNVtxZ*kNCent*kN1+1]; //! Lambda Mixed Events
605 TH3F* fAntiLambdadPhidEtaME[kNVtxZ*kNCent*kN1+1]; //! AntiLambda Mixed Events
607 ClassDef(AliAnalysisTaskLambdaOverK0sJets,1);
613 Based on AliV0ChBasicParticle class of AliAnalysisTaskV0ChCorrelations.
614 Keeps basic information to reduce memory consumption for event mixing.
616 class AliMiniParticle : public AliVParticle
619 AliMiniParticle(Float_t centrality, Float_t vtxZ, Int_t id,Double_t pt, Double_t phi,
620 Double_t eta, Int_t negDaugMC, Int_t posDaugMC, Short_t candidate)
621 :fCentrality(centrality), fVtxZ(vtxZ), fId(id), fPt(pt),
622 fPhi(phi), fEta(eta), fNegDaugMC(negDaugMC), fPosDaugMC(posDaugMC), fCandidate(candidate)
626 virtual ~AliMiniParticle() {}
629 virtual Float_t Centrality() const { return fCentrality; }
630 virtual Float_t VtxZ() const { return fVtxZ; }
632 virtual Int_t ID() const { return fId; }
634 virtual Double_t Px() const { AliFatal("Not implemented"); return 0; }
635 virtual Double_t Py() const { AliFatal("Not implemented"); return 0; }
636 virtual Double_t Pz() const { AliFatal("Not implemented"); return 0; }
638 virtual Double_t Pt() const { return fPt; }
639 virtual Double_t P() const { AliFatal("Not implemented"); return 0; }
640 virtual Bool_t PxPyPz(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
642 virtual Double_t Xv() const { AliFatal("Not implemented"); return 0; }
643 virtual Double_t Yv() const { AliFatal("Not implemented"); return 0; }
644 virtual Double_t Zv() const { AliFatal("Not implemented"); return 0; }
645 virtual Bool_t XvYvZv(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
647 virtual Double_t OneOverPt() const { AliFatal("Not implemented"); return 0; }
649 virtual Double_t Phi() const { return fPhi; }
650 virtual Double_t Theta() const { AliFatal("Not implemented"); return 0; }
651 virtual Double_t E() const { AliFatal("Not implemented"); return 0; }
652 virtual Double_t M() const { AliFatal("Not implemented"); return 0; }
654 virtual Double_t Eta() const { return fEta; }
655 virtual Double_t Y() const { AliFatal("Not implemented"); return 0; }
657 virtual Short_t Charge() const { AliFatal("Not implemented"); return 0; }
658 virtual Int_t GetLabel() const { AliFatal("Not implemented"); return 0; }
660 virtual Int_t PdgCode() const { AliFatal("Not implemented"); return 0; }
661 virtual const Double_t *PID() const { AliFatal("Not implemented"); return 0; }
662 virtual Int_t NegDaugMCLabel() const { return fNegDaugMC; }
663 virtual Int_t PosDaugMCLabel() const { return fPosDaugMC; }
664 virtual Short_t WhichCandidate() const { return fCandidate; }
667 Float_t fCentrality; // centrality of the event
668 Float_t fVtxZ; // vertex postition in the event
669 Int_t fId; // ID related either to AliAODtrack or AliAODv0
673 Int_t fNegDaugMC; // MC origin of negative daughter
674 Int_t fPosDaugMC; // MC origin of positive daughter
675 Short_t fCandidate; // Candidate: 0-Not trigger, 1-Trigger, 2-Gamma Conversion, 3-K0s candidates, 4-Lambda candidates, 5-AntiLambda candidates
677 ClassDef( AliMiniParticle, 1); // class required for event mixing