]>
Commit | Line | Data |
---|---|---|
7729cc34 | 1 | #ifndef AliAnalysisTaskV0sInJets_cxx |
2 | #define AliAnalysisTaskV0sInJets_cxx | |
3 | ||
4 | // task for analysis of V0s (K0S, (anti-)Lambda) in charged jets | |
5 | // Author: Vit Kucera (vit.kucera@cern.ch) | |
6 | ||
7 | class TH1D; | |
8 | class TH2D; | |
9 | class THnSparse; | |
10 | class TRandom; | |
11 | class TClonesArray; | |
12 | ||
13 | class AliAODv0; | |
14 | class AliAODVertex; | |
15 | class AliAODJet; | |
16 | ||
17 | #include "AliAnalysisTaskSE.h" | |
18 | #include "THnSparse.h" | |
19 | //#include "AuxFunctions.h" | |
20 | ||
21 | class AliAnalysisTaskV0sInJets : public AliAnalysisTaskSE | |
22 | { | |
23 | public: | |
24 | AliAnalysisTaskV0sInJets(); // Default constructor | |
25 | AliAnalysisTaskV0sInJets(const char* name); // Constructor | |
26 | virtual ~AliAnalysisTaskV0sInJets(); // Destructor | |
27 | virtual void UserCreateOutputObjects(); | |
28 | virtual void UserExec(Option_t* option); | |
7495a67b | 29 | virtual void Terminate(Option_t*) {} |
7729cc34 | 30 | |
31 | void SetTypeAOD(Int_t type = 1) {fiAODAnalysis = type;} | |
7495a67b | 32 | void SetIsPbPb(Bool_t val = 1) {fbIsPbPb = val;} |
33 | void SetJetBranchName(char* line) {fsJetBranchName = line;} | |
34 | void SetJetBgBranchName(char* line) {fsJetBgBranchName = line;} | |
35 | void SetCuts(Double_t z = 10, Double_t r = 1, Double_t cL = 0, Double_t cH = 80) {fdCutVertexZ = z; fdCutVertexR2 = r * r; fdCutCentLow = cL; fdCutCentHigh = cH;} | |
36 | void SetPtJetMin(Double_t ptMin = 0) {fdCutPtJetMin = ptMin;} | |
37 | void SetPtTrackMin(Double_t ptMin = 0) {fdCutPtTrackMin = ptMin;} | |
38 | void SetJetRadius(Double_t r = 0.4) {fdRadiusJet = r;} | |
39 | void SetJetRadiusBg(Double_t r = 0.4) {fdRadiusJetBg = r;} | |
40 | void SetJetSelection(Bool_t select = kTRUE) {fbJetSelection = select;} | |
41 | void SetMCAnalysis(Bool_t select = kTRUE) {fbMCAnalysis = select;} | |
7729cc34 | 42 | // void SetTreeOutput(Bool_t select = kTRUE){fbTreeOutput = select;} |
43 | void FillQAHistogramV0(AliAODVertex* vtx, const AliAODv0* vZero, Int_t iIndexHisto, Bool_t IsCandK0s, Bool_t IsCandLambda, Bool_t IsInPeakK0s, Bool_t IsInPeakLambda); | |
44 | // virtual Double_t MassPeakSigma(Double_t pt, Int_t particle); | |
45 | // virtual Double_t MassPeakSigma(Int_t iCent, Double_t pt, Int_t particle); | |
46 | void FillCandidates(Double_t mK, Double_t mL, Double_t mAL, Bool_t isK, Bool_t isL, Bool_t isAL, Int_t iCut, Int_t iCent); | |
47 | Bool_t IsParticleInCone(const AliVParticle* part1, const AliVParticle* part2, Double_t dRMax) const; // decides whether a particle is inside a jet cone | |
48 | Bool_t OverlapWithJets(const TClonesArray* array, const AliVParticle* cone, Double_t dDistance) const; // decides whether a cone overlaps with other jets | |
9706bde3 | 49 | AliAODJet* GetRandomCone(const TClonesArray* array, Double_t dEtaConeMax, Double_t dDistance) const; // generate a random cone which does not overlap with selected jets |
50 | AliAODJet* GetMedianCluster(const TClonesArray* array, Double_t dEtaConeMax) const; // get median kt cluster | |
7729cc34 | 51 | Double_t AreaCircSegment(Double_t dRadius, Double_t dDistance) const; // area of circular segment |
52 | ||
7495a67b | 53 | void SetCutDCAToPrimVtxMin(Double_t val = 0.1) {fdCutDCAToPrimVtxMin = val;} |
54 | void SetCutDCADaughtersMax(Double_t val = 1.) {fdCutDCADaughtersMax = val;} | |
55 | void SetCutNSigmadEdxMax(Double_t val = 3.) {fdCutNSigmadEdxMax = val;} | |
56 | void SetCutCPAMin(Double_t val = 0.998) {fdCutCPAMin = val;} | |
57 | void SetCutNTauMax(Double_t val = 5.) {fdCutNTauMax = val;} | |
7729cc34 | 58 | |
7495a67b | 59 | Bool_t IsSelectedForJets(AliAODEvent* fAOD, Double_t dVtxZCut, Double_t dVtxR2Cut, Double_t dCentCutLo, Double_t dCentCutUp, Bool_t bCutDeltaZ = kFALSE, Double_t dDeltaZMax = 100.); |
60 | Int_t GetCentralityBinIndex(Double_t centrality); | |
61 | Int_t GetCentralityBinEdge(Int_t index); | |
62 | TString GetCentBinLabel(Int_t index); | |
63 | Double_t MassPeakSigmaOld(Double_t pt, Int_t particle); | |
64 | static bool CompareClusters(const std::vector<Double_t> cluster1, const std::vector<Double_t> cluster2); // compare clusters by their pt/area | |
7729cc34 | 65 | |
66 | // upper edges of centrality bins | |
9706bde3 | 67 | static const Int_t fgkiNBinsCent = 1; // number of centrality bins |
7729cc34 | 68 | static const Int_t fgkiCentBinRanges[fgkiNBinsCent]; // upper edges of centrality bins |
69 | // axis: pT of V0 | |
70 | static const Double_t fgkdBinsPtV0[2]; // [GeV/c] minimum and maximum or desired binning of the axis (intended for the rebinned axis) | |
71 | static const Int_t fgkiNBinsPtV0; // number of bins (intended for the rebinned axis) | |
72 | static const Int_t fgkiNBinsPtV0Init; // initial number of bins (uniform binning) | |
73 | // axis: pT of jets | |
74 | static const Double_t fgkdBinsPtJet[2]; // [GeV/c] minimum and maximum or desired binning of the axis (intended for the rebinned axis) | |
75 | static const Int_t fgkiNBinsPtJet; // number of bins (intended for the rebinned axis) | |
76 | static const Int_t fgkiNBinsPtJetInit; // initial number of bins (uniform binning) | |
77 | // axis: K0S invariant mass | |
78 | static const Int_t fgkiNBinsMassK0s; // number of bins (uniform binning) | |
87e23d3e | 79 | static const Double_t fgkdMassK0sMin; // minimum |
80 | static const Double_t fgkdMassK0sMax; // maximum | |
7729cc34 | 81 | // axis: Lambda invariant mass |
82 | static const Int_t fgkiNBinsMassLambda; // number of bins (uniform binning) | |
87e23d3e | 83 | static const Double_t fgkdMassLambdaMin; // minimum |
84 | static const Double_t fgkdMassLambdaMax; // maximum | |
7729cc34 | 85 | |
86 | private: | |
7495a67b | 87 | AliAODEvent* fAODIn; //! Input AOD event |
88 | AliAODEvent* fAODOut; //! Output AOD event | |
89 | TList* fOutputListStd; //! Output list for standard analysis results | |
90 | TList* fOutputListQA; //! Output list for quality assurance | |
91 | TList* fOutputListCuts; //! Output list for checking cuts | |
92 | TList* fOutputListMC; //! Output list for MC related results | |
93 | // TTree* ftreeOut; //! output tree | |
7729cc34 | 94 | |
7495a67b | 95 | Int_t fiAODAnalysis; // switch for input AOD/ESD |
96 | Bool_t fbIsPbPb; // switch Pb-Pb / p-p collisions | |
7729cc34 | 97 | |
98 | // V0 selection | |
99 | Double_t fdCutDCAToPrimVtxMin; // [cm] min DCA of daughters to the prim vtx | |
100 | Double_t fdCutDCADaughtersMax; // [sigma of TPC tracking] max DCA between daughters | |
101 | Double_t fdCutNSigmadEdxMax; // [sigma dE/dx] max difference between measured and expected signal of dE/dx in the TPC | |
102 | Double_t fdCutCPAMin; // min cosine of the pointing angle | |
103 | Double_t fdCutNTauMax; // [tau] max proper lifetime in multiples of the mean lifetime | |
104 | // jet selection | |
7495a67b | 105 | TString fsJetBranchName; // name of the branch with jets |
106 | TString fsJetBgBranchName; // name of the branch with kt clusters used for the rho calculation | |
107 | Double_t fdCutPtJetMin; // [GeV/c] minimum jet pt | |
108 | Double_t fdCutPtTrackMin; // [GeV/c] minimum pt of leading jet-track | |
109 | Double_t fdRadiusJet; // R of jet finder used for finding V0s in the jet cone | |
110 | Double_t fdRadiusJetBg; // R of kt jet finder used for reconstruction of bg clusters | |
111 | Bool_t fbJetSelection; // switch for the analysis of V0s in jets | |
112 | ||
113 | Bool_t fbMCAnalysis; // switch for the analysis of simulated data | |
114 | // Bool_t fbTreeOutput; // switch for the output tree | |
115 | TRandom* fRandom; //! random-number generator | |
7729cc34 | 116 | |
117 | // event cuts | |
87e23d3e | 118 | Double_t fdCutVertexZ; // [cm] maximum |z| of primary vertex |
119 | Double_t fdCutVertexR2; // [cm^2] maximum r^2 of primary vertex | |
120 | Double_t fdCutCentLow; // [%] minimum centrality | |
121 | Double_t fdCutCentHigh; // [%] maximum centrality | |
7495a67b | 122 | /* |
7729cc34 | 123 | // output branches |
9706bde3 | 124 | TClonesArray* fBranchV0Rec; //! output branch for reconstructed V0s |
125 | TClonesArray* fBranchV0Gen; //! output branch for generated V0s | |
126 | TClonesArray* fBranchJet; //! output branch for selected jets | |
127 | AliEventInfoObject* fEventInfo; //! class to store info about events | |
7495a67b | 128 | */ |
9706bde3 | 129 | Double_t fdCentrality; //! |
7729cc34 | 130 | |
131 | // event histograms | |
7495a67b | 132 | TH1D* fh1EventCounterCut; //! number of events for different selection steps |
133 | TH1D* fh1EventCounterCutCent[fgkiNBinsCent]; //! number of events for different selection steps and different centralities | |
134 | TH1D* fh1EventCent; //! number of events for different centralities | |
135 | TH1D* fh1EventCent2; //! number of events for different centralities | |
136 | TH1D* fh1EventCent2Jets; //! number of events for different centralities | |
137 | TH1D* fh1EventCent2NoJets; //! number of events for different centralities | |
138 | TH2D* fh2EventCentTracks; //! number of tracks vs centrality | |
139 | TH1D* fh1VtxZ[fgkiNBinsCent]; //! z coordinate of the primary vertex | |
140 | TH2D* fh2VtxXY[fgkiNBinsCent]; //! xy coordinates of the primary vertex | |
141 | TH1D* fh1V0CandPerEvent; //! number of V0 cand per event | |
7729cc34 | 142 | |
143 | // jet histograms | |
7495a67b | 144 | TH1D* fh1PtJet[fgkiNBinsCent]; //! pt spectra of jets for normalisation of in-jet V0 spectra |
145 | TH1D* fh1EtaJet[fgkiNBinsCent]; //! jet eta | |
146 | TH2D* fh2EtaPtJet[fgkiNBinsCent]; //! jet eta-pT | |
147 | TH1D* fh1PhiJet[fgkiNBinsCent]; //! jet phi | |
148 | TH1D* fh1NJetPerEvent[fgkiNBinsCent]; //! number of jets per event | |
149 | TH1D* fh1NRndConeCent; //! number of generated random cones in centrality bins | |
150 | TH2D* fh2EtaPhiRndCone[fgkiNBinsCent]; //! random cone eta-pT | |
151 | TH1D* fh1NMedConeCent; //! number of found median-cluster cones in centrality bins | |
152 | TH2D* fh2EtaPhiMedCone[fgkiNBinsCent]; //! median-cluster cone eta-phi | |
153 | TH1D* fh1AreaExcluded; //! area of excluded cones for outside-cones V0s | |
7729cc34 | 154 | |
155 | static const Int_t fgkiNCategV0 = 17; // number of V0 selection steps | |
156 | ||
157 | // QA histograms | |
158 | static const Int_t fgkiNQAIndeces = 2; // 0 - before cuts, 1 - after cuts | |
9706bde3 | 159 | TH1D* fh1QAV0Status[fgkiNQAIndeces]; //! online vs offline reconstructed V0 candidates |
160 | TH1D* fh1QAV0TPCRefit[fgkiNQAIndeces]; //! TPC refit on vs off | |
161 | TH1D* fh1QAV0TPCRows[fgkiNQAIndeces]; //! crossed TPC pad rows | |
162 | TH1D* fh1QAV0TPCFindable[fgkiNQAIndeces]; //! findable clusters | |
163 | TH1D* fh1QAV0TPCRowsFind[fgkiNQAIndeces]; //! ratio rows/clusters | |
164 | TH1D* fh1QAV0Eta[fgkiNQAIndeces]; //! pseudorapidity | |
165 | TH2D* fh2QAV0EtaRows[fgkiNQAIndeces]; //! pseudorapidity vs TPC rows | |
166 | TH2D* fh2QAV0PtRows[fgkiNQAIndeces]; //! pt vs TPC rows | |
167 | TH2D* fh2QAV0PhiRows[fgkiNQAIndeces]; //! azimuth vs TPC rows | |
168 | TH2D* fh2QAV0NClRows[fgkiNQAIndeces]; //! clusters vs TPC rows | |
169 | TH2D* fh2QAV0EtaNCl[fgkiNQAIndeces]; //! pseudorapidity vs clusters | |
7729cc34 | 170 | |
171 | // K0s | |
9706bde3 | 172 | TH1D* fh1V0CounterCentK0s[fgkiNBinsCent]; //! number of K0s candidates after various cuts |
173 | TH1D* fh1V0InvMassK0sAll[fgkiNCategV0]; //! V0 invariant mass, selection steps | |
174 | TH2D* fh2QAV0EtaPtK0sPeak[fgkiNQAIndeces]; //! daughters pseudorapidity vs V0 pt, in mass peak | |
175 | TH2D* fh2QAV0EtaEtaK0s[fgkiNQAIndeces]; //! daughters pseudorapidity vs pseudorapidity | |
176 | TH2D* fh2QAV0PhiPhiK0s[fgkiNQAIndeces]; //! daughters azimuth vs azimuth | |
177 | TH1D* fh1QAV0RapK0s[fgkiNQAIndeces]; //! V0 rapidity | |
178 | TH2D* fh2QAV0PtPtK0sPeak[fgkiNQAIndeces]; //! daughters pt vs pt, in mass peak | |
179 | TH2D* fh2ArmPodK0s[fgkiNQAIndeces]; //! Armenteros-Podolanski | |
180 | TH1D* fh1V0CandPerEventCentK0s[fgkiNBinsCent]; //! number of K0s candidates per event, in centrality bins | |
181 | TH1D* fh1V0InvMassK0sCent[fgkiNBinsCent]; //! V0 invariant mass, in centrality bins | |
7729cc34 | 182 | // K0s Inclusive |
9706bde3 | 183 | THnSparse* fhnV0InclusiveK0s[fgkiNBinsCent]; //! V0 inv mass vs pt before and after cuts, in centrality bins |
7729cc34 | 184 | // K0s Cones |
9706bde3 | 185 | THnSparse* fhnV0InJetK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt vs jet pt, in centrality bins |
186 | THnSparse* fhnV0InPerpK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt vs jet pt, in centrality bins | |
187 | THnSparse* fhnV0InRndK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt vs jet pt, in centrality bins | |
188 | THnSparse* fhnV0InMedK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt vs jet pt, in centrality bins | |
189 | THnSparse* fhnV0OutJetK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt, in centrality bins | |
190 | THnSparse* fhnV0NoJetK0s[fgkiNBinsCent]; //! V0 invariant mass vs V0 pt, in centrality bins | |
191 | ||
192 | TH2D* fh2V0PtJetAngleK0s[fgkiNBinsCent]; //! pt jet vs angle V0-jet, in centrality bins | |
193 | TH1D* fh1DCAInK0s[fgkiNBinsCent]; //! DCA between daughters of V0 inside jets, in centrality bins | |
194 | TH1D* fh1DCAOutK0s[fgkiNBinsCent]; //! DCA between daughters of V0 outside jets, in centrality bins | |
7495a67b | 195 | // TH1D* fh1DeltaZK0s[fgkiNBinsCent]; //! z-distance between V0 vertex and primary vertex, in centrality bins |
7729cc34 | 196 | // MC histograms |
197 | // inclusive | |
9706bde3 | 198 | TH1D* fh1V0K0sPtMCGen[fgkiNBinsCent]; //! pt spectrum of all generated K0s in event |
199 | TH2D* fh2V0K0sPtMassMCRec[fgkiNBinsCent]; //! pt-mass spectrum of successfully reconstructed K0s in event | |
200 | TH1D* fh1V0K0sPtMCRecFalse[fgkiNBinsCent]; //! pt spectrum of false reconstructed K0s in event | |
7729cc34 | 201 | // inclusive eta-pT efficiency |
9706bde3 | 202 | TH2D* fh2V0K0sEtaPtMCGen[fgkiNBinsCent]; //! eta-pt spectrum of all generated K0s in event |
203 | THnSparse* fh3V0K0sEtaPtMassMCRec[fgkiNBinsCent]; //! eta-pt-mass spectrum of successfully reconstructed K0s in event | |
7729cc34 | 204 | // MC daughter eta inclusive |
9706bde3 | 205 | // THnSparse* fhnV0K0sInclDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
206 | THnSparse* fhnV0K0sInclDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 207 | // in jets |
9706bde3 | 208 | TH2D* fh2V0K0sInJetPtMCGen[fgkiNBinsCent]; //! pt spectrum of generated K0s in jet |
209 | THnSparse* fh3V0K0sInJetPtMassMCRec[fgkiNBinsCent]; //! mass-pt spectrum of successfully reconstructed K0s in jet | |
7729cc34 | 210 | // in jets eta-pT efficiency |
9706bde3 | 211 | THnSparse* fh3V0K0sInJetEtaPtMCGen[fgkiNBinsCent]; //! eta-pt spectrum of generated K0s in jet |
212 | THnSparse* fh4V0K0sInJetEtaPtMassMCRec[fgkiNBinsCent]; //! mass-eta-pt spectrum of successfully reconstructed K0s in jet | |
7729cc34 | 213 | // MC daughter eta in JC |
9706bde3 | 214 | // THnSparse* fhnV0K0sInJetsDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
215 | THnSparse* fhnV0K0sInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 216 | |
217 | // resolution | |
9706bde3 | 218 | TH2D* fh2V0K0sMCResolMPt[fgkiNBinsCent]; //! K0s mass resolution vs pt |
219 | TH2D* fh2V0K0sMCPtGenPtRec[fgkiNBinsCent]; //! K0s generated pt vs reconstructed pt | |
7729cc34 | 220 | |
221 | // Lambda | |
9706bde3 | 222 | TH1D* fh1V0CounterCentLambda[fgkiNBinsCent]; //! number of Lambda candidates after various cuts |
223 | TH1D* fh1V0InvMassLambdaAll[fgkiNCategV0]; //! | |
224 | TH2D* fh2QAV0EtaPtLambdaPeak[fgkiNQAIndeces]; //! | |
225 | TH2D* fh2QAV0EtaEtaLambda[fgkiNQAIndeces]; //! | |
226 | TH2D* fh2QAV0PhiPhiLambda[fgkiNQAIndeces]; //! | |
227 | TH1D* fh1QAV0RapLambda[fgkiNQAIndeces]; //! | |
228 | TH2D* fh2QAV0PtPtLambdaPeak[fgkiNQAIndeces]; //! | |
229 | TH2D* fh2ArmPodLambda[fgkiNQAIndeces]; //! | |
230 | TH1D* fh1V0CandPerEventCentLambda[fgkiNBinsCent]; //! | |
231 | TH1D* fh1V0InvMassLambdaCent[fgkiNBinsCent]; //! | |
7729cc34 | 232 | // Lambda Inclusive |
9706bde3 | 233 | THnSparse* fhnV0InclusiveLambda[fgkiNBinsCent]; //! |
7729cc34 | 234 | // Lambda Cones |
9706bde3 | 235 | THnSparse* fhnV0InJetLambda[fgkiNBinsCent]; //! |
236 | THnSparse* fhnV0InPerpLambda[fgkiNBinsCent]; //! | |
237 | THnSparse* fhnV0InRndLambda[fgkiNBinsCent]; //! | |
238 | THnSparse* fhnV0InMedLambda[fgkiNBinsCent]; //! | |
239 | THnSparse* fhnV0OutJetLambda[fgkiNBinsCent]; //! | |
240 | THnSparse* fhnV0NoJetLambda[fgkiNBinsCent]; //! | |
241 | ||
242 | TH2D* fh2V0PtJetAngleLambda[fgkiNBinsCent]; //! | |
243 | TH1D* fh1DCAInLambda[fgkiNBinsCent]; //! | |
244 | TH1D* fh1DCAOutLambda[fgkiNBinsCent]; //! | |
7495a67b | 245 | // TH1D* fh1DeltaZLambda[fgkiNBinsCent]; //! |
7729cc34 | 246 | // MC histograms |
247 | // inclusive | |
9706bde3 | 248 | TH1D* fh1V0LambdaPtMCGen[fgkiNBinsCent]; //! |
249 | TH2D* fh2V0LambdaPtMassMCRec[fgkiNBinsCent]; //! | |
250 | TH1D* fh1V0LambdaPtMCRecFalse[fgkiNBinsCent]; //! | |
7729cc34 | 251 | // inclusive eta-pT efficiency |
9706bde3 | 252 | TH2D* fh2V0LambdaEtaPtMCGen[fgkiNBinsCent]; //! |
253 | THnSparse* fh3V0LambdaEtaPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 254 | // MC daughter eta inclusive |
9706bde3 | 255 | // THnSparse* fhnV0LambdaInclDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
256 | THnSparse* fhnV0LambdaInclDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 257 | // in jets |
9706bde3 | 258 | TH2D* fh2V0LambdaInJetPtMCGen[fgkiNBinsCent]; //! |
259 | THnSparse* fh3V0LambdaInJetPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 260 | // in jets eta-pT efficiency |
9706bde3 | 261 | THnSparse* fh3V0LambdaInJetEtaPtMCGen[fgkiNBinsCent]; //! |
262 | THnSparse* fh4V0LambdaInJetEtaPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 263 | // MC daughter eta in JC |
9706bde3 | 264 | // THnSparse* fhnV0LambdaInJetsDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
265 | THnSparse* fhnV0LambdaInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 266 | |
267 | // resolution | |
9706bde3 | 268 | TH2D* fh2V0LambdaMCResolMPt[fgkiNBinsCent]; //! |
269 | TH2D* fh2V0LambdaMCPtGenPtRec[fgkiNBinsCent]; //! | |
7729cc34 | 270 | // feed-down |
9706bde3 | 271 | THnSparseD* fhnV0LambdaInclMCFD[fgkiNBinsCent]; //! |
272 | THnSparseD* fhnV0LambdaInJetsMCFD[fgkiNBinsCent]; //! | |
273 | THnSparseD* fhnV0LambdaBulkMCFD[fgkiNBinsCent]; //! | |
274 | TH1D* fh1V0XiPtMCGen[fgkiNBinsCent]; //! | |
7729cc34 | 275 | |
276 | // ALambda | |
9706bde3 | 277 | TH1D* fh1V0CounterCentALambda[fgkiNBinsCent]; //! number of ALambda candidates after various cuts |
278 | TH1D* fh1V0InvMassALambdaAll[fgkiNCategV0]; //! | |
279 | TH2D* fh2QAV0EtaPtALambdaPeak[fgkiNQAIndeces]; //! | |
280 | TH2D* fh2QAV0EtaEtaALambda[fgkiNQAIndeces]; //! | |
281 | TH2D* fh2QAV0PhiPhiALambda[fgkiNQAIndeces]; //! | |
282 | TH1D* fh1QAV0RapALambda[fgkiNQAIndeces]; //! | |
283 | TH2D* fh2QAV0PtPtALambdaPeak[fgkiNQAIndeces]; //! | |
284 | TH2D* fh2ArmPodALambda[fgkiNQAIndeces]; //! | |
285 | TH1D* fh1V0CandPerEventCentALambda[fgkiNBinsCent]; //! | |
286 | TH1D* fh1V0InvMassALambdaCent[fgkiNBinsCent]; //! | |
287 | TH1D* fh1V0ALambdaPt[fgkiNBinsCent]; //! | |
7729cc34 | 288 | // ALambda Inclusive |
9706bde3 | 289 | THnSparse* fhnV0InclusiveALambda[fgkiNBinsCent]; //! |
7729cc34 | 290 | // ALambda Cones |
9706bde3 | 291 | THnSparse* fhnV0InJetALambda[fgkiNBinsCent]; //! |
292 | THnSparse* fhnV0InPerpALambda[fgkiNBinsCent]; //! | |
293 | THnSparse* fhnV0InRndALambda[fgkiNBinsCent]; //! | |
294 | THnSparse* fhnV0InMedALambda[fgkiNBinsCent]; //! | |
295 | THnSparse* fhnV0OutJetALambda[fgkiNBinsCent]; //! | |
296 | THnSparse* fhnV0NoJetALambda[fgkiNBinsCent]; //! | |
297 | ||
298 | TH2D* fh2V0PtJetAngleALambda[fgkiNBinsCent]; //! | |
299 | TH1D* fh1DCAInALambda[fgkiNBinsCent]; //! | |
300 | TH1D* fh1DCAOutALambda[fgkiNBinsCent]; //! | |
7495a67b | 301 | // TH1D* fh1DeltaZALambda[fgkiNBinsCent]; //! |
7729cc34 | 302 | // MC histograms |
303 | // inclusive | |
9706bde3 | 304 | TH1D* fh1V0ALambdaPtMCGen[fgkiNBinsCent]; //! |
305 | TH1D* fh1V0ALambdaPtMCRec[fgkiNBinsCent]; //! | |
306 | TH2D* fh2V0ALambdaPtMassMCRec[fgkiNBinsCent]; //! | |
307 | TH1D* fh1V0ALambdaPtMCRecFalse[fgkiNBinsCent]; //! | |
7729cc34 | 308 | // inclusive eta-pT efficiency |
9706bde3 | 309 | TH2D* fh2V0ALambdaEtaPtMCGen[fgkiNBinsCent]; //! |
310 | THnSparse* fh3V0ALambdaEtaPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 311 | // MC daughter eta inclusive |
9706bde3 | 312 | // THnSparse* fhnV0ALambdaInclDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
313 | THnSparse* fhnV0ALambdaInclDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 314 | // in jets |
9706bde3 | 315 | TH2D* fh2V0ALambdaInJetPtMCGen[fgkiNBinsCent]; //! |
316 | TH2D* fh2V0ALambdaInJetPtMCRec[fgkiNBinsCent]; //! | |
317 | THnSparse* fh3V0ALambdaInJetPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 318 | // in jets eta-pT efficiency |
9706bde3 | 319 | THnSparse* fh3V0ALambdaInJetEtaPtMCGen[fgkiNBinsCent]; //! |
320 | THnSparse* fh4V0ALambdaInJetEtaPtMassMCRec[fgkiNBinsCent]; //! | |
7729cc34 | 321 | // MC daughter eta in JC |
9706bde3 | 322 | // THnSparse* fhnV0ALambdaInJetsDaughterEtaPtPtMCGen[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 generated |
323 | THnSparse* fhnV0ALambdaInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]; //! eta_daughter-pt_daughter-pt_V0 reconstructed | |
7729cc34 | 324 | |
325 | // resolution | |
9706bde3 | 326 | TH2D* fh2V0ALambdaMCResolMPt[fgkiNBinsCent]; //! |
327 | TH2D* fh2V0ALambdaMCPtGenPtRec[fgkiNBinsCent]; //! | |
7729cc34 | 328 | // feed-down |
9706bde3 | 329 | THnSparseD* fhnV0ALambdaInclMCFD[fgkiNBinsCent]; //! |
330 | THnSparseD* fhnV0ALambdaInJetsMCFD[fgkiNBinsCent]; //! | |
331 | THnSparseD* fhnV0ALambdaBulkMCFD[fgkiNBinsCent]; //! | |
332 | TH1D* fh1V0AXiPtMCGen[fgkiNBinsCent]; //! | |
333 | ||
334 | TH1D* fh1QAV0Pt[fgkiNQAIndeces]; //! pt | |
335 | TH1D* fh1QAV0Charge[fgkiNQAIndeces]; //! charge | |
336 | TH1D* fh1QAV0DCAVtx[fgkiNQAIndeces]; //! DCA of daughters to prim vtx | |
337 | TH1D* fh1QAV0DCAV0[fgkiNQAIndeces]; //! DCA between daughters | |
338 | TH1D* fh1QAV0Cos[fgkiNQAIndeces]; //! cosine of pointing angle (CPA) | |
339 | TH1D* fh1QAV0R[fgkiNQAIndeces]; //! radial distance between prim vtx and decay vertex | |
340 | TH1D* fh1QACTau2D[fgkiNQAIndeces]; //! lifetime calculated in xy | |
341 | TH1D* fh1QACTau3D[fgkiNQAIndeces]; //! lifetime calculated in xyz | |
342 | TH2D* fh2ArmPod[fgkiNQAIndeces]; //! Armenteros-Podolanski | |
343 | TH2D* fh2CCK0s; //! K0s candidates in Lambda peak | |
344 | TH2D* fh2CCLambda; //! Lambda candidates in K0s peak | |
345 | THnSparse* fh3CCMassCorrelBoth; //! mass correlation of candidates | |
346 | THnSparse* fh3CCMassCorrelKNotL; //! mass correlation of candidates | |
347 | THnSparse* fh3CCMassCorrelLNotK; //! mass correlation of candidates | |
7729cc34 | 348 | |
349 | // Cut tuning | |
350 | // crossed/findable, daughter pt, dca, cpa, r, pseudorapidity, y, decay length, PID sigma | |
7495a67b | 351 | /* |
9706bde3 | 352 | TH2D* fh2CutTPCRowsK0s[fgkiNQAIndeces]; //! inv mass vs TPC rows |
353 | TH2D* fh2CutTPCRowsLambda[fgkiNQAIndeces]; //! | |
354 | TH2D* fh2CutPtPosK0s[fgkiNQAIndeces]; //! inv mass vs pt of positive daughter | |
355 | TH2D* fh2CutPtNegK0s[fgkiNQAIndeces]; //! inv mass vs pt of negative daughter | |
356 | TH2D* fh2CutPtPosLambda[fgkiNQAIndeces]; //! | |
357 | TH2D* fh2CutPtNegLambda[fgkiNQAIndeces]; //! | |
358 | TH2D* fh2CutDCAVtx[fgkiNQAIndeces]; //! inv mass vs DCA of daughters to prim vtx | |
359 | TH2D* fh2CutDCAV0[fgkiNQAIndeces]; //! inv mass vs DCA between daughters | |
360 | TH2D* fh2CutCos[fgkiNQAIndeces]; //! inv mass vs CPA | |
361 | TH2D* fh2CutR[fgkiNQAIndeces]; //! inv mass vs R | |
362 | TH2D* fh2CutEtaK0s[fgkiNQAIndeces]; //! inv mass vs pseudorapidity | |
363 | TH2D* fh2CutEtaLambda[fgkiNQAIndeces]; //! | |
364 | TH2D* fh2CutRapK0s[fgkiNQAIndeces]; //! inv mass vs rapidity | |
365 | TH2D* fh2CutRapLambda[fgkiNQAIndeces]; //! | |
366 | TH2D* fh2CutCTauK0s[fgkiNQAIndeces]; //! inv mass vs lifetime | |
367 | TH2D* fh2CutCTauLambda[fgkiNQAIndeces]; //! | |
368 | TH2D* fh2CutPIDPosK0s[fgkiNQAIndeces]; //! inv mass vs number of dE/dx sigmas for positive daughter | |
369 | TH2D* fh2CutPIDNegK0s[fgkiNQAIndeces]; //! inv mass vs number of dE/dx sigmas for negative daughter | |
370 | TH2D* fh2CutPIDPosLambda[fgkiNQAIndeces]; //! | |
371 | TH2D* fh2CutPIDNegLambda[fgkiNQAIndeces]; //! | |
372 | ||
373 | TH2D* fh2Tau3DVs2D[fgkiNQAIndeces]; //! pt vs ratio 3D lifetime / 2D lifetime | |
7495a67b | 374 | */ |
7729cc34 | 375 | |
376 | AliAnalysisTaskV0sInJets(const AliAnalysisTaskV0sInJets&); // not implemented | |
377 | AliAnalysisTaskV0sInJets& operator=(const AliAnalysisTaskV0sInJets&); // not implemented | |
378 | ||
379 | ClassDef(AliAnalysisTaskV0sInJets, 3) // example of analysis | |
380 | }; | |
381 | ||
382 | #endif |