AliPhysics  4646b6b (4646b6b)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskV0sInJetsEmcal.h
Go to the documentation of this file.
1 #ifndef AliAnalysisTaskV0sInJetsEmcal_cxx
2 #define AliAnalysisTaskV0sInJetsEmcal_cxx
3 
4 //-------------------------------------------------------------------------
5 // task for analysis of V0s (K0S, (anti-)Lambda) in charged jets
6 // fork of AliAnalysisTaskV0sInJets for the EMCal framework
7 // Author: Vit Kucera (vit.kucera@cern.ch)
8 //-------------------------------------------------------------------------
9 
10 class TH1D;
11 class TH2D;
12 class THnSparse;
13 class TClonesArray;
14 class TRandom;
15 
16 class AliAODv0;
17 class AliAODVertex;
18 class AliAODJet;
19 
20 class AliJetContainer;
23 
24 class AliEventPoolManager;
25 
27 
29 {
30 public:
31  AliAnalysisTaskV0sInJetsEmcal(); // Default constructor
32  AliAnalysisTaskV0sInJetsEmcal(const char* name); // Constructor
33  virtual ~AliAnalysisTaskV0sInJetsEmcal(); // Destructor
35  void Terminate(Option_t*) {}
36 
37  // data selection
38  void SetIsPbPb(Bool_t val = 1) {fbIsPbPb = val;}
39  void SetMCAnalysis(Bool_t select = kTRUE) {fbMCAnalysis = select;}
41  Bool_t IsFromGoodGenerator(Int_t index); // True if the MC particle with the given index comes from the selected generator
42 
43  // event selection
44  void SetEventCuts(Double_t z = 10, Double_t r = 1, Double_t cL = 0, Double_t cH = 80, Double_t dZ = 0.1) {fdCutVertexZ = z; fdCutVertexR2 = r * r; fdCutCentLow = cL; fdCutCentHigh = cH; fdCutDeltaZMax = dZ;}
45 
46  // mixed events
47  void SetCorrelations(Bool_t val = kTRUE) {fbCorrelations = val;}
48  void SetPoolParam(Int_t sizepool = 1000, Int_t jetsperpool = 1, Float_t fractionmin = 1., Int_t neventsmin = 0) {fiSizePool = sizepool; fiNJetsPerPool = jetsperpool; ffFractionMin = fractionmin; fiNEventsMin = neventsmin;}
49  void SetDeltaEtaMax(Double_t val = kTRUE) {fdDeltaEtaMax = val;}
50 
51  // jet selection
52  void SetJetSelection(Bool_t select = kTRUE) {fbJetSelection = select;}
57  void SetBgSubtraction(Int_t val = 1) {fiBgSubtraction = val;}
58 
59  // pt correlations of jets with trigger tracks
61 
62  void FillQAHistogramV0(AliAODVertex* vtx, const AliAODv0* vZero, Int_t iIndexHisto, Bool_t IsCandK0s, Bool_t IsCandLambda, Bool_t IsCandALambda, Bool_t IsInPeakK0s, Bool_t IsInPeakLambda, Bool_t IsInPeakALambda);
63  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);
64  Bool_t IsParticleInCone(const AliVParticle* part1, const AliVParticle* part2, Double_t dRMax) const; // decides whether a particle is inside a jet cone
65  Bool_t OverlapWithJets(const TClonesArray* array, const AliVParticle* cone, Double_t dDistance) const; // decides whether a cone overlaps with other jets
66  AliAODJet* GetRandomCone(const TClonesArray* array, Double_t dEtaConeMax, Double_t dDistance) const; // generate a random cone which does not overlap with selected jets
67  AliEmcalJet* GetMedianCluster(AliJetContainer* cont, Double_t dEtaConeMax) const; // get median kt cluster
68  Double_t AreaCircSegment(Double_t dRadius, Double_t dDistance) const; // area of circular segment
69  Double_t GetD(const AliVParticle* part1, const AliVParticle* part2) const; // returns distance between two particles
70 
71  // V0 selection
72  void SetCutTPCRefit(Bool_t val = kTRUE) {fbTPCRefit = val;}
73  void SetCutRejectKinks(Bool_t val = kTRUE) {fbRejectKinks = val;}
78  void SetCutPtDaughterMin(Double_t val = 0.150) {fdCutPtDaughterMin = val;}
84  void SetOnFly(Bool_t val = 0) {fbOnFly = val;}
85  void SetCutCPAKMin(Double_t val = 0.998) {fdCutCPAKMin = val;}
86  void SetCutCPALMin(Double_t val = 0.998) {fdCutCPALMin = val;}
89  void SetCutEtaV0Max(Double_t val = 0.7) {fdCutEtaV0Max = val;}
90  void SetCutRapV0Max(Double_t val = 0.75) {fdCutRapV0Max = val;}
91  void SetCutNTauKMax(Double_t val = 5.0) {fdCutNTauKMax = val;}
92  void SetCutNTauLMax(Double_t val = 5.0) {fdCutNTauLMax = val;}
93  void SetCutArmPod(Bool_t val = kTRUE) {fbCutArmPod = val;}
94  void SetCutCross(Bool_t val = kTRUE) {fbCutCross = val;}
95 
96  Bool_t IsSelectedForJets(AliAODEvent* fAOD, Double_t dVtxZCut, Double_t dVtxR2Cut, Double_t dCentCutLo, Double_t dCentCutUp, Double_t dDeltaZMax = -1);
100  Double_t MassPeakSigmaOld(Double_t pt, Int_t particle);
101  static bool CompareClusters(const std::vector<Double_t> cluster1, const std::vector<Double_t> cluster2); // compare clusters by their pt/area
102  Double_t GetNormalPhi(Double_t phi) {while(phi >= fgkdDeltaPhiMax) phi -= TMath::TwoPi(); while(phi < fgkdDeltaPhiMin) phi += TMath::TwoPi(); return phi;} // restrict azimuth to desired range
103 
104  // upper edges of centrality bins
105  static const Int_t fgkiNBinsCent = 1; // number of centrality bins
106  static const Int_t fgkiCentBinRanges[fgkiNBinsCent]; // upper edges of centrality bins
107  // centrality bins for event mixing
108  static const Int_t fgkiNBinsCentMix = 2; // number of centrality bins for event mixing
109  static Double_t fgkiCentMixBinRanges[fgkiNBinsCentMix + 1]; // edges of centrality bins for event mixing
110  // z_vtx bins for event mixing
111  static const Int_t fgkiNBinsZVtxMix = 10; // number of z_vtx bins for event mixing
112  static Double_t fgkiZVtxMixBinRanges[fgkiNBinsZVtxMix + 1]; // edges of z_vtx bins for event mixing
113  // axis: pT of V0
114  static const Double_t fgkdBinsPtV0[2]; // [GeV/c] minimum and maximum or desired binning of the axis (intended for the rebinned axis)
115  static const Int_t fgkiNBinsPtV0; // number of bins (intended for the rebinned axis)
116  static const Int_t fgkiNBinsPtV0Init; // initial number of bins (uniform binning)
117  static const Int_t fgkiNBinsPtV0InitInJet; // initial number of bins for V0s in jets (uniform binning)
118  // axis: pT of jets
119  static const Double_t fgkdBinsPtJet[2]; // [GeV/c] minimum and maximum or desired binning of the axis (intended for the rebinned axis)
120  static const Int_t fgkiNBinsPtJet; // number of bins (intended for the rebinned axis)
121  static const Int_t fgkiNBinsPtJetInit; // initial number of bins (uniform binning)
122  // axis: K0S invariant mass
123  static const Int_t fgkiNBinsMassK0s; // number of bins (uniform binning)
124  static const Double_t fgkdMassK0sMin; // minimum K0S mass
125  static const Double_t fgkdMassK0sMax; // maximum K0S mass
126  // axis: Lambda invariant mass
127  static const Int_t fgkiNBinsMassLambda; // number of bins (uniform binning)
128  static const Double_t fgkdMassLambdaMin; // minimum Lambda mass
129  static const Double_t fgkdMassLambdaMax; // maximum Lambda mass
130  // delta phi range
131  static const Double_t fgkdDeltaPhiMin; // minimum delta-phi_V0-jet
132  static const Double_t fgkdDeltaPhiMax; // maximum delta-phi_V0-jet
133 
134 protected:
135  void ExecOnce();
137  Bool_t Run();
138 
139 private:
142  AliMCEvent* fEventMC;
143  TRandom* fRandom;
144  AliEventPoolManager* fPoolMgr;
149 
150  // Data selection
151  Bool_t fbIsPbPb; // switch: Pb+Pb / p+p collisions
152  Bool_t fbMCAnalysis; // switch: simulated / real data
153  TString fsGeneratorName; // pattern for selecting only V0s from a specific MC generator
154 
155  // Event selection
156  Double_t fdCutVertexZ; // [cm] maximum |z| of primary vertex
157  Double_t fdCutVertexR2; // [cm^2] maximum r^2 of primary vertex
158  Double_t fdCutCentLow; // [%] minimum centrality
159  Double_t fdCutCentHigh; // [%] maximum centrality
160  Double_t fdCutDeltaZMax; // [cm] maximum |Delta z| between nominal prim vtx and SPD vtx
162 
163  // Mixed events parameters
164  Bool_t fbCorrelations; // switch for V0-jet correlations
165  Int_t fiSizePool; // available number of events per pool, currently ignored in AliEventPoolManager
166  Int_t fiNJetsPerPool; // required number of jets available in each pool
167  Float_t ffFractionMin; // minimum fraction of fiNJetsPerPool at which pool is ready (default: 1.0)
168  Int_t fiNEventsMin; // if non-zero: number of filled events after which pool is ready regardless of fiNJetsPerPool (default: 0)
169  Double_t fdDeltaEtaMax; // maximum delta-eta_V0-jet for angular correlations
170 
171  // V0 selection
172  // Daughter tracks
173  Bool_t fbTPCRefit; // (yes) TPC refit for daughter tracks
174  Bool_t fbRejectKinks; // (no) reject kink-like production vertices of daughter tracks
175  Bool_t fbFindableClusters; // (no) require positive number of findable clusters
176  Double_t fdCutNCrossedRowsTPCMin; // (70.) min number of crossed TPC rows
177  Double_t fdCutCrossedRowsOverFindMin; // (0.8) min ratio crossed rows / findable clusters
178  Double_t fdCutCrossedRowsOverFindMax; // (1e3) max ratio crossed rows / findable clusters
179  Double_t fdCutPtDaughterMin; // (0.150) [GeV/c] min transverse momentum of daughter tracks, to reject primaries which do not make it to the TPC
180  Double_t fdCutDCAToPrimVtxMin; // (0.1) [cm] min DCA of daughters to the prim vtx
181  Double_t fdCutDCADaughtersMax; // (1.) [sigma of TPC tracking] max DCA between daughters
182  Double_t fdCutEtaDaughterMax; // (0.8) max |pseudorapidity| of daughter tracks, historical reasons: tracking in MC for 2010 was restricted to 0.7
183  Double_t fdCutNSigmadEdxMax; // (3.) [sigma dE/dx] max difference between measured and expected signal of dE/dx in the TPC
184  Double_t fdPtProtonPIDMax; // (1.) [GeV/c] maxium pT of proton for applying PID cut in Pb-Pb
185  // V0 candidate
186  Bool_t fbOnFly; // (0) on-the-fly (yes) or offline (no) reconstructed
187  Double_t fdCutCPAKMin; // (0.998) min cosine of the pointing angle, K0S
188  Double_t fdCutCPALMin; // (0.998) min cosine of the pointing angle, Lambda
189  Double_t fdCutRadiusDecayMin; // (5.) [cm] min radial distance of the decay vertex
190  Double_t fdCutRadiusDecayMax; // (100.) [cm] max radial distance of the decay vertex
191  Double_t fdCutEtaV0Max; // (0.7) max |pseudorapidity| of V0
192  Double_t fdCutRapV0Max; // (0.75) max |rapidity| of V0 (turned off)
193  Double_t fdCutNTauKMax; // (5.0) [tau] max proper lifetime in multiples of the mean lifetime, K0S
194  Double_t fdCutNTauLMax; // (5.0) [tau] max proper lifetime in multiples of the mean lifetime, Lambda
195  Bool_t fbCutArmPod; // (yes) Armenteros-Podolanski for K0S
196  Bool_t fbCutCross; // (no) cross-contamination
197 
198  // Jet selection
199  Bool_t fbJetSelection; // (yes) switch for the analysis of V0s in jets
200  Double_t fdCutPtJetMin; // [GeV/c] minimum jet pt
201  Double_t fdCutPtTrackJetMin; // [GeV/c] minimum pt of leading jet-track
202  Double_t fdCutAreaPercJetMin; // [pi*R^2] minimum jet area with respect to the expected value
203  Double_t fdDistanceV0JetMax; // (R) D - maximum distance between V0 and jet axis used for finding V0s in the jet cone
204  Int_t fiBgSubtraction; // subtraction of rho from jet pt, 0 - no subtraction, 1 - scalar subtraction, 2 - vector subtraction
205 
206  // Correlations of pt_jet with pt_trigger-track
207  Bool_t fbCompareTriggers; // switch for pt correlations of jets with trigger tracks
208 
209  // EMCal containers
213 
214  // event histograms
226 
227  // jet histograms
245 
246  static const Int_t fgkiNCategV0 = 18; // number of V0 selection steps
247 
248  // QA histograms
249  static const Int_t fgkiNQAIndeces = 2; // 0 - before cuts, 1 - after cuts
263 
264  // K0s
275  // K0s Inclusive
277  // K0s Cones
284 
286 
287  // K0S correlations
290 
292  // MC histograms
293  // inclusive
297  // inclusive eta-pT efficiency
300  // MC daughter eta inclusive
302  // in jets
305  // in jets eta-pT efficiency
308  // MC daughter eta in JC
310 
311  // resolution
314 
315  // Lambda
326  // Lambda Inclusive
328  // Lambda Cones
335 
337 
338  // Lambda correlations
341 
343  // MC histograms
344  // inclusive
348  // inclusive eta-pT efficiency
351  // MC daughter eta inclusive
353  // in jets
356  // in jets eta-pT efficiency
359  // MC daughter eta in JC
361 
362  // resolution
365  // feed-down
370 
371  // ALambda
382  // ALambda Inclusive
384  // ALambda Cones
391 
393 
395  // MC histograms
396  // inclusive
400  // inclusive eta-pT efficiency
403  // MC daughter eta inclusive
405  // in jets
408  // in jets eta-pT efficiency
411  // MC daughter eta in JC
413 
414  // resolution
417  // feed-down
422 
437  THnSparse* fh3CCMassCorrelBoth;
438  THnSparse* fh3CCMassCorrelKNotL;
439  THnSparse* fh3CCMassCorrelLNotK;
440 
441  // Cut tuning
442  // crossed/findable, daughter pt, dca, cpa, r, pseudorapidity, y, decay length, PID sigma
443  /*
444  TH2D* fh2CutTPCRowsK0s[fgkiNQAIndeces]; //! inv mass vs TPC rows
445  TH2D* fh2CutTPCRowsLambda[fgkiNQAIndeces]; //!
446  TH2D* fh2CutPtPosK0s[fgkiNQAIndeces]; //! inv mass vs pt of positive daughter
447  TH2D* fh2CutPtNegK0s[fgkiNQAIndeces]; //! inv mass vs pt of negative daughter
448  TH2D* fh2CutPtPosLambda[fgkiNQAIndeces]; //!
449  TH2D* fh2CutPtNegLambda[fgkiNQAIndeces]; //!
450  TH2D* fh2CutDCAVtx[fgkiNQAIndeces]; //! inv mass vs DCA of daughters to prim vtx
451  TH2D* fh2CutDCAV0[fgkiNQAIndeces]; //! inv mass vs DCA between daughters
452  TH2D* fh2CutCos[fgkiNQAIndeces]; //! inv mass vs CPA
453  TH2D* fh2CutR[fgkiNQAIndeces]; //! inv mass vs R
454  TH2D* fh2CutEtaK0s[fgkiNQAIndeces]; //! inv mass vs pseudorapidity
455  TH2D* fh2CutEtaLambda[fgkiNQAIndeces]; //!
456  TH2D* fh2CutRapK0s[fgkiNQAIndeces]; //! inv mass vs rapidity
457  TH2D* fh2CutRapLambda[fgkiNQAIndeces]; //!
458  TH2D* fh2CutCTauK0s[fgkiNQAIndeces]; //! inv mass vs lifetime
459  TH2D* fh2CutCTauLambda[fgkiNQAIndeces]; //!
460  TH2D* fh2CutPIDPosK0s[fgkiNQAIndeces]; //! inv mass vs number of dE/dx sigmas for positive daughter
461  TH2D* fh2CutPIDNegK0s[fgkiNQAIndeces]; //! inv mass vs number of dE/dx sigmas for negative daughter
462  TH2D* fh2CutPIDPosLambda[fgkiNQAIndeces]; //!
463  TH2D* fh2CutPIDNegLambda[fgkiNQAIndeces]; //!
464 
465  TH2D* fh2Tau3DVs2D[fgkiNQAIndeces]; //! pt vs ratio 3D lifetime / 2D lifetime
466  */
467 
470 
471  ClassDef(AliAnalysisTaskV0sInJetsEmcal, 19) // task for analysis of V0s (K0S, (anti-)Lambda) in charged jets
472 };
473 
474 #endif
THnSparse * fhnV0InJetK0s[fgkiNBinsCent]
V0 inclusive, in a centrality bin, m_V0; pt_V0; eta_V0.
THnSparse * fhnV0InRndALambda[fgkiNBinsCent]
THnSparse * fh3V0LambdaInJetPtMassMCRec[fgkiNBinsCent]
TH1D * fh1DistanceV0JetsALambda[fgkiNBinsCent]
distance in eta-phi between V0 and the closest jet
TH2D * fh2QAV0PtChi[fgkiNQAIndeces]
pt vs TPC clusters
AliEmcalJet * GetMedianCluster(AliJetContainer *cont, Double_t dEtaConeMax) const
TH2D * fh2QAV0PhiPtLambdaPeak[fgkiNQAIndeces]
K0S candidate in peak: azimuth; pt.
TH1D * fh1V0InvMassALambdaAll[fgkiNCategV0]
number of ALambda candidates after various cuts
double Double_t
Definition: External.C:58
TList * fOutputListMC
Output list for checking cuts.
THnSparse * fhnPtDaughterK0s[fgkiNBinsCent]
V0 in no-jet events, in a centrality bin, m_V0; pt_V0; eta_V0.
TH1D * fh1QAV0TPCRows[fgkiNQAIndeces]
TPC refit on vs off.
TH2D * fh2QAV0NClRows[fgkiNQAIndeces]
azimuth vs TPC rows
THnSparse * fh3V0K0sInJetPtMassMCRec[fgkiNBinsCent]
pt spectrum of generated K0s in jet
TH2D * fh2PtJetPtTrackLeading[fgkiNBinsCent]
jet phi
THnSparse * fhnV0ALambdaBulkMCFD[fgkiNBinsCent]
THnSparse * fh3V0K0sInJetEtaPtMCGen[fgkiNBinsCent]
mass-pt spectrum of successfully reconstructed K0s in jet
THnSparse * fh3CCMassCorrelKNotL
mass correlation of candidates
TH1D * fh1V0K0sPtMCGen[fgkiNBinsCent]
pt jet vs angle V0-jet, in centrality bins
Container with name, TClonesArray and cuts for particles.
THnSparse * fhnV0InMedLambda[fgkiNBinsCent]
TH2D * fh2V0LambdaMCResolMPt[fgkiNBinsCent]
V0 in jets, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
THnSparse * fh3CCMassCorrelBoth
Lambda candidates in K0s peak.
TH1D * fh1QACTau2D[fgkiNQAIndeces]
radial distance between prim vtx and decay vertex
centrality
TH1D * fh1EventCounterCutCent[fgkiNBinsCent]
number of events for different selection steps
Double_t GetD(const AliVParticle *part1, const AliVParticle *part2) const
void ExecOnce()
Perform steps needed to initialize the analysis.
TH1D * fh1V0InvMassK0sCent[fgkiNBinsCent]
number of K0s candidates per event, in centrality bins
THnSparse * fhnV0OutJetLambda[fgkiNBinsCent]
THnSparse * fhnV0InPerpK0s[fgkiNBinsCent]
V0 in jet cones, in a centrality bin, m_V0; pt_V0; eta_V0; pt_jet.
void SetEventCuts(Double_t z=10, Double_t r=1, Double_t cL=0, Double_t cH=80, Double_t dZ=0.1)
TH2D * fh2VtxXY[fgkiNBinsCent]
z coordinate of the primary vertex for events used in mixed events
TH1D * fh1V0CandPerEventCentK0s[fgkiNBinsCent]
Armenteros-Podolanski.
TH2D * fh2V0K0sPtMassMCRec[fgkiNBinsCent]
pt spectrum of all generated K0s in event
TH1D * fh1EtaJet[fgkiNBinsCent]
pt spectra of jets for normalisation of in-jet V0 spectra
TH2D * fh2V0PtJetAngleALambda[fgkiNBinsCent]
pt correlations, in a centrality bin, pt_neg-daughter;pt_pos-daughter;pt_V0;pt_jet;pt_leading-track ...
TH1D * fh1V0CounterCentK0s[fgkiNBinsCent]
pseudorapidity vs clusters
Double_t ptMin
THnSparse * fhnV0ALambdaInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]
THnSparse * fh3CCMassCorrelLNotK
mass correlation of candidates
THnSparse * fhnV0ALambdaInJetsMCFD[fgkiNBinsCent]
TH2D * fh2V0LambdaInJetPtMCGen[fgkiNBinsCent]
V0 inclusive, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
TH1D * fh1VtxZME[fgkiNBinsCent]
z coordinate of the primary vertex
TList * fOutputListQA
Output list for standard analysis results.
THnSparse * fh3V0ALambdaEtaPtMassMCRec[fgkiNBinsCent]
THnSparse * fhnV0InJetLambda[fgkiNBinsCent]
TH2D * fh2CCK0s
Armenteros-Podolanski.
THnSparse * fhnV0NoJetK0s[fgkiNBinsCent]
V0 outside jet cones, in a centrality bin, m_V0; pt_V0; eta_V0.
TH2D * fh2QAV0PhiRows[fgkiNQAIndeces]
pt vs TPC rows
TH1D * fh1QAV0TPCRefit[fgkiNQAIndeces]
online vs offline reconstructed V0 candidates
THnSparse * fhnV0LambdaInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]
Container for particles within the EMCAL framework.
TH2D * fh2V0K0sEtaPtMCGen[fgkiNBinsCent]
pt spectrum of false reconstructed K0s in event
AliMCEvent * fEventMC
Output AOD event.
THnSparse * fhnV0InRndK0s[fgkiNBinsCent]
V0 in perpendicular cones, in a centrality bin, m_V0; pt_V0; eta_V0; pt_jet.
TH2D * fh2EtaPhiRndCone[fgkiNBinsCent]
number of generated random cones in centrality bins
TH1D * fh1V0InvMassK0sAll[fgkiNCategV0]
number of K0s candidates after various cuts
THnSparse * fhnV0K0sInJetsDaughterEtaPtPtMCRec[fgkiNBinsCent]
mass-eta-pt spectrum of successfully reconstructed K0s in jet
static Double_t fgkiCentMixBinRanges[fgkiNBinsCentMix+1]
THnSparse * fhnV0InPerpLambda[fgkiNBinsCent]
AliAODJet * GetRandomCone(const TClonesArray *array, Double_t dEtaConeMax, Double_t dDistance) const
AliAODEvent * fAODOut
Input AOD event.
TH1D * fh1AreaExcluded
median-cluster cone eta-phi
TH1D * fh1QAV0RapK0s[fgkiNQAIndeces]
daughters azimuth vs azimuth
Bool_t fbIsPbPb
Output list for MC related results.
Int_t cH
Definition: Combine.C:26
static const Int_t fgkiNCategV0
distance in eta-phi between V0 and the closest jet
AliEventPoolManager * fPoolMgr
random-number generator
TH1D * fh1VtxZ[fgkiNBinsCent]
number of tracks vs centrality
THnSparse * fhnV0CorrelSELambda[fgkiNBinsCent]
pt correlations, in a centrality bin, pt_neg-daughter;pt_pos-daughter;pt_V0;pt_jet;pt_leading-track ...
TH1D * fh1V0K0sPtMCRecFalse[fgkiNBinsCent]
pt-mass spectrum of successfully reconstructed K0s in event
int Int_t
Definition: External.C:63
TH1D * fh1DistanceV0JetsK0s[fgkiNBinsCent]
distance in eta-phi between jets within events
TH1D * fh1V0CandPerEvent
xy coordinates of the primary vertex
AliAnalysisTaskV0sInJetsEmcal & operator=(const AliAnalysisTaskV0sInJetsEmcal &)
TH2D * fh2ArmPodK0s[fgkiNQAIndeces]
daughters pt vs pt, in mass peak
TH1D * fh1EventCent
number of events for different selection steps and different centralities
THnSparse * fhnV0InclusiveLambda[fgkiNBinsCent]
float Float_t
Definition: External.C:68
THnSparse * fh3V0ALambdaInJetPtMassMCRec[fgkiNBinsCent]
THnSparse * fhnV0LambdaInclDaughterEtaPtPtMCRec[fgkiNBinsCent]
TH2D * fh2ArmPod[fgkiNQAIndeces]
lifetime calculated in xyz
TH2D * fh2V0K0sMCResolMPt[fgkiNBinsCent]
V0 in jets, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
TH1D * fh1DistanceV0JetsLambda[fgkiNBinsCent]
distance in eta-phi between V0 and the closest jet
TH1D * fh1QAV0DCAVtx[fgkiNQAIndeces]
charge
TH1D * fh1NJetPerEvent[fgkiNBinsCent]
pt of trigger track
THnSparse * fhnV0InRndLambda[fgkiNBinsCent]
THnSparse * fh3V0LambdaInJetEtaPtMCGen[fgkiNBinsCent]
TH2D * fh2EtaPtJet[fgkiNBinsCent]
jet eta
Definition: External.C:228
Definition: External.C:212
TH1D * fh1QAV0Charge[fgkiNQAIndeces]
pt daughter
static const Int_t fgkiCentBinRanges[fgkiNBinsCent]
THnSparse * fh3V0LambdaEtaPtMassMCRec[fgkiNBinsCent]
TH1D * fh1PhiJet[fgkiNBinsCent]
jet eta-pT
THnSparse * fh4V0LambdaInJetEtaPtMassMCRec[fgkiNBinsCent]
void FillQAHistogramV0(AliAODVertex *vtx, const AliAODv0 *vZero, Int_t iIndexHisto, Bool_t IsCandK0s, Bool_t IsCandLambda, Bool_t IsCandALambda, Bool_t IsInPeakK0s, Bool_t IsInPeakLambda, Bool_t IsInPeakALambda)
THnSparse * fhnV0NoJetALambda[fgkiNBinsCent]
TH1D * fh1DistanceJets[fgkiNBinsCent]
area of excluded cones for outside-cones V0s
TH1D * fh1QAV0DCAV0[fgkiNQAIndeces]
DCA of daughters to prim vtx.
THnSparse * fh4V0K0sInJetEtaPtMassMCRec[fgkiNBinsCent]
eta-pt spectrum of generated K0s in jet
AliJetContainer * fJetsBgCont
Signal Jets.
TH1D * fh1EventCent2Jets
number of events for different centralities
TH1D * fh1NRndConeCent
number of jets per event
TList * fOutputListCuts
Output list for quality assurance.
TH2D * fh2V0ALambdaMCResolMPt[fgkiNBinsCent]
V0 in jets, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
THnSparse * fhnV0LambdaBulkMCFD[fgkiNBinsCent]
TH2D * fh2V0K0sMCPtGenPtRec[fgkiNBinsCent]
K0s mass resolution vs pt.
THnSparse * fhnV0InPerpALambda[fgkiNBinsCent]
Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
TH1D * fh1V0CounterCentLambda[fgkiNBinsCent]
K0s generated pt vs reconstructed pt.
TH1D * fh1EventCent2NoJets
number of events for different centralities
THnSparse * fhnV0InMedALambda[fgkiNBinsCent]
THnSparse * fhnV0OutJetALambda[fgkiNBinsCent]
THnSparse * fhnV0CorrelMEK0s[fgkiNBinsCent]
V0-jet phi,eta correlations in same events, in a centrality bin, m_V0; pt_V0; eta_V0; pt_jet; delta-p...
TH2D * fh2V0ALambdaInJetPtMCGen[fgkiNBinsCent]
V0 inclusive, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
THnSparse * fhnV0InclusiveALambda[fgkiNBinsCent]
THnSparse * fhnV0InclusiveK0s[fgkiNBinsCent]
V0 invariant mass, in centrality bins.
TH2D * fh2QAV0EtaPtK0sPeak[fgkiNQAIndeces]
V0 invariant mass for each selection steps.
TH1D * fh1QAV0TPCRowsFind[fgkiNQAIndeces]
pt vs Chi2/ndf
TH1D * fh1PtJet[fgkiNBinsCent]
number of V0 cand per event
TH2D * fh2PtJetPtTrigger[fgkiNBinsCent]
pt_jet; pt of leading jet track
THnSparse * fhnV0CorrelSEK0s[fgkiNBinsCent]
pt correlations, in a centrality bin, pt_neg-daughter;pt_pos-daughter;pt_V0;pt_jet;pt_leading-track ...
TH2D * fh2QAV0EtaNCl[fgkiNQAIndeces]
clusters vs TPC rows
TH1D * fh1V0InvMassLambdaAll[fgkiNCategV0]
number of Lambda candidates after various cuts
TH1D * fh1PtTrigger[fgkiNBinsCent]
pt_jet; pt of trigger track
static Double_t fgkiZVtxMixBinRanges[fgkiNBinsZVtxMix+1]
Double_t MassPeakSigmaOld(Double_t pt, Int_t particle)
TH1D * fh1EventCent2
number of events for different centralities
Int_t GetCentralityBinIndex(Double_t centrality)
THnSparse * fhnV0K0sInclDaughterEtaPtPtMCRec[fgkiNBinsCent]
eta-pt-mass spectrum of successfully reconstructed K0s in event
TH2D * fh2QAV0PtRows[fgkiNQAIndeces]
pseudorapidity vs TPC rows
TH1D * fh1QACTau3D[fgkiNQAIndeces]
lifetime calculated in xy
THnSparse * fh3V0ALambdaInJetEtaPtMCGen[fgkiNBinsCent]
AliTrackContainer * fTracksCont
Background Jets.
THnSparse * fhnV0NoJetLambda[fgkiNBinsCent]
TH2D * fh2QAV0PtPtK0sPeak[fgkiNQAIndeces]
V0 rapidity.
TH2D * fh2V0PtJetAngleK0s[fgkiNBinsCent]
V0-jet phi,eta correlations in mixed events, in a centrality bin, m_V0; pt_V0; eta_V0; pt_jet; delta-...
void SetPoolParam(Int_t sizepool=1000, Int_t jetsperpool=1, Float_t fractionmin=1., Int_t neventsmin=0)
Base task in the EMCAL jet framework.
Represent a jet reconstructed using the EMCal jet framework.
Definition: AliEmcalJet.h:51
TH2D * fh2EventCentTracks
number of events for different centralities
Bool_t IsSelectedForJets(AliAODEvent *fAOD, Double_t dVtxZCut, Double_t dVtxR2Cut, Double_t dCentCutLo, Double_t dCentCutUp, Double_t dDeltaZMax=-1)
TH2D * fh2QAV0EtaRows[fgkiNQAIndeces]
pseudorapidity
TH2D * fh2EtaPhiMedCone[fgkiNBinsCent]
number of found median-cluster cones in centrality bins
THnSparse * fhnV0InMedK0s[fgkiNBinsCent]
V0 in random cones, in a centrality bin, m_V0; pt_V0; eta_V0.
THnSparse * fhnV0CorrelMELambda[fgkiNBinsCent]
const char Option_t
Definition: External.C:48
THnSparse * fhnV0ALambdaInclDaughterEtaPtPtMCRec[fgkiNBinsCent]
TH2D * fh2CCLambda
K0s candidates in Lambda peak.
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)
TH2D * fh2QAV0EtaEtaK0s[fgkiNQAIndeces]
daughters pseudorapidity vs V0 pt, in mass peak
Bool_t FillHistograms()
Function filling histograms.
Bool_t OverlapWithJets(const TClonesArray *array, const AliVParticle *cone, Double_t dDistance) const
void SetCutCrossedRowsOverFindMax(Double_t val=1e3)
THnSparse * fhnV0ALambdaInclMCFD[fgkiNBinsCent]
void SetCutCrossedRowsOverFindMin(Double_t val=0.8)
bool Bool_t
Definition: External.C:53
void SetCutPtDaughterMin(Double_t val=0.150)
Container structure for EMCAL clusters.
THnSparse * fhnV0InJetALambda[fgkiNBinsCent]
THnSparse * fh4V0ALambdaInJetEtaPtMassMCRec[fgkiNBinsCent]
TH2D * fh2QAV0PhiPhiK0s[fgkiNQAIndeces]
daughters pseudorapidity vs pseudorapidity
TH1D * fh1QAV0Cos[fgkiNQAIndeces]
DCA between daughters.
THnSparse * fhnPtDaughterALambda[fgkiNBinsCent]
Double_t AreaCircSegment(Double_t dRadius, Double_t dDistance) const
TH2D * fh2QAV0PtNCls[fgkiNQAIndeces]
findable clusters
Container for jet within the EMCAL jet framework.
Bool_t IsParticleInCone(const AliVParticle *part1, const AliVParticle *part2, Double_t dRMax) const
THnSparse * fhnV0LambdaInJetsMCFD[fgkiNBinsCent]
TH2D * fh2QAV0PhiPtALambdaPeak[fgkiNQAIndeces]
Lambda candidate in peak: azimuth; pt.
TH1D * fh1QAV0Pt[fgkiNQAIndeces]
anti-Lambda candidate in peak: azimuth; pt
static bool CompareClusters(const std::vector< Double_t > cluster1, const std::vector< Double_t > cluster2)
TH1D * fh1QAV0R[fgkiNQAIndeces]
cosine of pointing angle (CPA)
THnSparse * fh3V0K0sEtaPtMassMCRec[fgkiNBinsCent]
eta-pt spectrum of all generated K0s in event
TH2D * fh2V0K0sInJetPtMCGen[fgkiNBinsCent]
V0 inclusive, reconstructed: charge_daughter; eta_daughter; pt_daughter; eta_V0; pt_V0; pt_jet...
THnSparse * fhnPtDaughterLambda[fgkiNBinsCent]
THnSparse * fhnV0LambdaInclMCFD[fgkiNBinsCent]
TH1D * fh1QAV0Eta[fgkiNQAIndeces]
ratio rows/clusters
THnSparse * fhnV0OutJetK0s[fgkiNBinsCent]
V0 in medium cones, in a centrality bin, m_V0; pt_V0; eta_V0.
TH1D * fh1QAV0TPCFindable[fgkiNQAIndeces]
crossed TPC pad rows