1 #ifndef ALIANALYSISTASKCHECKCASCADE_H
2 #define ALIANALYSISTASKCHECKCASCADE_H
4 /* See cxx source for full Copyright notice */
6 //-----------------------------------------------------------------
7 // AliAnalysisTaskCheckCascade class
8 // (AliAnalysisTaskCheckCascade)
9 // This task is for QAing the Cascades from ESD and AOD
10 // Origin: AliAnalysisTaskESDCheckV0 by B.H. Nov2007, hippolyt@in2p3.fr
11 // Adapted to Cascade : A.M Mar2008, antonin.maire@ires.in2p3.fr
12 //-----------------------------------------------------------------
21 #include "AliAnalysisTaskSE.h"
23 class AliAnalysisTaskCheckCascade : public AliAnalysisTaskSE {
25 AliAnalysisTaskCheckCascade();
26 AliAnalysisTaskCheckCascade(const char *name);
27 virtual ~AliAnalysisTaskCheckCascade() {}
29 virtual void UserCreateOutputObjects();
30 virtual void UserExec(Option_t *option);
31 virtual void Terminate(Option_t *);
33 void SetCollidingSystem(Short_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
34 void SetAnalysisType (const char* analysisType = "ESD") {fAnalysisType = analysisType;}
37 TString fAnalysisType; // "ESD" or "AOD" analysis type
38 Short_t fCollidingSystems; // 0 = pp collisions or 1 = AA collisions
41 TList *fListHistCascade; //! List of Cascade histograms
43 // - General histos (filled for any event)
44 TH1F *fHistTrackMultiplicity; //! Track multiplicity distribution
45 TH1F *fHistCascadeMultiplicity; //! Cascade multiplicity distribution
49 TH1F *fHistVtxStatus; //! Is there a tracking vertex in the event ?
51 // Vtx coming from the full tracking
52 TH1F *fHistPosTrkgPrimaryVtxX; //! primary vertex position distribution in x
53 TH1F *fHistPosTrkgPrimaryVtxY; //! primary vertex position distribution in y
54 TH1F *fHistPosTrkgPrimaryVtxZ; //! primary vertex position distribution in z
55 TH1F *fHistTrkgPrimaryVtxRadius; //! primary vertex (3D) radius distribution
57 // Best primary Vtx available for the event
58 TH1F *fHistPosBestPrimaryVtxX; //! (best) primary vertex position distribution in x
59 TH1F *fHistPosBestPrimaryVtxY; //! (best) primary vertex position distribution in y
60 TH1F *fHistPosBestPrimaryVtxZ; //! (best) primary vertex position distribution in z
61 TH1F *fHistBestPrimaryVtxRadius; //! (best) primary vertex radius distribution
63 // Correlation Best Vtx / Full Tracking Vtx
64 TH2F *f2dHistTrkgPrimVtxVsBestPrimVtx; //! Radius of prim. Vtx from tracks Vs Radius of best Prim. Vtx
68 // - Typical histos on the variables used for the selection of cascades
69 TH1F *fHistEffMassXi; //! reconstructed cascade effective mass
70 TH1F *fHistChi2Xi; //! chi2 value
71 TH1F *fHistDcaXiDaughters; //! dca between Xi's daughters
72 TH1F *fHistDcaBachToPrimVertex; //! dca of the bachelor track to primary vertex
73 TH1F *fHistXiCosineOfPointingAngle; //! cosine of Xi pointing angle in a cascade
74 TH1F *fHistXiRadius; //! (transverse) radius of the cascade vertex
76 // - Histos about ~ the "V0 selection part" of the cascade, coming by inheritance from AliESDv0
77 TH1F *fHistMassLambdaAsCascDghter; //! Test Invariant Mass of Lambda coming from Cascade
78 TH1F *fHistV0Chi2Xi; //! V0 chi2 distribution, for the V0 associated to a cascade
79 TH1F *fHistDcaV0DaughtersXi; //! Dca between V0 daughters, for the V0 associated to a cascade
80 TH1F *fHistDcaV0ToPrimVertexXi; //! Dca of V0 to primary vertex, for the V0 associated to a cascade
81 TH1F *fHistV0CosineOfPointingAngleXi; //! Cosine of V0 pointing angle, for the V0 associated to a cascade
82 TH1F *fHistV0RadiusXi; //! V0 (transverse) distance distribution, for the V0 associated to a cascade
84 TH1F *fHistDcaPosToPrimVertexXi; //! Dca of V0 positive daughter to primary vertex, for the V0 associated to a cascade
85 TH1F *fHistDcaNegToPrimVertexXi; //! Dca of V0 negative daughter to primary vertex, for the V0 associated to a cascade
88 // - Effective mass histos for cascades.
89 TH1F *fHistMassXiMinus; //! reconstructed cascade effective mass, under Xi- hyp.
90 TH1F *fHistMassXiPlus; //! reconstructed cascade effective mass, under Xi+ hyp.
91 TH1F *fHistMassOmegaMinus; //! reconstructed cascade effective mass, under Omega- hyp.
92 TH1F *fHistMassOmegaPlus; //! reconstructed cascade effective mass, under Omega+ hyp.
94 // - Complements for QA
95 TH1F *fHistXiTransvMom; //! Xi transverse momentum
96 TH1F *fHistXiTotMom; //! Xi momentum norm
98 TH1F *fHistBachTransvMom; //! bachelor transverse momentum
99 TH1F *fHistBachTotMom; //! bachelor momentum norm
101 TH1F *fHistChargeXi; //! Charge sign of the cascade candidate
102 TH1F *fHistV0toXiCosineOfPointingAngle; //! Cos. of Pointing angle between the V0 mom and the Xi-V0 vtx line
104 TH1F *fHistRapXi; //! rapidity of Xi candidates
105 TH1F *fHistRapOmega; //! rapidity of Omega candidates
106 TH1F *fHistEta; //! eta distrib. of all the cascade candidates
107 TH1F *fHistTheta; //! theta distrib. of all the cascade candidates
108 TH1F *fHistPhi; //! phi distrib. of all the cascade candidates
110 TH2F *f2dHistArmenteros; //! alpha(casc. cand.) Vs PtArm(casc. cand.)
112 TH2F *f2dHistEffMassLambdaVsEffMassXiMinus; //! Xi- Eff mass Vs V0 Eff mass, under Xi- hyp.
113 TH2F *f2dHistEffMassXiVsEffMassOmegaMinus; //! Xi- Eff mass Vs Omega- Eff mass, for negative cascades
114 TH2F *f2dHistEffMassLambdaVsEffMassXiPlus; //! Xi+ Eff mass Vs V0 Eff mass, under Xi+ hyp.
115 TH2F *f2dHistEffMassXiVsEffMassOmegaPlus; //! Xi+ Eff mass Vs Omega+ Eff mass, for positive cascades
117 TH2F *f2dHistXiRadiusVsEffMassXiMinus; //! transv. casc. decay radius Vs Xi- Eff mass, under Xi- hyp.
118 TH2F *f2dHistXiRadiusVsEffMassXiPlus; //! transv. casc. decay radius Vs Xi+ Eff mass, under Xi+ hyp.
120 AliAnalysisTaskCheckCascade(const AliAnalysisTaskCheckCascade&); // not implemented
121 AliAnalysisTaskCheckCascade& operator=(const AliAnalysisTaskCheckCascade&); // not implemented
123 ClassDef(AliAnalysisTaskCheckCascade, 3);