]>
Commit | Line | Data |
---|---|---|
1c5acb87 | 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 | /* $Id: $ */ | |
6 | ||
7 | //_________________________________________________________________________ | |
8 | // Class that contains the algorithm for the analysis of particle - hadron correlations | |
9 | // Particle (for example direct gamma) must be found in a previous analysis | |
10 | //-- Author: Gustavo Conesa (INFN-LNF) | |
11 | ||
dd4871cd | 12 | // Modified by Yaxian Mao: |
13 | // 1. add the UE subtraction for corrlation study | |
14 | // 2. change the correlation variable | |
e6b5d324 | 15 | // 3. Only use leading particle(cluster/track) as trigger for correlation (2010/07/02) |
f8006433 | 16 | // 4. Make decay photon-hadron correlations where decay contribute pi0 mass (2010/09/09) |
dd4871cd | 17 | |
1c5acb87 | 18 | // --- ROOT system --- |
f8006433 | 19 | class TH3D; |
1c5acb87 | 20 | |
21 | // --- Analysis system --- | |
22 | #include "AliAnaPartCorrBaseClass.h" | |
23 | class AliAODPWG4ParticleCorrelation ; | |
24 | ||
25 | class AliAnaParticleHadronCorrelation : public AliAnaPartCorrBaseClass { | |
477d6cee | 26 | |
27 | public: | |
1c5acb87 | 28 | AliAnaParticleHadronCorrelation() ; // default ctor |
78219bac | 29 | virtual ~AliAnaParticleHadronCorrelation() {;} //virtual dtor |
30 | private: | |
1c5acb87 | 31 | AliAnaParticleHadronCorrelation(const AliAnaParticleHadronCorrelation & ph) ; // cpy ctor |
32 | AliAnaParticleHadronCorrelation & operator = (const AliAnaParticleHadronCorrelation & ph) ;//cpy assignment | |
78219bac | 33 | |
34 | public: | |
f8006433 | 35 | |
36 | TObjString * GetAnalysisCuts(); | |
1c5acb87 | 37 | TList * GetCreateOutputObjects(); |
477d6cee | 38 | |
1c5acb87 | 39 | Double_t GetDeltaPhiMaxCut() const {return fDeltaPhiMaxCut ; } |
40 | Double_t GetDeltaPhiMinCut() const {return fDeltaPhiMinCut ; } | |
41 | void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax) | |
42 | {fDeltaPhiMaxCut =phimax; fDeltaPhiMinCut =phimin;} | |
dde5a268 | 43 | |
44 | Double_t GetUeDeltaPhiMaxCut() const {return fUeDeltaPhiMaxCut ; } | |
45 | Double_t GetUeDeltaPhiMinCut() const {return fUeDeltaPhiMinCut ; } | |
46 | void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax) | |
47 | {fUeDeltaPhiMaxCut =uephimax; fUeDeltaPhiMinCut =uephimin;} | |
48 | Bool_t IsSeveralUEOn() const {return fMakeSeveralUE ; } | |
49 | void SwitchOnSeveralUECalculation() { fMakeSeveralUE = kTRUE;} | |
50 | void SwitchOffSeveralUECalculation() { fMakeSeveralUE = kFALSE;} | |
51 | ||
f8006433 | 52 | // Do decay-hadron correlation if it is pi0 trigger |
53 | Bool_t IsPi0Trigger() const {return fPi0Trigger ; } | |
54 | void SwitchOnDecayCorr() { fPi0Trigger = kTRUE;} | |
55 | void SwitchOffDecayCorr() { fPi0Trigger = kFALSE;} | |
56 | ||
6639984f | 57 | Bool_t OnlyIsolated() const {return fSelectIsolated ; } |
58 | void SelectIsolated(Bool_t select) {fSelectIsolated = select ; } | |
59 | ||
1c5acb87 | 60 | void InitParameters(); |
477d6cee | 61 | |
1c5acb87 | 62 | void Print(const Option_t * opt) const; |
477d6cee | 63 | |
f8006433 | 64 | void MakeChargedCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ; |
65 | void MakeNeutralCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ; | |
66 | ||
67 | //void MakeNeutralCorrelationFillAOD(AliAODPWG4ParticleCorrelation* const aodParticle, TObjArray* const pl, TString detector) ; | |
68 | //void MakeNeutralCorrelationFillHistograms(AliAODPWG4ParticleCorrelation* const aodParticle) ; | |
9415d854 | 69 | |
1c5acb87 | 70 | void MakeAnalysisFillAOD() ; |
1c5acb87 | 71 | void MakeAnalysisFillHistograms() ; |
477d6cee | 72 | |
f8006433 | 73 | //Bool_t SelectCluster(AliVCluster * calo, Double_t *vertex, TLorentzVector & mom, Int_t & pdg) ; |
74 | ||
75 | void SetPi0AODBranchName(TString pi0list) {fPi0AODBranchName = pi0list;} | |
477d6cee | 76 | |
77 | private: | |
1c5acb87 | 78 | |
79 | Double_t fDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Hadron | |
6639984f | 80 | Double_t fDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Hadron |
81 | Bool_t fSelectIsolated ; // Select only trigger particles isolated | |
decca433 | 82 | Bool_t fMakeSeveralUE ; // Do analysis for several underlying events contribution |
83 | Double_t fUeDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Underlying Hadron | |
84 | Double_t fUeDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Underlying Hadron | |
f8006433 | 85 | TString fPi0AODBranchName; // Name of AOD branch with pi0, not trigger |
86 | Bool_t fPi0Trigger ; // Do analysis with decay photon from pi0 trigger | |
dde5a268 | 87 | |
1c5acb87 | 88 | //Histograms |
b6991fc4 | 89 | //leading particles |
e6b5d324 | 90 | TH1F * fhPtLeading; //! pT distribution of leading particles |
91 | TH2F * fhPhiLeading; //! phi distribution vs pT of leading particles | |
92 | TH2F * fhEtaLeading; //! eta distribution vs pT of leading particles | |
b6991fc4 | 93 | TH2F * fhDeltaPhiDeltaEtaCharged ; //! differences of eta and phi between trigger and charged hadrons |
94 | TH2F * fhDeltaPhiDeltaEtaNeutral ; //! differences of eta and phi between trigger and neutral hadrons (pi0) | |
95 | ||
f8006433 | 96 | TH2F * fhPhiCharged ; //! Phi distribution of charged particles |
97 | TH2F * fhPhiNeutral ; //! Phi distribution of neutral particles | |
98 | TH2F * fhEtaCharged ; //! Eta distribution of charged particles | |
99 | TH2F * fhEtaNeutral ; //! Eta distribution of neutral particles | |
100 | TH2F * fhDeltaPhiCharged ; //! Difference of charged particle phi and trigger particle phi as function of trigger particle pT | |
101 | TH2F * fhDeltaPhiNeutral ; //! Difference of neutral particle phi and trigger particle phi as function of trigger particle pT | |
102 | TH2F * fhDeltaEtaCharged ; //! Difference of charged particle eta and trigger particle eta as function of trigger particle pT | |
103 | TH2F * fhDeltaEtaNeutral ; //! Difference of neutral particle eta and trigger particle eta as function of trigger particle pT | |
1c5acb87 | 104 | TH2F * fhDeltaPhiChargedPt ; //! Difference of charged particle phi and trigger particle phi as function of charged particle pT |
105 | TH2F * fhDeltaPhiNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT | |
f8006433 | 106 | TH2F * fhDeltaPhiUeChargedPt ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of charged particle pT |
107 | TH2F * fhDeltaPhiUeNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT | |
1c5acb87 | 108 | |
f8006433 | 109 | TH2F * fhPtImbalanceNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram |
110 | TH2F * fhPtImbalanceCharged ; //! Trigger particle -charged hadron momentim imbalance histogram | |
dde5a268 | 111 | TH2F * fhPtImbalanceUeCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram |
123fc3bd | 112 | TH2F * fhPtImbalanceUeNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram |
dde5a268 | 113 | |
dd4871cd | 114 | //with different imblance varible defination HBP distribution |
f8006433 | 115 | TH2F * fhPtHbpCharged ; //! Trigger particle -charged hadron momentim HBP histogram |
dd4871cd | 116 | TH2F * fhPtHbpUeCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram |
f8006433 | 117 | TH2F * fhPtHbpNeutral ; //! Trigger particle -neutral particle momentim HBP histogram |
dd4871cd | 118 | TH2F * fhPtHbpUeNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram |
119 | ||
b6991fc4 | 120 | //if several UE calculation is on, most useful for jet-jet events contribution |
f8006433 | 121 | TH2F * fhDeltaPhiUeLeftCharged ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of charged particle pT |
122 | TH2F * fhDeltaPhiUeRightCharged ; //! Difference of charged particle from underlying events phi and trigger particle phi | |
123 | TH2F * fhDeltaPhiUeLeftNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of neutral particle pT | |
124 | TH2F * fhDeltaPhiUeRightNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi | |
dde5a268 | 125 | TH2F * fhPtImbalanceUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram |
f8006433 | 126 | TH2F * fhPtImbalanceUeRightCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram |
123fc3bd | 127 | TH2F * fhPtImbalanceUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram |
f8006433 | 128 | TH2F * fhPtImbalanceUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram |
129 | TH2F * fhPtHbpUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram | |
130 | TH2F * fhPtHbpUeRightCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram | |
131 | TH2F * fhPtHbpUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram | |
132 | TH2F * fhPtHbpUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram | |
dd4871cd | 133 | |
f8006433 | 134 | //for decay photon trigger correlation |
135 | TH3D * fhPtPi0DecayRatio ; //! for pi0 pt and ratio of decay photon pt | |
136 | TH2F * fhDeltaPhiDecay1Charged ; //! Difference of charged particle phi and decay trigger | |
137 | TH2F * fhDeltaPhiDecay2Charged ; //! Difference of charged particle phi and decay trigger | |
138 | TH2F * fhPtImbalanceDecay1Charged ; //! Trigger particle (decay 1 from pi0)-charged hadron momentim imbalance histogram | |
139 | TH2F * fhPtImbalanceDecay2Charged ; //! Trigger particle (decay 2 from pi0) -charged hadron momentim imbalance histogram | |
140 | ||
141 | TH2F * fhDeltaPhiDecay1Neutral ; //! Difference of neutral particle phi and decay trigger | |
142 | TH2F * fhDeltaPhiDecay2Neutral ; //! Difference of neutral particle phi and decay trigger | |
143 | TH2F * fhPtImbalanceDecay1Neutral ; //! Trigger particle (decay 1 from pi0)-neutral hadron momentim imbalance histogram | |
144 | TH2F * fhPtImbalanceDecay2Neutral ; //! Trigger particle (decay 2 from pi0) -neutral hadron momentim imbalance histogram | |
dd4871cd | 145 | |
f8006433 | 146 | ClassDef(AliAnaParticleHadronCorrelation,4) |
1c5acb87 | 147 | } ; |
148 | ||
149 | ||
150 | #endif //ALIANAPARTICLEHADRONCORRELATION_H | |
151 | ||
152 | ||
153 |