]>
Commit | Line | Data |
---|---|---|
db509a67 | 1 | #ifndef ALIANAPARTICLEHADRONCORRELATION_H\r |
2 | #define ALIANAPARTICLEHADRONCORRELATION_H\r | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r | |
4 | * See cxx source for full Copyright notice */\r | |
5 | /* $Id: $ */\r | |
6 | \r | |
7 | //_________________________________________________________________________\r | |
8 | // Class that contains the algorithm for the analysis of particle - hadron correlations\r | |
9 | // Particle (for example direct gamma) must be found in a previous analysis \r | |
10 | //-- Author: Gustavo Conesa (INFN-LNF)\r | |
11 | \r | |
12 | // Modified by Yaxian Mao:\r | |
13 | // 1. add the UE subtraction for corrlation study\r | |
14 | // 2. change the correlation variable\r | |
15 | // 3. Only use leading particle(cluster/track) as trigger for correlation (2010/07/02)\r | |
16 | // 4. Make decay photon-hadron correlations where decay contribute pi0 mass (2010/09/09)\r | |
17 | // 5. fill the pout to extract kt at the end, also to study charge asymmetry(2010/10/06) \r | |
18 | // 6. Add the possibality for event selection analysis based on vertex and multiplicity bins (10/10/2010)\r | |
19 | // 7. change the way of delta phi cut for UE study due to memory issue (reduce histograms)\r | |
20 | \r | |
21 | // --- ROOT system ---\r | |
22 | //class TH3D;\r | |
23 | \r | |
24 | // --- Analysis system ---\r | |
25 | #include "AliAnaPartCorrBaseClass.h"\r | |
26 | class AliAODPWG4ParticleCorrelation ;\r | |
27 | \r | |
28 | class AliAnaParticleHadronCorrelation : public AliAnaPartCorrBaseClass {\r | |
29 | \r | |
30 | public: \r | |
31 | AliAnaParticleHadronCorrelation() ; // default ctor\r | |
32 | virtual ~AliAnaParticleHadronCorrelation() {;} //virtual dtor\r | |
33 | private: \r | |
34 | AliAnaParticleHadronCorrelation(const AliAnaParticleHadronCorrelation & ph) ; // cpy ctor\r | |
35 | AliAnaParticleHadronCorrelation & operator = (const AliAnaParticleHadronCorrelation & ph) ;//cpy assignment\r | |
36 | \r | |
37 | public:\r | |
38 | \r | |
39 | TObjString * GetAnalysisCuts();\r | |
40 | TList * GetCreateOutputObjects();\r | |
41 | \r | |
42 | Double_t GetDeltaPhiMaxCut() const {return fDeltaPhiMaxCut ; }\r | |
43 | Double_t GetDeltaPhiMinCut() const {return fDeltaPhiMinCut ; }\r | |
44 | void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)\r | |
45 | {fDeltaPhiMaxCut =phimax; fDeltaPhiMinCut =phimin;}\r | |
46 | \r | |
47 | Double_t GetUeDeltaPhiMaxCut() const {return fUeDeltaPhiMaxCut ; }\r | |
48 | Double_t GetUeDeltaPhiMinCut() const {return fUeDeltaPhiMinCut ; }\r | |
49 | void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax)\r | |
50 | {fUeDeltaPhiMaxCut =uephimax; fUeDeltaPhiMinCut =uephimin;}\r | |
51 | Bool_t IsSeveralUEOn() const {return fMakeSeveralUE ; }\r | |
52 | void SwitchOnSeveralUECalculation() { fMakeSeveralUE = kTRUE;}\r | |
53 | void SwitchOffSeveralUECalculation() { fMakeSeveralUE = kFALSE;}\r | |
54 | \r | |
55 | // Do trigger-neutral correlation\r | |
56 | Bool_t DoNeutralCorr() const {return fNeutralCorr ; }\r | |
57 | void SwitchOnNeutralCorr() { fNeutralCorr = kTRUE;}\r | |
58 | void SwitchOffNeutralCorr() { fNeutralCorr = kFALSE;} \r | |
59 | \r | |
60 | // Do decay-hadron correlation if it is pi0 trigger\r | |
61 | Bool_t IsPi0Trigger() const {return fPi0Trigger ; }\r | |
62 | void SwitchOnDecayCorr() { fPi0Trigger = kTRUE;}\r | |
63 | void SwitchOffDecayCorr() { fPi0Trigger = kFALSE;} \r | |
64 | \r | |
65 | Bool_t OnlyIsolated() const {return fSelectIsolated ; }\r | |
66 | void SelectIsolated(Bool_t select) {fSelectIsolated = select ; }\r | |
67 | \r | |
68 | void InitParameters();\r | |
69 | \r | |
70 | void Print(const Option_t * opt) const;\r | |
71 | \r | |
72 | void MakeChargedCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ;\r | |
73 | void MakeNeutralCorrelation(AliAODPWG4ParticleCorrelation * aodParticle,TObjArray* const pl, const Bool_t bFillHisto) ;\r | |
74 | \r | |
75 | //void MakeNeutralCorrelationFillAOD(AliAODPWG4ParticleCorrelation* const aodParticle, TObjArray* const pl, TString detector) ;\r | |
76 | //void MakeNeutralCorrelationFillHistograms(AliAODPWG4ParticleCorrelation* const aodParticle) ;\r | |
77 | \r | |
78 | void MakeAnalysisFillAOD() ;\r | |
79 | void MakeAnalysisFillHistograms() ; \r | |
80 | \r | |
81 | //Bool_t SelectCluster(AliVCluster * calo, Double_t *vertex, TLorentzVector & mom, Int_t & pdg) ;\r | |
82 | \r | |
83 | void SetPi0AODBranchName(TString pi0list) {fPi0AODBranchName = pi0list;}\r | |
84 | \r | |
85 | private:\r | |
86 | \r | |
87 | Double_t fDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Hadron\r | |
88 | Double_t fDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Hadron\r | |
89 | Bool_t fSelectIsolated ; // Select only trigger particles isolated\r | |
90 | Bool_t fMakeSeveralUE ; // Do analysis for several underlying events contribution\r | |
91 | Double_t fUeDeltaPhiMaxCut ; // Minimum Delta Phi Gamma-Underlying Hadron\r | |
92 | Double_t fUeDeltaPhiMinCut ; // Maximum Delta Phi Gamma-Underlying Hadron\r | |
93 | TString fPi0AODBranchName; // Name of AOD branch with pi0, not trigger\r | |
94 | Bool_t fNeutralCorr ; // switch the analysis with neutral particles\r | |
95 | Bool_t fPi0Trigger ; // switch the analysis with decay photon from pi0 trigger\r | |
96 | \r | |
97 | //Histograms\r | |
98 | // TH2F * fhNclustersNtracks; //charge and cluster multiplicity distribution\r | |
99 | //leading particles \r | |
100 | TH1F * fhPtLeading; //! pT distribution of leading particles\r | |
101 | TH2F * fhPhiLeading; //! phi distribution vs pT of leading particles\r | |
102 | TH2F * fhEtaLeading; //! eta distribution vs pT of leading particles\r | |
103 | \r | |
104 | //trigger-charged histograms\r | |
105 | TH2F * fhDeltaPhiDeltaEtaCharged ; //! differences of eta and phi between trigger and charged hadrons\r | |
106 | TH2F * fhPhiCharged ; //! Phi distribution of charged particles\r | |
107 | TH2F * fhEtaCharged ; //! Eta distribution of charged particles\r | |
108 | TH2F * fhDeltaPhiCharged ; //! Difference of charged particle phi and trigger particle phi as function of trigger particle pT\r | |
109 | TH2F * fhDeltaEtaCharged ; //! Difference of charged particle eta and trigger particle eta as function of trigger particle pT\r | |
110 | TH2F * fhDeltaPhiChargedPt ; //! Difference of charged particle phi and trigger particle phi as function of charged particle pT\r | |
111 | TH2F * fhDeltaPhiUeChargedPt ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of charged particle pT\r | |
112 | TH2F * fhPtImbalanceCharged ; //! Trigger particle -charged hadron momentim imbalance histogram\r | |
113 | TH2F * fhPtImbalanceUeCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram \r | |
114 | TH2F * fhPtImbalancePosCharged ; //! Trigger particle -positive charged hadron momentim imbalance histogram\r | |
115 | TH2F * fhPtImbalanceNegCharged ; //! Trigger particle -negative charged hadron momentim imbalance histogram \r | |
116 | //with different imblance varible defination HBP distribution\r | |
117 | TH2F * fhPtHbpCharged ; //! Trigger particle -charged hadron momentim HBP histogram\r | |
118 | TH2F * fhPtHbpUeCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram \r | |
119 | \r | |
120 | //if several UE calculation is on, most useful for jet-jet events contribution\r | |
121 | TH2F * fhDeltaPhiUeLeftCharged ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of charged particle pT\r | |
122 | TH2F * fhDeltaPhiUeRightCharged ; //! Difference of charged particle from underlying events phi and trigger particle phi \r | |
123 | TH2F * fhPtImbalanceUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram \r | |
124 | TH2F * fhPtImbalanceUeRightCharged ; //! Trigger particle -underlying charged hadron momentim imbalance histogram \r | |
125 | TH2F * fhPtHbpUeLeftCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram \r | |
126 | TH2F * fhPtHbpUeRightCharged ; //! Trigger particle -underlying charged hadron momentim HBP histogram \r | |
127 | \r | |
128 | //for pout and kt extraction\r | |
129 | TH2F * fhPtTrigPout ; // Pout =associated pt*sin(delta phi) distribution vs trigger pt vs associated pt\r | |
130 | TH2F * fhPtAssocDeltaPhi ; // Pout =associated pt*sin(delta phi) distribution\r | |
131 | // TH3D * fhUePoutPtTrigPtAssoc ; // UE Pout =associated pt*sin(delta phi) distribution vs trigger pt vs associated pt\r | |
132 | TH2F * fhPtTrigCharged ; //trigger and correlated particl pt, to be used for mean value for kt \r | |
133 | \r | |
134 | //if different multiplicity analysis asked\r | |
135 | TH2F ** fhTrigDeltaPhiCharged ; //! differences of phi between trigger and charged hadrons\r | |
136 | TH2F ** fhTrigDeltaEtaCharged ; //! differences of eta between trigger and charged hadrons\r | |
137 | TH2F ** fhTrigCorr ; //! Trigger particle -charged hadron momentim imbalance histogram\r | |
138 | TH2F ** fhTrigUeCorr ; //! Trigger particle -UE charged hadron momentim imbalance histogram\r | |
139 | \r | |
140 | //trigger-neutral histograms\r | |
141 | TH2F * fhDeltaPhiDeltaEtaNeutral ; //! differences of eta and phi between trigger and neutral hadrons (pi0)\r | |
142 | TH2F * fhPhiNeutral ; //! Phi distribution of neutral particles \r | |
143 | TH2F * fhEtaNeutral ; //! Eta distribution of neutral particles\r | |
144 | TH2F * fhDeltaPhiNeutral ; //! Difference of neutral particle phi and trigger particle phi as function of trigger particle pT\r | |
145 | TH2F * fhDeltaEtaNeutral ; //! Difference of neutral particle eta and trigger particle eta as function of trigger particle pT\r | |
146 | TH2F * fhDeltaPhiNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT\r | |
147 | TH2F * fhDeltaPhiUeNeutralPt ; //! Difference of neutral particle phi and trigger particle phi as function of neutral particle particle pT \r | |
148 | TH2F * fhPtImbalanceNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram \r | |
149 | TH2F * fhPtImbalanceUeNeutral ; //! Trigger particle - neutral hadron momentum imbalance histogram \r | |
150 | //with different imblance varible defination HBP distribution \r | |
151 | TH2F * fhPtHbpNeutral ; //! Trigger particle -neutral particle momentim HBP histogram\r | |
152 | TH2F * fhPtHbpUeNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram \r | |
153 | \r | |
154 | //if several UE calculation is on, most useful for jet-jet events contribution\r | |
155 | TH2F * fhDeltaPhiUeLeftNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi as function of neutral particle pT\r | |
156 | TH2F * fhDeltaPhiUeRightNeutral ; //! Difference of charged particle from underlying events phi and trigger particle phi \r | |
157 | TH2F * fhPtImbalanceUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram \r | |
158 | TH2F * fhPtImbalanceUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim imbalance histogram \r | |
159 | TH2F * fhPtHbpUeLeftNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram \r | |
160 | TH2F * fhPtHbpUeRightNeutral ; //! Trigger particle -underlying neutral hadron momentim HBP histogram \r | |
161 | \r | |
162 | //for decay photon trigger correlation\r | |
163 | TH2F * fhPtPi0DecayRatio ; //! for pi0 pt and ratio of decay photon pt\r | |
164 | TH2F * fhDeltaPhiDecayCharged ; //! Difference of charged particle phi and decay trigger\r | |
165 | TH2F * fhPtImbalanceDecayCharged ; //! Trigger particle (decay from pi0)-charged hadron momentim imbalance histogram \r | |
166 | TH2F * fhDeltaPhiDecayNeutral ; //! Difference of neutral particle phi and decay trigger\r | |
167 | TH2F * fhPtImbalanceDecayNeutral ; //! Trigger particle (decay from pi0)-neutral hadron momentim imbalance histogram \r | |
168 | \r | |
169 | \r | |
170 | ClassDef(AliAnaParticleHadronCorrelation,6)\r | |
171 | } ;\r | |
172 | \r | |
173 | \r | |
174 | #endif //ALIANAPARTICLEHADRONCORRELATION_H\r | |
175 | \r | |
176 | \r | |
177 | \r |