1 #ifndef ALIANALYSISTASKPERFORMANCESTRANGE_H
2 #define ALIANALYSISTASKPERFORMANCESTRANGE_H
4 /* See cxx source for full Copyright notice */
6 //-----------------------------------------------------------------
7 // AliAnalysisTaskPerformanceSrange class
8 // This task is for a performance study of V0 identification.
9 // It works with MC info and ESD tree.
10 // Author: H.Ricaud, H.Ricaud@gsi.de
11 //-----------------------------------------------------------------
18 class AliAnalysisCentralitySelector;
20 #include "AliAnalysisTaskSE.h"
22 class AliAnalysisTaskPerformanceStrange : public AliAnalysisTaskSE {
24 AliAnalysisTaskPerformanceStrange();
25 AliAnalysisTaskPerformanceStrange(const char *name);
26 virtual ~AliAnalysisTaskPerformanceStrange(); // Destructor implemented by Kalinak
28 virtual void UserCreateOutputObjects();
29 virtual void UserExec(Option_t *option);
30 virtual void Terminate(Option_t *);
32 void SetCollidingSystems(Int_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
33 void SetAnalysisMC(Bool_t analysisMC) {fAnalysisMC = analysisMC;}
34 void SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
35 void SetUsePID(const char* usePID) {fUsePID = usePID;}
36 void SetAnalysisCut(const char* useCut) {fUseCut = useCut;}
37 void SetCentralityRange(Int_t down, Int_t up) {fDown=down; fUp = up;}
38 void SetTrackCuts(AliESDtrackCuts * myTracksCuts) { fTracksCuts = myTracksCuts;}
39 void SetCentralitySelector(AliAnalysisCentralitySelector * centr) { fCentrSelector = centr;}
40 void SetQASelector(Bool_t QA = 0) { fQASelector = QA;}
41 Double_t MyRapidity(Double_t rE, Double_t rPz) const;
44 Double_t fCuts[7]; //! V0 finding cuts
45 Bool_t fAnalysisMC; // 0->No MC or 1->MC analysis
46 TString fAnalysisType; // "ESD" or "AOD"
47 Bool_t fCollidingSystems; // Colliding systems 0/1 for pp/PbPb
48 TString fUsePID; // "withPID" or "noPID"
49 TString fUseCut; // "yes" or "no"
50 Int_t fDown; //centrality range
51 Int_t fUp; //centrality range
52 AliESDEvent *fESD; //! ESD object
53 TList *fListHist; //! Output List
56 AliAnalysisCentralitySelector * fCentrSelector; // Centrality selector, used to
57 AliESDtrackCuts * fTracksCuts; // track cuts
58 AliPIDResponse *fPIDResponse; // PID response
59 Bool_t fQASelector; // Quality Assurenc Histo switch
62 TH1F *fHistMCPrimaryVertexX; //! Histo
63 TH1F *fHistMCPrimaryVertexY; //! Histo
64 TH1F *fHistMCPrimaryVertexZ; //! Histo
65 TH1F *fHistPtTracks; //! Histo
67 TH1F *fHistMCMultiplicityPrimary; //! Histo
68 TH1F *fHistMCMultiplicityTracks; //! Histo
69 TH1F *fHistTPCTracks; //! Histo
71 TH1F *fHistMCPtAllK0s; //! Histo
72 TH1F *fHistMCPtAllLambda; //! Histo
73 TH1F *fHistMCPtAllAntiLambda; //! Histo
74 TH1F *fHistMCPtAllXi; //! Histo
75 TH1F *fHistMCPtAllAntiXi; //! Histo
76 TH1F *fHistMCPtAllOmega; //! Histo
77 TH1F *fHistMCPtAllAntiOmega; //! Histo
79 TH1F *fHistMCRapK0s; //! Histo
80 TH1F *fHistMCRapLambda; //! Histo
81 TH1F *fHistMCRapAntiLambda; //! Histo
82 TH1F *fHistMCRapXi; //! Histo
83 //////////////////////////////////////////////////////////
85 TH1F *fHistMCPtK0s; //! Histo
86 TH1F *fHistMCPtLambda; //! Histo
87 TH1F *fHistMCPtAntiLambda; //! Histo
88 //////////////////////////////////////////////////////////
91 TH1F *fHistNumberEvents; //! Histo
92 TH1F *fHistTrackPerEvent; //! Histo
93 TH1F *fHistTPCMult; //! Histo
94 TH1F *fHistTrackletPerEvent; //! Histo
95 TH1F *fHistSPDPrimaryVertexZ; //! Histo
96 TH1F *fHistPrimaryVertexX; //! Histo
97 TH1F *fHistPrimaryVertexY; //! Histo
98 TH1F *fHistPrimaryVertexZ; //! Histo
99 //////////////////////////////////////////////////////////////////////
101 TH1F *fHistV0Multiplicity; //! Histo
102 TH1F *fHistMassK0; //! Histo
103 TH1F *fHistMassLambda; //! Histo
104 TH1F *fHistMassAntiLambda; //! Histo
105 TH1F *fHistMassXi; //! Histo
106 TH1F *fHistMassAntiXi; //! Histo
107 TH1F *fHistMassOmega; //! Histo
108 TH1F *fHistMassAntiOmega; //! Histo
110 TH2F *fHistMassXiVsPID; //! Histo
111 ////////////////////////////////////////////////////////////////////////////
113 TH2F *fHistPtVsMassK0; //! Histo
114 TH2F *fHistPtVsMassLambda; //! Histo
115 TH2F *fHistPtVsMassAntiLambda; //! Histo
116 /////////////////////////////////////////////
118 TH2F *fHistArmenterosPodolanski; //! Histo
119 TH2F *fHistK0sMassVsLambdaMass; //! Histo
122 TH2F *fHistTPCsigPLambda; //! Histo
123 TH2F *fHistTPCsigPAntiLambda; //! Histo
124 TH1F *fHistNSigmaProton; //! Histo
126 // Associated particles histograms
127 TH1F *fHistAsMcRapK0; //! Histo
128 TH1F *fHistAsMcRapLambda; //! Histo
129 TH1F *fHistAsMcRapAntiLambda; //! Histo
131 ////////////////////////////////////////////////////////////////////
132 TH1F *fHistAsMcPtK0; //! Histo
133 TH1F *fHistAsMcPtLambda; //! Histo
134 TH1F *fHistAsMcPtAntiLambda; //! Histo
136 TH1F *fHistPidMcMassK0; //! Histo
137 TH1F *fHistPidMcMassLambda; //! Histo
138 TH1F *fHistPidMcMassAntiLambda; //! Histo
142 TH1F *fHistAsMcMassK0; //! Histo
143 TH1F *fHistAsMcMassLambda; //! Histo
144 TH1F *fHistAsMcMassAntiLambda; //! Histo
148 TH2F *fHistAsMcPtVsMassK0; //! Histo
149 TH2F *fHistAsMcPtVsMassLambda; //! Histo
150 TH2F *fHistAsMcPtVsMassAntiLambda; //! Histo
152 TH1F *fHistCompositionXi; //! Histo
153 TH1F *fHistCompositionAntiXi; //! Histo
154 TH1F *fHistCompositionOmega; //! Histo
155 TH1F *fHistCompositionAntiOmega; //! Histo
156 TH1I *fHistMCIndexes; //! Histo
159 AliAnalysisTaskPerformanceStrange(const AliAnalysisTaskPerformanceStrange&);
160 AliAnalysisTaskPerformanceStrange& operator=(const AliAnalysisTaskPerformanceStrange&);
162 ClassDef(AliAnalysisTaskPerformanceStrange, 1);