AliPhysics  v5-07-15-01 (b3d7633)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliAnaParticleHadronCorrelation.h
Go to the documentation of this file.
1 #ifndef ALIANAPARTICLEHADRONCORRELATION_H
2 #define ALIANAPARTICLEHADRONCORRELATION_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 //_________________________________________________________________________
21 //_________________________________________________________________________
22 
24 class AliAODPWG4ParticleCorrelation ;
25 
27 
28 public:
29 
31 
33 
34  // General methods
35 
36  TObjString * GetAnalysisCuts();
37 
38  TList * GetCreateOutputObjects();
39 
40  void Init();
41 
42  void InitParameters();
43 
44  void FillEventMixPool() ;
45 
47 
48  void Print(const Option_t * opt) const;
49 
50  // Main analysis methods
51 
52  Bool_t FindLeadingOppositeHadronInWindow(AliAODPWG4ParticleCorrelation * particle);
53 
54  Bool_t GetDecayPhotonMomentum (Int_t indexPhoton1, Int_t indexPhoton2, Int_t idetector);
55 
56  void MakeChargedCorrelation (AliAODPWG4ParticleCorrelation * particle) ;
57 
58  void MakeNeutralCorrelation (AliAODPWG4ParticleCorrelation * particle) ;
59 
60  void MakeMCChargedCorrelation (Int_t triggerMCLable, Int_t histoIndex, Bool_t lostDecayPair) ;
61 
62  void MakeChargedMixCorrelation(AliAODPWG4ParticleCorrelation * particle) ;
63 
64  // Filling histogram methods
65 
66  void FillChargedAngularCorrelationHistograms (Float_t ptAssoc, Float_t ptTrig, Int_t assocBin,
67  Float_t phiAssoc, Float_t phiTrig, Float_t deltaPhi,
68  Float_t etaAssoc, Float_t etaTrig,
69  Int_t decayTag, Float_t hmpidSignal, Int_t outTOF,
70  Int_t cenbin, Int_t mcTag);
71 
73 
74  Bool_t FillChargedMCCorrelationHistograms (Float_t mcAssocPt, Float_t mcAssocPhi, Float_t mcAssocEta,
75  Float_t mcTrigPt, Float_t mcTrigPhi, Float_t mcTrigEta,
76  Int_t histoIndex, Bool_t lostDecayPair);
77 
78  void FillChargedMomentumImbalanceHistograms (Float_t ptTrig, Float_t ptAssoc,
79  Float_t deltaPhi, Int_t cenbin, Int_t charge,
80  Int_t assocBin, Int_t decayTag,
81  Int_t outTOF, Int_t mcTag );
82 
83  void FillChargedUnderlyingEventHistograms (Float_t ptTrig, Float_t ptAssoc,
84  Float_t deltaPhi, Int_t cenbin, Int_t outTOF, Int_t mcTag);
85 
86  void FillChargedUnderlyingEventSidesHistograms(Float_t ptTrig, Float_t ptAssoc,
87  Float_t deltaPhi, Int_t mcTag);
88 
89  void FillDecayPhotonCorrelationHistograms (Float_t ptAssoc, Float_t phiAssoc, Bool_t bChargedOrNeutral);
90 
92 
93 
94  void FillNeutralUnderlyingEventSidesHistograms(Float_t ptTrig, Float_t ptAssoc,
95  Float_t zT, Float_t hbpZT,
96  Float_t deltaPhi);
97 
98  void InvMassHisto(AliAODPWG4ParticleCorrelation * trigger, Int_t mcIndex);
99 
100  Int_t GetMCTagHistogramIndex(Int_t tag);
101 
103  enum mcTypes { kmcPhoton = 0, kmcPi0 = 1, kmcPi0Decay = 2, kmcEta = 3, kmcEtaDecay = 4,
105 
106  static const Int_t fgkNmcTypes = 10;
107 
108 
110 
111  // Parameter setter and getter
112 
113  Float_t GetMinimumTriggerPt() const { return GetMinPt() ; }
114  Float_t GetMaximumTriggerPt() const { return GetMaxPt() ; }
115  void SetTriggerPtRange(Float_t min, Float_t max)
116  { SetMinPt(min), SetMaxPt(max) ; }
117 
118 
119  Float_t GetMaximumAssociatedPt() const { return fMaxAssocPt ; }
120  Float_t GetMinimumAssociatedPt() const { return fMinAssocPt ; }
121  void SetAssociatedPtRange(Float_t min, Float_t max)
122  { fMaxAssocPt = max ; fMinAssocPt = min ; }
123 
124  Double_t GetDeltaPhiMaxCut() const { return fDeltaPhiMaxCut ; }
125  Double_t GetDeltaPhiMinCut() const { return fDeltaPhiMinCut ; }
126  void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)
127  { fDeltaPhiMaxCut = phimax ; fDeltaPhiMinCut = phimin ; }
128 
129  // Leading Hadron
130  Double_t GetLeadHadronPhiMaxCut() const { return fMaxLeadHadPhi ; }
131  Double_t GetLeadHadronPhiMinCut() const { return fMinLeadHadPhi ; }
132  void SetLeadHadronPhiCut(Float_t min, Float_t max)
133  { fMaxLeadHadPhi = max ; fMinLeadHadPhi = min ; }
134 
135  Double_t GetLeadHadronPtMinCut() const { return fMinLeadHadPt ; }
136  Double_t GetLeadHadronPtMaxCut() const { return fMaxLeadHadPt ; }
137  void SetLeadHadronPtCut(Float_t min, Float_t max)
138  { fMaxLeadHadPt = max ; fMinLeadHadPt = min ; }
139 
140  Bool_t IsLeadHadronCutOn() const { return fSelectLeadingHadronAngle ; }
143 
146 
149 
152 
155 
156  // Background bins
157  void SetNBackgroundBins(Int_t n) { if(n < 19) fNBkgBin = n ; }
158  void SetBackgroundLimits(Int_t i,Float_t l){ if(i <= fNBkgBin) fBkgBinLimit[i] = l; }
159 
160  // UE
161 
162  Double_t GetUeDeltaPhiMaxCut() const { return fUeDeltaPhiMaxCut ; }
163  Double_t GetUeDeltaPhiMinCut() const { return fUeDeltaPhiMinCut ; }
164 
165  void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax)
166  { fUeDeltaPhiMaxCut = uephimax ; fUeDeltaPhiMinCut = uephimin ; }
167 
168  Bool_t IsSeveralUEOn() const { return fMakeSeveralUE ; }
171 
172  // Do trigger-neutral correlation
173  Bool_t DoNeutralCorr() const { return fNeutralCorr ; }
174  void SwitchOnNeutralCorr() { fNeutralCorr = kTRUE ; }
175  void SwitchOffNeutralCorr() { fNeutralCorr = kFALSE ; }
176 
177  // Taking the absolute leading as the trigger or not
178  Bool_t DoAbsoluteLeading() const { return fMakeAbsoluteLeading ; }
181 
182  // Taking the near side leading as the trigger or not
183  Bool_t DoNearSideLeading() const { return fMakeNearSideLeading ; }
186 
187  // Do decay-hadron correlation if it is pi0 trigger
188  Bool_t IsPi0Trigger() const { return fPi0Trigger ; }
191 
192  Bool_t IsDecayTrigger() const { return fDecayTrigger ; }
195  void SetNDecayBits(Int_t n) { fNDecayBits = n ; }
196  void SetDecayBits(Int_t i, UInt_t bit)
198 
199  Bool_t IsHMPIDCorrelation() const { return fHMPIDCorrelation ; }
202 
205 
206  Bool_t OnlyIsolated() const { return fSelectIsolated ; }
207  void SelectIsolated(Bool_t s) { fSelectIsolated = s ; }
208 
209  void SetPi0AODBranchName(TString n) { fPi0AODBranchName = n ; }
210 
212 
213  void SetNAssocPtBins(Int_t n) ;
214  void SetAssocPtBinLimit(Int_t ibin, Float_t pt) ;
215 
216  Bool_t IsMixStoredInReaderOn() const { return fUseMixStoredInReader ; }
219 
222 
223  void SetM02Cut(Float_t min=0, Float_t max=10) { fM02MinCut = min ; fM02MaxCut = max ; }
224 
227 
230 
233 
236 
239 
240  void SetMCGenType(Int_t min = 0, Int_t max = 6) { if(min >= 0 && min < fgkNmcTypes) fMCGenTypeMin = min ;
241  if(max >= 0 && max < fgkNmcTypes) fMCGenTypeMax = max ; }
242 
243 private:
244 
246 
248 
249  Float_t fMaxAssocPt ;
250  Float_t fMinAssocPt ;
251 
252  Double_t fDeltaPhiMaxCut ;
253  Double_t fDeltaPhiMinCut ;
254 
255  Bool_t fSelectIsolated ;
256 
257  Bool_t fMakeSeveralUE ;
258 
259  Double_t fUeDeltaPhiMaxCut ;
260  Double_t fUeDeltaPhiMinCut ;
261 
263 
265 
266  Bool_t fNeutralCorr ;
267 
268  Bool_t fPi0Trigger ;
269 
270  Bool_t fDecayTrigger ;
271 
272  Int_t fNDecayBits ;
273 
276 
277  Int_t fNBkgBin;
278  Float_t fBkgBinLimit[20];
279 
282 
284 
286 
287  Bool_t fFillBradHisto ;
288 
289  Int_t fNAssocPtBins ;
290 
291  Float_t fAssocPtBinLimit[20] ;
292 
293  Bool_t fCorrelVzBin ;
294 
297 
299  TList ** fListMixCaloEvents ;
300 
302 
304 
305  Float_t fM02MaxCut ;
306  Float_t fM02MinCut ;
307 
309 
311 
312  Float_t fMinLeadHadPhi;
313  Float_t fMaxLeadHadPhi;
314 
315  Float_t fMinLeadHadPt;
316  Float_t fMaxLeadHadPt;
317 
319 
321 
323 
325 
327 
329 
332 
333  TVector3 fTrackVector;
334  TLorentzVector fMomentum;
335  TLorentzVector fMomentumIM;
336  TLorentzVector fDecayMom1;
337  TLorentzVector fDecayMom2;
338 
339  // Histograms
340 
341  // Trigger particles
346  TH1F * fhPtTrigger;
348  TH1F * fhPtTriggerPileUp[7];
350  TH2F * fhPtTriggerBin;
351  TH2F * fhPhiTrigger;
352  TH2F * fhEtaTrigger;
353 
355 
358 
362 
368 
369  // Leading hadron in the opposite side of the trigger
375 
376  //trigger-charged histograms
378  TH2F * fhPhiCharged ;
379  TH2F * fhEtaCharged ;
384  TH1F * fhUePart;
385  TH2F * fhXECharged ;
387  TH2F * fhXEUeCharged ;
388  TH2F * fhXEPosCharged ;
389  TH2F * fhXENegCharged ;
393  TH2F * fhZTCharged ;
394  TH2F * fhZTUeCharged ;
395  TH2F * fhZTPosCharged ;
396  TH2F * fhZTNegCharged ;
399 
402 
405 
409 
410  // Events tagged as pileup by SDD,EMCal, or combination
415  TH2F * fhXEChargedPileUp[7] ;
416  TH2F * fhXEUeChargedPileUp[7] ;
417  TH2F * fhZTChargedPileUp[7] ;
418  TH2F * fhZTUeChargedPileUp[7] ;
420 
428 
431  TH2F * fhXEChargedBC0 ;
433  TH2F * fhZTChargedBC0 ;
436 
444 
445  // If several UE calculation is on, most useful for jet-jet events contribution
459 
460  // For pout and kt extraction
461  TH2F * fhPtTrigPout ;
462  TH2F * fhPtTrigCharged ;
463 
466 
469 
471  TH2F ** fhXEMult ;
472 
474  TH2F ** fhXEUeMult ;
475 
477  TH2F ** fhZTMult ;
478 
480  TH2F ** fhZTUeMult ;
481 
482  TH2F * fhAssocPtBkg;
483 
486 
489 
492 
495 
498 
501 
504 
505  TH2F * fhDeltaPhiBrad;
506 
508  TH2F ** fhXEAssocPtBin ;
509 
511  TH2F ** fhZTAssocPtBin ;
512 
514  TH2F ** fhXEVZ ;
515 
517  TH2F ** fhZTVZ ;
518 
519  // Trigger-neutral histograms
521  TH2F * fhPhiNeutral ;
522  TH2F * fhEtaNeutral ;
527  TH2F * fhXENeutral ;
528  TH2F * fhXEUeNeutral ;
531  TH2F * fhZTNeutral ;
532  TH2F * fhZTUeNeutral ;
535 
536  // If several UE calculation is on,
542 
543  // Pi0/Eta trigger correlation, recover input photons
548 
552 
553  // Decay photon trigger correlation
557 
560 
561  // If the data is MC, correlation with generated particles
562  // check the origin of the cluster : decay photon (pi0, eta, other), merged photon (pi0),
563  // hadron, rest of photons (prompt, FSR, ISR)
591 
592  // Mixing
594  TH2F * fhNtracksMB;
595  TH2F * fhNclustersMB;
598  TH2F * fhMixXECharged;
601 
604 
607 
610 
613 
614  TH1I * fhEventBin;
615  TH1I * fhEventMixBin;
616  TH1I * fhEventMBBin;
617 
618  // Check invariant mass
621 
622  // pT in isolation cone bins histograms
623 
626 
628  TH1F ** fhPtSumInConeBin ;
629 
632 
635 
638 
641 
644 
647 
649  ClassDef(AliAnaParticleHadronCorrelation,35) ;
651 
652 } ;
653 
654 #endif //ALIANAPARTICLEHADRONCORRELATION_H
655 
656 
657 
Int_t charge
TH2F * fhDeltaPhiDeltaEtaCharged
! Differences of eta and phi between trigger and charged hadrons.
TH2F * fhMCEtaCharged[fgkNmcTypes]
! MC pure particles charged primary pt vs eta (both associated)
TH2F * fhMCMassPtTrigger[fgkNmcTypes]
! Invariant mass of the trigger vs MC origin.
TH2F * fhMCPtXECharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs xE
TH2F * fhMCPtAssocDeltaPhi[fgkNmcTypes]
! MC pure particles charged associated primary pt vs delta phi (associated-trigger) ...
TH1F * fhPtNoLeadingOppositeHadron
! pT trigger for events without opposite hadrons.
TH1F ** fhSumPtConeBinMC
[fNBkgBin*fgkNmcTypes]
TH2F * fhXEChargedVtxBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhMixXEUeCharged
! xE for mixed event in Ue region.
TH2F * fhDeltaPhiChargedPt
! Difference of charged particle phi and trigger particle phi as function of charged. particle pT
TH2F * fhPtHbpXECharged_Cone2
! Trigger particle -charged hadron momentum HBP histogram in cone2 (5pi/6-7pi/6). ...
TH2F * fhPtTrigPout
! Pout =associated pt*sin(delta phi) distribution vs trigger pt
TH2F * fhZTCharged
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhPhiCharged
! Phi distribution of charged particles.
TH2F * fhZTPi0DecayCharged
! Trigger particle (decay from pi0/eta trigger)-charged hadron momentum imbalance histogram ...
TH2F * fhXEDecayCharged[AliNeutralMesonSelection::fgkMaxNDecayBits]
! Trigger particle (decay from pi0)-charged hadron momentum imbalance histogram.
void FillNeutralUnderlyingEventSidesHistograms(Float_t ptTrig, Float_t ptAssoc, Float_t zT, Float_t hbpZT, Float_t deltaPhi)
void FillChargedUnderlyingEventHistograms(Float_t ptTrig, Float_t ptAssoc, Float_t deltaPhi, Int_t cenbin, Int_t outTOF, Int_t mcTag)
Fill underlying event histograms.
TList ** fListMixTrackEvents
Containers for tracks in stored events for mixing.
void InitParameters()
Initialize the default parameters of the analysis.
TH2F * fhMixDeltaPhiCharged
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH1I * fhNEventsTrigger
! Number of analyzed triggered events.
TH2F * fhMCPtHbpZTCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/zT)
void MakeChargedCorrelation(AliAODPWG4ParticleCorrelation *particle)
void SetAssociatedPtRange(Float_t min, Float_t max)
TH2F * fhDeltaPhiNeutral
! Difference of neutral particle phi and trigger particle phi as function of trigger particle pT ...
TH2F * fhZTNegCharged
! Trigger particle -negative charged hadron momentum imbalance histogram.
TH1F * fhPtTriggerIsoCut
! pT distribution of trigger particles after isolation cut selection.
TString fPi0AODBranchName
Name of AOD branch with pi0, not trigger.
TH2F * fhXEUeCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram.
TH1F * fhPtTriggerSSCut
! pT distribution of trigger particles after shower shape selection.
TH2F * fhMCPhiCharged[fgkNmcTypes]
! MC pure particles charged primary pt vs phi (both associated)
Bool_t fMakeAbsoluteLeading
Requesting absolute leading triggers.
TH1F * fhPtDecayTriggerMC[AliNeutralMesonSelection::fgkMaxNDecayBits][fgkNmcTypes]
! pT distribution of trigger particles, tagged as decay, check the origin of the cluster.
TH1F * fhPtDecayTrigger[AliNeutralMesonSelection::fgkMaxNDecayBits]
! pT distribution of trigger particles, tagged as decay.
TLorentzVector fMomentumIM
! Cluster momentum from Invariant mass.
void FillDecayPhotonCorrelationHistograms(Float_t ptAssoc, Float_t phiAssoc, Bool_t bChargedOrNeutral)
Do correlation with decay photons of triggered pi0 or eta.
void FillEventMixPool()
Fill the pool with tracks or clusters if requested.
TH2F * fhDeltaPhiUeRightUpCharged
! Difference of charged particle from underlying events phi and trigger particle phi ...
TH1F * fhPtTriggerVtxBC0
! pT distribution of trigger particles when vertex is BC0.
void MakeMCChargedCorrelation(Int_t triggerMCLable, Int_t histoIndex, Bool_t lostDecayPair)
Make the trigger-charged particles correlation at the generator level.
TH2F * fhDeltaPhiChargedMC[fgkNmcTypes]
! Trigger particle -charged hadron delta phi histogram, check the origin of the cluster : decay photo...
TH2F * fhDeltaPhiUeLeftUpCharged
! Difference of charged particle from underlying events phi and trigger particle phi ...
TH2F * fhEtaCharged
! Eta distribution of charged particles.
TH1F * fhMCUePart[fgkNmcTypes]
! MC pure UE particles distribution vs pt trig
TH2F * fhPtHbpXENeutral
! Trigger particle - neutral particle momentum HBP histogram
TH2F ** fhDeltaPhiBradAssocPtBin
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhDeltaPhiDecayCharged[AliNeutralMesonSelection::fgkMaxNDecayBits]
! Difference of charged particle phi and photon decay trigger.
TLorentzVector fDecayMom2
! Decay particle momentum.
TH2F ** fhDeltaPhiAssocPtBinDEta08
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhZTPosCharged
! Trigger particle -positive charged hadron momentum imbalance histogram.
TH2F ** fhDeltaPhiDeltaEtaAssocPtBin
Difference of charged particle phi and trigger particle phi as function eta difference, for different associated bins.
TH2F * fhDeltaEtaChargedPtA3GeV
! Difference of charged particle eta and trigger particle eta as function of trigger particle pT...
Bool_t fHMPIDCorrelation
Correlate with particles on HMPID or its acceptance.
Int_t fMCGenTypeMin
Of the fgkNmcTypes possible types, select those between fMCGenTypeMin and fMCGenTypeMax.
TH2F * fhPtHbpZTCharged
! Trigger particle -charged hadron momentum HBP histogram.
TH2F * fhMCPtXEUeLeftCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs xE (underlying event,left cone) ...
TH2F * fhPtTriggerCentrality
! pT distribution of trigger particles vs centrality.
TH2F * fhXEChargedPileUp[7]
! Trigger particle -charged hadron momentum imbalance histogram.
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
Bool_t FindLeadingOppositeHadronInWindow(AliAODPWG4ParticleCorrelation *particle)
TH2F * fhMixHbpXECharged
! ln(1/xE) for mixed event.
void FillChargedEventMixPool()
Mixed event pool filling for tracks.
TH2F * fhXEUeChargedRightMC[fgkNmcTypes]
! Trigger particle -underlying hadron momentum imbalance histogram for UE in right cone...
Bool_t fCorrelVzBin
Fill one histogram per vz bin.
TH2F * fhTriggerEventPlaneCentrality
! Event plane vs centrality for trigger particles.
Double_t fDeltaPhiMaxCut
Minimum Delta Phi Gamma-Hadron.
Float_t fM02MinCut
Study photon clusters with l0 larger than cut.
TH2F * fhMCPtZTCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs zT
TH2F * fhDeltaPhiChargedOtherBC
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
Bool_t fNeutralCorr
switch the analysis with neutral particles.
void FillChargedAngularCorrelationHistograms(Float_t ptAssoc, Float_t ptTrig, Int_t assocBin, Float_t phiAssoc, Float_t phiTrig, Float_t deltaPhi, Float_t etaAssoc, Float_t etaTrig, Int_t decayTag, Float_t hmpidSignal, Int_t outTOF, Int_t cenbin, Int_t mcTag)
Fill angular correlation related histograms.
TH2F * fhDeltaPhiUeNeutralPt
! Difference of neutral particle phi and trigger particle phi as function of neutral particle particl...
TH2F * fhZTChargedOtherBC
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhNtracksMB
! Total number of tracks in MB events.
TH2F * fhDeltaPhiChargedPtA3GeVPileUp[7]
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH2F * fhZTNeutral
! Trigger particle - neutral hadron momentum imbalance histogram
TH2F * fhDeltaPhiChargedBC0
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH2F * fhXEUeChargedLeftMC[fgkNmcTypes]
! Trigger particle -underlying hadron momentum imbalance histogram for UE in left cone...
Bool_t fFillLeadHadOppositeHisto
Fill histograms for leading hadrons in opposite side of trigger.
TH2F ** fhMixDeltaPhiChargedAssocPtBinDEta0
[fNAssocPtBins*GetNZvertBin()]
TH1F ** fhPtLeadConeBinMC
[fNBkgBin*fNDecayBits]
TH2F * fhDeltaPhiUeRightDownCharged
! Difference of charged particle from underlying events phi and trigger particle phi ...
Bool_t fFillAODWithReferences
Add to the trigger particle AOD the reference to the tracks or neutrals in correlation.
TH2F * fhPtHbpXEUeLeftNeutral
! Trigger particle -underlying neutral hadron momentum HBP histogram
TH2F * fhXEUeRightDownCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
TH2F * fhPtHbpZTUeLeftNeutral
! Trigger particle -underlying neutral hadron momentum HBP histogram
TH2F * fhDeltaPhiCharged
! Difference of charged particle phi and trigger particle phi as function of trigger. particle pT
TH2F * fhMCPtZTUeLeftCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs zT (underlying event, left cone) ...
Float_t fDecayTagsM02Cut
Lambda0 cut for decay particles.
TH2F ** fhDeltaPhiDecayChargedAssocPtBin
Tagged as decay (fDecayBits[0]) Trigger pT vs dPhi for different associated pt bins.
TH2F * fhMassPtTrigger
! Invariant mass of the trigger.
TH2F * fhPtHbpXEUeNeutral
! Trigger particle - underlying neutral hadron momentum HBP histogram
TVector3 fTrackVector
! Track momentum vector.
TH2F * fhPtPi0DecayRatio
! for pi0 trigger pt and ratio of decay photon pt
TH2F * fhDeltaPhiChargedVtxBC0
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
Float_t fMaxLeadHadPhi
Maximum ange between the trigger and leading hadron.
void SetLeadHadronPtCut(Float_t min, Float_t max)
Int_t fLeadingTriggerIndex
Store here per event the trigger index, to avoid too many loops.
TH2F ** fhDeltaPhiAssocPtBinDEta0
[fNAssocPtBins*GetNZvertBin()]
TH1F * fhUePart
! UE particles distribution vs pt trigger.
TH2F * fhDeltaPhiPi0DecayCharged
! Difference of charged particle phi and decay photon from pi0/eta trigger
TH2F * fhXEUeNeutral
! Trigger particle - neutral hadron momentum imbalance histogram
Correlate trigger particles (photon, pi0, tracks) and charged tracks: Azimuthal correlations, xE distributions.
Base class for CaloTrackCorr analysis algorithms.
Float_t fMaxLeadHadPt
Maximum pT of leading hadron.
void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)
void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax)
void InvMassHisto(AliAODPWG4ParticleCorrelation *trigger, Int_t mcIndex)
TH2F * fhZTDecayCharged[AliNeutralMesonSelection::fgkMaxNDecayBits]
! Trigger particle (decay from pi0)-charged hadron momentum imbalance histogram.
Bool_t fSelectIsolated
Select only trigger particles isolated.
TH1I * fhEventBin
[fNAssocPtBins*GetNZvertBin()]
TH1F * fhPtTriggerFidCut
! pT distribution of trigger particles after fiducial selection.
TH2F * fhXEPosCharged
! Trigger particle -positive charged hadron momentum imbalance histogram.
TH2F * fhPtHbpXEUeLeftCharged
! Trigger particle -underlying charged hadron momentum HBP histogram
TH1F * fhPtTriggerPileUp[7]
! pT distribution of trigger particles for different pile-up definition.
TH2F * fhXEChargedBC0
! Trigger particle -charged hadron momentum imbalance histogram.
Bool_t fDecayTrigger
switch the analysis with decay photon from photon trigger.
Bool_t fFillTaggedDecayHistograms
Fill pT in cone distributions in background bins for decay particles.
TH2F * fhZTChargedPileUp[7]
! Trigger particle -charged hadron momentum imbalance histogram.
Bool_t fCheckLeadingWithNeutralClusters
Compare the trigger candidate to Leading pT with the clusters pT, by default only charged...
TH2F * fhDeltaPhiUeLeftCharged
! Difference of charged particle from underlying events phi and trigger particle phi as function of c...
TH2F * fhPtTriggerEventPlane
! pT distribution of trigger particles vs centrality.
Bool_t fFillNeutralEventMixPool
Add clusters to pool if requested.
TH2F * fhDeltaEtaCharged
! Difference of charged particle eta and trigger particle eta as function of trigger. particle pT
Bool_t fFillBkgBinsHisto
Fill pT in cone in background bins distributions.
Bool_t GetDecayPhotonMomentum(Int_t indexPhoton1, Int_t indexPhoton2, Int_t idetector)
TH2F * fhXECharged
! Trigger particle -charged hadron momentum imbalance histogram.
Float_t fAssocPtBinLimit[20]
Associated pT under study.
TH2F * fhPtHbpZTUeNeutral
! Trigger particle - underlying neutral hadron momentum HBP histogram
TH2F * fhMCDeltaPhiChargedPt[fgkNmcTypes]
! MC pure particles charged delta phi vs delta eta (associated-trigger)
TH2F * fhXEUeLeftNeutral
! Trigger particle -underlying neutral hadron momentum imbalance histogram
TH2F * fhNclustersMB
! Total number of clusters in MB events.
void MakeChargedMixCorrelation(AliAODPWG4ParticleCorrelation *particle)
Mix current trigger with tracks in another Minimum Bias event.
TLorentzVector fDecayMom1
! Decay particle momentum.
TH2F * fhEtaTriggerMixed
! eta distribution vs pT of trigger particles, used in mixing.
void SetM02Cut(Float_t min=0, Float_t max=10)
void MakeNeutralCorrelation(AliAODPWG4ParticleCorrelation *particle)
TH2F * fhXEUeChargedBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhPtLeadingOppositeHadron
! pT trigger : pT distribution of leading hadron oposite to trigger.
TH2F ** fhMixDeltaPhiDeltaEtaChargedAssocPtBin
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhPtDiffPhiLeadingOppositeHadron
! pT trigger : difference phi distribution of leading hadron oposite and trigger. ...
TH1F * fhMCPtTrigger[fgkNmcTypes]
[fNAssocPtBins*GetNZvertBin()]
void FillChargedMomentumImbalanceHistograms(Float_t ptTrig, Float_t ptAssoc, Float_t deltaPhi, Int_t cenbin, Int_t charge, Int_t assocBin, Int_t decayTag, Int_t outTOF, Int_t mcTag)
Fill mostly momentum imbalance related histograms.
TH2F * fhXEChargedMC[fgkNmcTypes]
! Trigger particle -charged hadron momentum imbalance histogram, check the origin of the cluster : de...
TH2F * fhPtDiffEtaLeadingOppositeHadron
! pT trigger: difference eta distribution of leading hadron oposite and trigger.
TH2F ** fhDeltaPhiAssocPtBin
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhMCPhiTriggerNotLeading[fgkNmcTypes]
! MC pure Phi distribution of trigger not leading particles
TH2F * fhDeltaEtaNeutral
! Difference of neutral particle eta and trigger particle eta as function of trigger particle pT ...
TH2F * fhXEChargedOtherBC
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhXEUeChargedOtherBC
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhDeltaPhiChargedPileUp[7]
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
Bool_t fSelectLeadingHadronAngle
Select events with leading particle within a range.
TH2F ** fhMixDeltaPhiChargedAssocPtBin
Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH2F * fhMCPhiTrigger[fgkNmcTypes]
! MC pure Phi distribution of trigger particles
Bool_t fFillEtaGapsHisto
Fill azimuthal correlation histograms in 2 eta gaps, |eta|>0.8 and |eta|<0.01.
TH2F * fhPtHbpZTUeLeftCharged
! Trigger particle -underlying charged hadron momentum HBP histogram
void FillChargedUnderlyingEventSidesHistograms(Float_t ptTrig, Float_t ptAssoc, Float_t deltaPhi, Int_t mcTag)
TH2F * fhDeltaPhiBrad
[fNAssocPtBins*GetNZvertBin()]
Double_t fUeDeltaPhiMinCut
Maximum Delta Phi Gamma-Underlying Hadron.
TH2F * fhMCPtHbpZTUeLeftCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/zT) (underlying event, left cone) ...
TH2F ** fhXEAssocPtBin
Trigger pT vs xE for different associated pt bins.
TH2F * fhDeltaPhiPi0DecayNeutral
! Difference of neutral particle phi and decay photon from pi0/eta trigger
Float_t fMinLeadHadPhi
Minimum angle between the trigger and leading hadron.
TH2F * fhZTPi0DecayNeutral
! Trigger particle (decay from pi0/eta trigger)-neutral hadron momentum imbalance histogram ...
TH2F * fhPtHbpZTNeutral
! Trigger particle - neutral particle momentum HBP histogram
TH2F * fhXEUeRightUpCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
void Init()
Init. If tracks are not loaded, abort.
TH2F * fhPtTriggerMixedVzBin
! pT distribution of trigger particles, used in mixing, vs vz bin.
Bool_t fFillBradHisto
DPhi histograms calculated differently.
Int_t fNAssocPtBins
Number of associated pT bins under study.
TH1I * fhEventMixBin
! Number of triggers mixed in a particular bin (cen,vz,rp).
TH2F * fhDeltaPhiChargedPtA3GeVVtxBC0
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
virtual ~AliAnaParticleHadronCorrelation()
Destructor. Remove event containers.
TH2F * fhPtTrigChargedOtherBC
! trigger and correlated particl pt, to be used for mean value for kT.
TH2F * fhPtHbpZTUeCharged
! Trigger particle -underlying charged hadron momentum HBP histogram.
Float_t fMinAssocPt
Minimum associated hadron pt.
TH2F * fhXECharged_Cone2
! Trigger particle -charged hadron momentum imbalance histogram in cone2 (5pi/6-7pi/6).
TH1F * fhPtTriggerInput
! pT distribution of trigger particles before selection.
TH2F * fhZTUeLeftNeutral
! Trigger particle -underlying neutral hadron momentum imbalance histogram
TH2F * fhPtTrigChargedBC0
! trigger and correlated particl pt, to be used for mean value for kT.
TH2F * fhZTChargedVtxBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhMCPtZTUeCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs zT (underlying event)
TH2F * fhZTUeChargedPileUp[7]
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhZTChargedBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhPtTriggerBin
! pT distribution of trigger particles vs mixing bin.
TH1F * fhPtTriggerMC[fgkNmcTypes]
! pT distribution of trigger particles, check the origin of the cluster : "Photon","Pi0","Pi0Decay","EtaDecay","OtherDecay","Electron","Hadron".
TH2F * fhDeltaPhiChargedPtA3GeVOtherBC
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH2F * fhMixDeltaPhiDeltaEtaCharged
! Difference of charged particle phi and trigger particle phi as function eta difference ...
TH2F * fhMCPtHbpZTUeCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/zT) (underlying event)
TH2F * fhPhiTriggerMixed
! phi distribution vs pT of trigger particles, used in mixing.
TH2F * fhDeltaPhiChargedPtA3GeV
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH2F * fhDeltaPhiChargedPtA3GeVBC0
! Difference of charged particle phi and trigger particle phi as function of trigger particle pT...
TH1F ** fhSumPtConeBinDecay
[fNBkgBin*fNDecayBits]
void SetMCGenType(Int_t min=0, Int_t max=6)
TH2F * fhPhiTrigger
! phi distribution vs pT of trigger particles.
TH2F * fhDeltaPhiUeChargedPt
! Difference of charged particle from underlying events phi and trigger particle phi as function of c...
TH2F * fhDeltaPhiUeLeftNeutral
! Difference of charged particle from underlying events phi and trigger particle phi as function of n...
TH2F ** fhMixDeltaPhiChargedAssocPtBinDEta08
[fNAssocPtBins*GetNZvertBin()]
TList ** fListMixCaloEvents
[GetNCentrBin()*GetNZvertBin()*GetNRPBin()]
Bool_t fMakeNearSideLeading
Requesting near side leading (+-90ยบ from trigger particle) triggers.
TH2F * fhMCPtHbpXECharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/xE)
TH2F * fhXEUeLeftDownCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
TH1F ** fhPtLeadInConeBin
pT trig distribution for each pT lead in cone bin
mcTypes
For histograms in arrays, index in the array, corresponding to any particle origin.
Float_t fM02MaxCut
Study photon clusters with l0 smaller than cut.
TH2F * fhPtTrigChargedVtxBC0
! trigger and correlated particl pt, to be used for mean value for kT.
TH2F * fhZTUeChargedVtxBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhXENegCharged
! Trigger particle -negative charged hadron momentum imbalance histogram.
TH2F * fhPtHbpXECharged
! Trigger particle -charged hadron momentum HBP histogram.
TH2F * fhXEPi0DecayNeutral
! Trigger particle (decay from pi0/eta trigger)-neutral hadron momentum imbalance histogram ...
TH2F * fhMCPtHbpXEUeLeftCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/xE) (underlying event, left cone) ...
AliAnaParticleHadronCorrelation()
Default Constructor. Initialize parameters.
TH2F * fhPtTrigChargedPileUp[7]
! trigger and correlated particl pt, to be used for mean value for kT/c.
Bool_t fUseMixStoredInReader
[GetNCentrBin()*GetNZvertBin()*GetNRPBin()]
TH2F * fhEtaTrigger
! eta distribution vs pT of trigger particles.
TH2F * fhMCDeltaPhiCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs delta phi (associated-trigger)
TH2F * fhPtTriggerVzBin
! pT distribution of trigger particles vs vz bin.
void SetNAssocPtBins(Int_t n)
Set number of associated charged (neutral) hadrons pT bins.
TH2F * fhZTUeChargedBC0
! Trigger particle -charged hadron momentum imbalance histogram.
Int_t fMCGenTypeMax
Of the fgkNmcTypes possible types, select those between fMCGenTypeMin and fMCGenTypeMax.
TH2F * fhDeltaEtaChargedPtA3GeVPileUp[7]
! Difference of charged particle eta and trigger particle eta as function of trigger particle pT...
TH2F * fhEtaPhiNoLeadingOppositeHadron
! Location of trigger when no hadron is found on the opposite side.
TH2F * fhXEUeLeftCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
TH2F * fhDeltaPhiDeltaEtaChargedPtA3GeV
! differences of eta and phi between trigger and charged hadrons, pTa > 3 GeV/c.
TH1I * fhEventMBBin
! Number of MB events in a particular bin (cen,vz,rp).
Bool_t FillChargedMCCorrelationHistograms(Float_t mcAssocPt, Float_t mcAssocPhi, Float_t mcAssocEta, Float_t mcTrigPt, Float_t mcTrigPhi, Float_t mcTrigEta, Int_t histoIndex, Bool_t lostDecayPair)
Fill MC histograms independently of AOD or ESD.
Bool_t fMakeSeveralUE
Do analysis for several underlying events contribution.
Bool_t fFillMomImbalancePtAssocBinsHisto
Momentum imbalance histograms in bins of pT associated.
void SetLeadHadronPhiCut(Float_t min, Float_t max)
Float_t fMinLeadHadPt
Minimum pT of leading hadron.
Bool_t fFillInvMassHisto
Fill invariant mass histograms for trigger.
Int_t fNDecayBits
in case of study of decay triggers, select the decay bit.
TH2F * fhPtTrigCharged
! trigger and correlated particl pt, to be used for mean value for kt
TH2F * fhXEUeChargedVtxBC0
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhMCPtXEUeCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs xE (underlying event)
TH2F * fhPtHbpXEUeCharged
! Trigger particle -underlying charged hadron momentum HBP histogram.
TH2F * fhPtTriggerMixedBin
! pT distribution of trigger particles vs mixing bin.
TH2F * fhDeltaPhiUeLeftDownCharged
! Difference of charged particle from underlying events phi and trigger particle phi ...
TH2F ** fhDeltaPhiAssocPtBinHMPIDAcc
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhXEUeChargedPileUp[7]
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhMCEtaTriggerNotLeading[fgkNmcTypes]
! MC pure Eta distribution of trigger not leading particles
Float_t fBkgBinLimit[20]
Pt bin limits on pt content in the cone.
TH2F * fhMCPtTrigPout[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs pOut
AliAnaParticleHadronCorrelation & operator=(const AliAnaParticleHadronCorrelation &ph)
Assignment operator not implemented.
TH2F ** fhDeltaPhiAssocPtBinHMPID
[fNAssocPtBins*GetNZvertBin()]
TH2F * fhDeltaPhiNeutralPt
! Difference of neutral particle phi and trigger particle phi as function of neutral particle particl...
TH2F * fhMCDeltaEtaCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs delta eta (associated-trigger)
TH2F * fhPhiNeutral
! Phi distribution of neutral particles
TH1F * fhPtTrigger
! pT distribution of trigger particles.
Int_t fNBkgBin
Number of bins on pt content in cone.
TH2F * fhMCPtHbpXEUeCharged[fgkNmcTypes]
! MC pure particles charged trigger primary pt vs ln(1/xE) (underlying event)
TH2F * fhMCEtaTrigger[fgkNmcTypes]
! MC pure Eta distribution of trigger particles
TH2F * fhZTUeLeftCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
TH2F * fhDeltaEtaChargedPileUp[7]
! Difference of charged particle eta and trigger particle eta as function of trigger particle pT...
Float_t fMaxAssocPt
Maximum associated hadron pt.
TObjString * GetAnalysisCuts()
Save parameters used for analysis.
TH2F * fhXENeutral
! Trigger particle - neutral hadron momentum imbalance histogram
TLorentzVector fMomentum
! Trigger momentum.
TH2F * fhMCDeltaPhiDeltaEtaCharged[fgkNmcTypes]
! MC pure particles charged associated primary pt vs delta phi (associated-trigger), in away side
TString fAODNamepTInConeHisto
Name of AOD array to fill pT in cone histograms.
TH2F * fhZTUeCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram.
static const Int_t fgkNmcTypes
Number of MC trigger particles checked when filling MC histograms.
TH2F * fhEtaNeutral
! Eta distribution of neutral particles
Bool_t fPi0Trigger
switch the analysis with decay photon from pi0 trigger.
Double_t fUeDeltaPhiMaxCut
Minimum Delta Phi Gamma-Underlying Hadron.
TH2F * fhXEUeLeftUpCharged
! Trigger particle -underlying charged hadron momentum imbalance histogram
TH2F ** fhDeltaPhiChargedMult
Differences of phi between trigger and charged hadrons: multiplicity bin.
TH2F * fhXEPi0DecayCharged
! Trigger particle (decay from pi0/eta trigger)-charged hadron momentum imbalance histogram ...
Double_t fDeltaPhiMinCut
Maximum Delta Phi Gamma-Hadron.
const Double_t phimin
TH1F * fhMCPtTriggerNotLeading[fgkNmcTypes]
! MC pure pT distribution of trigger not leading particles
TH1F * fhPtTriggerMixed
! pT distribution of trigger particles, used in mixing.
void SetAssocPtBinLimit(Int_t ibin, Float_t pt)
Set the list of pT limits for the of associated charged (neutral) hadrons.
TH2F * fhZTUeChargedOtherBC
! Trigger particle -charged hadron momentum imbalance histogram.
TH2F * fhZTUeNeutral
! Trigger particle - neutral hadron momentum imbalance histogram
UInt_t fDecayBits[AliNeutralMesonSelection::fgkMaxNDecayBits]
in case of study of decay triggers, select the decay bit
void SetTriggerPtRange(Float_t min, Float_t max)