]>
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) |
5025c139 | 17 | // 5. fill the pout to extract kt at the end, also to study charge asymmetry(2010/10/06) |
18 | // 6. Add the possibality for event selection analysis based on vertex and multiplicity bins (10/10/2010) | |
2244659d | 19 | // 7. change the way of delta phi cut for UE study due to memory issue (reduce histograms) |
20 | ||
1c5acb87 | 21 | // --- ROOT system --- |
f8006433 | 22 | class TH3D; |
1c5acb87 | 23 | |
24 | // --- Analysis system --- | |
25 | #include "AliAnaPartCorrBaseClass.h" | |
26 | class AliAODPWG4ParticleCorrelation ; | |
27 | ||
28 | class AliAnaParticleHadronCorrelation : public AliAnaPartCorrBaseClass { | |
477d6cee | 29 | |
30 | public: | |
1c5acb87 | 31 | AliAnaParticleHadronCorrelation() ; // default ctor |
78219bac | 32 | virtual ~AliAnaParticleHadronCorrelation() {;} //virtual dtor |
33 | private: | |
1c5acb87 | 34 | AliAnaParticleHadronCorrelation(const AliAnaParticleHadronCorrelation & ph) ; // cpy ctor |
35 | AliAnaParticleHadronCorrelation & operator = (const AliAnaParticleHadronCorrelation & ph) ;//cpy assignment | |
78219bac | 36 | |
37 | public: | |
f8006433 | 38 | |
39 | TObjString * GetAnalysisCuts(); | |
1c5acb87 | 40 | TList * GetCreateOutputObjects(); |
477d6cee | 41 | |
1c5acb87 | 42 | Double_t GetDeltaPhiMaxCut() const {return fDeltaPhiMaxCut ; } |
43 | Double_t GetDeltaPhiMinCut() const {return fDeltaPhiMinCut ; } | |
44 | void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax) | |
45 | {fDeltaPhiMaxCut =phimax; fDeltaPhiMinCut =phimin;} | |
2244659d | 46 | |
dde5a268 | 47 | Double_t GetUeDeltaPhiMaxCut() const {return fUeDeltaPhiMaxCut ; } |
48 | Double_t GetUeDeltaPhiMinCut() const {return fUeDeltaPhiMinCut ; } | |
49 | void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax) | |
50 | {fUeDeltaPhiMaxCut =uephimax; fUeDeltaPhiMinCut =uephimin;} | |
51 | Bool_t IsSeveralUEOn() const {return fMakeSeveralUE ; } | |
52 | void SwitchOnSeveralUECalculation() { fMakeSeveralUE = kTRUE;} | |
53 | void SwitchOffSeveralUECalculation() { fMakeSeveralUE = kFALSE;} | |
54 | ||
5025c139 | 55 | // Do trigger-neutral correlation |
56 | Bool_t DoNeutralCorr() const {return fNeutralCorr ; } | |
57 | void SwitchOnNeutralCorr() { fNeutralCorr = kTRUE;} | |
58 | void SwitchOffNeutralCorr() { fNeutralCorr = kFALSE;} | |
59 | ||
f8006433 | 60 | // Do decay-hadron correlation if it is pi0 trigger |
61 | Bool_t IsPi0Trigger() const {return fPi0Trigger ; } | |
62 | void SwitchOnDecayCorr() { fPi0Trigger = kTRUE;} | |
63 | void SwitchOffDecayCorr() { fPi0Trigger = kFALSE;} | |
64 | ||
6639984f | 65 | Bool_t OnlyIsolated() const {return fSelectIsolated ; } |
66 | void SelectIsolated(Bool_t select) {fSelectIsolated = select ; } | |
5025c139 | 67 | |
1c5acb87 | 68 | void InitParameters(); |
477d6cee | 69 | |
1c5acb87 | 70 | void Print(const Option_t * opt) const; |
477d6cee | 71 | |
f8006433 | 72 | void MakeChargedCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ; |
73 | void MakeNeutralCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ; | |
74 | ||
75 | //void MakeNeutralCorrelationFillAOD(AliAODPWG4ParticleCorrelation* const aodParticle, TObjArray* const pl, TString detector) ; | |
76 | //void MakeNeutralCorrelationFillHistograms(AliAODPWG4ParticleCorrelation* const aodParticle) ; | |
9415d854 | 77 | |
1c5acb87 | 78 | void MakeAnalysisFillAOD() ; |
1c5acb87 | 79 | void MakeAnalysisFillHistograms() ; |
477d6cee | 80 | |
f8006433 | 81 | //Bool_t SelectCluster(AliVCluster * calo, Double_t *vertex, TLorentzVector & mom, Int_t & pdg) ; |
82 | ||
83 | void SetPi0AODBranchName(TString pi0list) {fPi0AODBranchName = pi0list;} | |
477d6cee | 84 | |
85 | private: | |
1c5acb87 | 86 | |
87 | Double_t fDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Hadron | |
6639984f | 88 | Double_t fDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Hadron |
89 | Bool_t fSelectIsolated ; // Select only trigger particles isolated | |
decca433 | 90 | Bool_t fMakeSeveralUE ; // Do analysis for several underlying events contribution |
91 | Double_t fUeDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Underlying Hadron | |
92 | Double_t fUeDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Underlying Hadron | |
f8006433 | 93 | TString fPi0AODBranchName; // Name of AOD branch with pi0, not trigger |
5025c139 | 94 | Bool_t fNeutralCorr ; // switch the analysis with neutral particles |
95 | Bool_t fPi0Trigger ; // switch the analysis with decay photon from pi0 trigger | |
5025c139 | 96 | |
1c5acb87 | 97 | //Histograms |
2244659d | 98 | // TH2F * fhNclustersNtracks; //charge and cluster multiplicity distribution |
b6991fc4 | 99 | //leading particles |
e6b5d324 | 100 | TH1F * fhPtLeading; //! pT distribution of leading particles |
101 | TH2F * fhPhiLeading; //! phi distribution vs pT of leading particles | |
102 | TH2F * fhEtaLeading; //! eta distribution vs pT of leading particles | |
5025c139 | 103 | |
104 | //trigger-charged histograms | |
b6991fc4 | 105 | TH2F * fhDeltaPhiDeltaEtaCharged ; //! differences of eta and phi between trigger and charged hadrons |
f8006433 | 106 | TH2F * fhPhiCharged ; //! Phi distribution of charged particles |
f8006433 | 107 | TH2F * fhEtaCharged ; //! Eta distribution of charged particles |
f8006433 | 108 | TH2F * fhDeltaPhiCharged ; //! Difference of charged particle phi and trigger particle phi as function of trigger particle pT |
f8006433 | 109 | TH2F * fhDeltaEtaCharged ; //! Difference of charged particle eta and trigger particle eta as function of trigger particle pT |
1c5acb87 | 110 | TH2F * fhDeltaPhiChargedPt ; //! Difference of charged particle phi and trigger particle phi as function of charged particle pT |
f8006433 | 111 | TH2F * fhDeltaPhiUeChargedPt ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of charged particle pT |
f8006433 | 112 | TH2F * fhPtImbalanceCharged ; //! Trigger particle -charged hadron momentim imbalance histogram |
dde5a268 | 113 | TH2F * fhPtImbalanceUeCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram |
5025c139 | 114 | TH2F * fhPtImbalancePosCharged ; //! Trigger particle -positive charged hadron momentim imbalance histogram |
115 | TH2F * fhPtImbalanceNegCharged ; //! Trigger particle -negative charged hadron momentim imbalance histogram | |
dd4871cd | 116 | //with different imblance varible defination HBP distribution |
f8006433 | 117 | TH2F * fhPtHbpCharged ; //! Trigger particle -charged hadron momentim HBP histogram |
dd4871cd | 118 | TH2F * fhPtHbpUeCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram |
5025c139 | 119 | |
120 | //if several UE calculation is on, most useful for jet-jet events contribution | |
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 * fhPtImbalanceUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram | |
124 | TH2F * fhPtImbalanceUeRightCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram | |
125 | TH2F * fhPtHbpUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram | |
126 | TH2F * fhPtHbpUeRightCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram | |
127 | ||
128 | //for pout and kt extraction | |
2244659d | 129 | TH3D * fhPoutPtTrigPtAssoc ; // Pout =associated pt*sin(delta phi) distribution vs trigger pt vs associated pt |
130 | TH3D * fhUePoutPtTrigPtAssoc ; // UE Pout =associated pt*sin(delta phi) distribution vs trigger pt vs associated pt | |
5025c139 | 131 | TH2F * fhPtTrigCharged ; //trigger and correlated particl pt, to be used for mean value for kt |
132 | ||
133 | //if different multiplicity analysis asked | |
134 | TH3D ** fhTrigDeltaPhiDeltaEtaCharged ; //! differences of eta and phi between trigger and charged hadrons | |
135 | TH2F ** fhTrigCorr ; //! Trigger particle -charged hadron momentim imbalance histogram | |
136 | TH2F ** fhTrigUeCorr ; //! Trigger particle -UE charged hadron momentim imbalance histogram | |
137 | ||
138 | //trigger-neutral histograms | |
139 | TH2F * fhDeltaPhiDeltaEtaNeutral ; //! differences of eta and phi between trigger and neutral hadrons (pi0) | |
140 | TH2F * fhPhiNeutral ; //! Phi distribution of neutral particles | |
141 | TH2F * fhEtaNeutral ; //! Eta distribution of neutral particles | |
142 | TH2F * fhDeltaPhiNeutral ; //! Difference of neutral particle phi and trigger particle phi as function of trigger particle pT | |
143 | TH2F * fhDeltaEtaNeutral ; //! Difference of neutral particle eta and trigger particle eta as function of trigger particle pT | |
144 | TH2F * fhDeltaPhiNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT | |
145 | TH2F * fhDeltaPhiUeNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT | |
146 | TH2F * fhPtImbalanceNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram | |
147 | TH2F * fhPtImbalanceUeNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram | |
148 | //with different imblance varible defination HBP distribution | |
f8006433 | 149 | TH2F * fhPtHbpNeutral ; //! Trigger particle -neutral particle momentim HBP histogram |
dd4871cd | 150 | TH2F * fhPtHbpUeNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram |
151 | ||
b6991fc4 | 152 | //if several UE calculation is on, most useful for jet-jet events contribution |
f8006433 | 153 | TH2F * fhDeltaPhiUeLeftNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of neutral particle pT |
154 | TH2F * fhDeltaPhiUeRightNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi | |
123fc3bd | 155 | TH2F * fhPtImbalanceUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram |
f8006433 | 156 | TH2F * fhPtImbalanceUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram |
f8006433 | 157 | TH2F * fhPtHbpUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram |
5025c139 | 158 | TH2F * fhPtHbpUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram |
159 | ||
f8006433 | 160 | //for decay photon trigger correlation |
2244659d | 161 | TH2F * fhPtPi0DecayRatio ; //! for pi0 pt and ratio of decay photon pt |
5025c139 | 162 | TH2F * fhDeltaPhiDecayCharged ; //! Difference of charged particle phi and decay trigger |
163 | TH2F * fhPtImbalanceDecayCharged ; //! Trigger particle (decay from pi0)-charged hadron momentim imbalance histogram | |
164 | TH2F * fhDeltaPhiDecayNeutral ; //! Difference of neutral particle phi and decay trigger | |
165 | TH2F * fhPtImbalanceDecayNeutral ; //! Trigger particle (decay from pi0)-neutral hadron momentim imbalance histogram | |
166 | ||
dd4871cd | 167 | |
5025c139 | 168 | ClassDef(AliAnaParticleHadronCorrelation,5) |
1c5acb87 | 169 | } ; |
170 | ||
171 | ||
172 | #endif //ALIANAPARTICLEHADRONCORRELATION_H | |
173 | ||
174 | ||
175 |