1 #ifndef ALIANALYSISTASKELECHADRONCORREL_H
2 #define ALIANALYSISTASKELECHADRONCORREL_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 ////////////////////////////////////////////////////////////////////////
9 // Task for Heavy Flavour Electron-Hadron DeltaPhi Correlation //
11 // Author: Deepa Thomas (Utrecht University) //
13 ////////////////////////////////////////////////////////////////////////
23 class AliEMCALGeometry;
24 class AliEMCALRecoUtils;
25 class AliAnalysisFilter;
26 class AliESDtrackCuts;
29 class AliHFEcontainer;
32 class AliHFEpidQAmanager;
34 //class AliEventPoolManager;
37 #include "AliAnalysisTaskSE.h"
38 #include "AliCentrality.h"
40 class AliAnalysisTaskElecHadronCorrel : public AliAnalysisTaskSE {
42 AliAnalysisTaskElecHadronCorrel();
43 AliAnalysisTaskElecHadronCorrel(const char *name);
44 virtual ~AliAnalysisTaskElecHadronCorrel();
46 virtual void UserCreateOutputObjects();
47 virtual void UserExec(Option_t *option);
48 virtual void Terminate(Option_t *);
50 Bool_t IsAODanalysis() const { return TestBit(kAODanalysis); };
51 Bool_t IsESDanalysis() const { return !TestBit(kAODanalysis); };
53 void SetHFECuts(AliHFEcuts * const cuts) { fCuts = cuts; };
54 void SetInvariantMassCut (Double_t invmass) {fInvmassCut = invmass;};
55 AliHFEpid *GetPID() const { return fPID; }
56 void SetRejectKinkMother(Bool_t rejectKinkMother = kFALSE) { fRejectKinkMother = rejectKinkMother; };
57 void SelectPhotonicElectron(Int_t itrack, AliVTrack *track, Bool_t &fFlagPhotonicElec);
58 void ElectronHadCorrel(Int_t itrack, AliVTrack *track, TH2F *DphiPt, TH2F *DphiPt1,TH2F *DphiPt2,TH2F *DphiPt3,TH2F *DphiPt4);
59 void ElectronHadCorrelEtaFarSide(Int_t itrack, AliVTrack *track, TH2F *DphiPt, TH2F *DphiPt1,TH2F *DphiPt2,TH2F *DphiPt3,TH2F *DphiPt4);
60 void ElectronHadCorrelEtaBins(Int_t itrack, AliVTrack *track, TH2F *DphiPtEta1, TH2F *DphiPtEta11,TH2F *DphiPtEta12,TH2F *DphiPtEta13,TH2F *DphiPtEta14,TH2F *DphiPtEta2, TH2F *DphiPtEta21,TH2F *DphiPtEta22,TH2F *DphiPtEta23,TH2F *DphiPtEta24);
61 // void ElectronHadCorrelEtaBins(Int_t itrack, AliVTrack *track, TH3F *DphiPtEta1, TH3F *DphiPtEta11,TH3F *DphiPtEta12,TH3F *DphiPtEta13,TH3F *DphiPtEta14);
62 void ElectronHadCorrelNoPartner(Int_t itrack,Int_t jtrack, AliVTrack *track, TH2F *DphiPtNew,TH2F *DphiPtNew1,TH2F *DphiPtNew2,TH2F *DphiPtNew3,TH2F *DphiPtNew4);
63 void ElectronHadCorrelEtaBinsNoPartner(Int_t itrack,Int_t jtrack, AliVTrack *track, TH2F *DphiPtEta1, TH2F *DphiPtEta11,TH2F *DphiPtEta12,TH2F *DphiPtEta13,TH2F *DphiPtEta14,TH2F *DphiPtEta2, TH2F *DphiPtEta21,TH2F *DphiPtEta22,TH2F *DphiPtEta23,TH2F *DphiPtEta24);
64 // void ElectronHadCorrelEtaBinsNoPartner(Int_t itrack,Int_t jtrack, AliVTrack *track, TH3F *DphiPtEta1, TH3F *DphiPtEta11,TH3F *DphiPtEta12,TH3F *DphiPtEta13,TH3F *DphiPtEta14);
65 void HadronInfo(Int_t itrack);
66 void SetTriggerSelection(Bool_t TriggerCentral) {fTriggerCentral = TriggerCentral;};
67 void SetCentralityParameters(Double_t CentralityMin, Double_t CentralityMax, const char* CentralityMethod); //select centrality
68 void CheckCentrality(AliVEvent *event,Bool_t ¢ralitypass); //to use only events with the correct centrality....
70 void SetAODAnalysis() { SetBit(kAODanalysis, kTRUE); };
71 void SetESDAnalysis() { SetBit(kAODanalysis, kFALSE); };
73 void SetTPCnsigmaCutsElecSelection(Double_t nsigMin, Double_t nsigMax) {fTPCnsigEleMin=nsigMin; fTPCnsigEleMax=nsigMax;};
74 void SetTPCnsigmaCutsHadSelection(Double_t nsigMin, Double_t nsigMax) {fTPCnsigHadMin=nsigMin; fTPCnsigHadMax=nsigMax;};
75 void SetShowerShapeCutsM02(Double_t M02CutMin, Double_t M02CutMax){fM02CutMin=M02CutMin; fM02CutMax=M02CutMax;};
76 void SetShowerShapeCutsM20(Double_t M20CutMin, Double_t M20CutMax){fM20CutMin=M20CutMin; fM20CutMax=M20CutMax;};
77 void SetShowerShapeCutsDisp(Double_t DispCutMin, Double_t DispCutMax){fDispCutMin=DispCutMin; fDispCutMax=DispCutMax;};
78 void SetEovPCuts(Double_t EovPMin, Double_t EovPMax){fEovPMin=EovPMin;fEovPMax=EovPMax;};
79 // void MixedEvent(AliVTrack *track, TH2F *DphiPt, TH2F *DphiPt1, TH2F *DphiPt2, TH2F *DphiPt3, TH2F *DphiPt4);
80 // TObjArray* CloneAndReduceTrackList();
85 kAODanalysis = BIT(20),
88 Bool_t ProcessCutStep(Int_t cutStep, AliVParticle *track);
90 AliVEvent *fVevent; //V event object
91 AliESDEvent *fESD; //ESD object
92 AliAODEvent *fAOD; //AOD object
93 AliEMCALGeometry *fGeom; // emcal geometry
95 TList *fOutputList; //output list
97 AliESDtrackCuts *fTrackCuts1; //ESD track cuts
98 AliESDtrackCuts *fTrackCuts2; //ESD track cuts
99 AliHFEcuts *fCuts; //Cut Collection
100 Bool_t fIdentifiedAsOutInz; //Out Of Range in z
101 Bool_t fPassTheEventCut; //Pass The Event Cut
102 Bool_t fRejectKinkMother; //Reject Kink Mother
103 Double_t fVz; //z position of the primary vertex
104 AliCFManager *fCFM; //!Correction Framework Manager
105 AliHFEpid *fPID; //PID
106 AliHFEpidQAmanager *fPIDqa; //! PID QA manager
107 Double_t fInvmassCut; //invariant mass cut value
108 Double_t fCentrality; // event centrality for QA
109 Double_t fCentralityMin; // lower bound of cenrality bin
110 Double_t fCentralityMax; // upper bound of centrality bin
111 const char *fkCentralityMethod; // method used to determine centrality (V0 by default)
112 Double_t fTPCnsigEleMin;//
113 Double_t fTPCnsigEleMax;//
114 Double_t fTPCnsigHadMin;//
115 Double_t fTPCnsigHadMax;//
116 Double_t fM02CutMin;//
117 Double_t fM02CutMax;//
118 Double_t fM20CutMin;//
119 Double_t fM20CutMax;//
120 Double_t fDispCutMin;//
121 Double_t fDispCutMax;//
124 Bool_t fTriggerCentral;//
126 // AliEventPoolManager* fPoolMgr; //! event pool manager
128 TH1F *fNoEvents; //no of events
129 // TH1F *fTrkpt; //track pt
130 TH2F *fTrkEovPAft; //track E/p after HFE pid
131 // TH2F *fTrkEovPBefHad; //track E/p before HFE pid
132 // TH2F *fdEdxBef; //track dEdx vs p before HFE pid
133 TH2F *fSemiIncElecDphi; //Semi Inclusive elec - had DPhi
134 TH2F *fSemiIncElecDphi1; //Semi Inclusive elec - had DPhi
135 TH2F *fSemiIncElecDphi2; //Semi Inclusive elec - had DPhi
136 TH2F *fSemiIncElecDphi3; //Semi Inclusive elec - had DPhi
137 TH2F *fSemiIncElecDphi4; //Semi Inclusive elec - had DPhi
138 TH2F *fPhotElecDphi; //Photon elec - had DPhi
139 TH2F *fPhotElecDphi1; //Photon elec - had DPhi
140 TH2F *fPhotElecDphi2; //Photon elec - had DPhi
141 TH2F *fPhotElecDphi3; //Photon elec - had DPhi
142 TH2F *fPhotElecDphi4; //Photon elec - had DPhi
143 TH2F *fInclusiveElecDphi; //Inclusive elec - had DPhi
144 TH2F *fInclusiveElecDphi1; //Inclusive elec - had DPhi
145 TH2F *fInclusiveElecDphi2; //Inclusive elec - had DPhi
146 TH2F *fInclusiveElecDphi3; //Inclusive elec - had DPhi
147 TH2F *fInclusiveElecDphi4; //Inclusive elec - had DPhi
148 TH2F *fInclusiveElecDphiEtaFS; //Inclusive elec EtaFS- had DPhi
149 TH2F *fInclusiveElecDphiEtaFS1; //Inclusive elec EtaFS- had DPhi
150 TH2F *fInclusiveElecDphiEtaFS2; //Inclusive elec EtaFS- had DPhi
151 TH2F *fInclusiveElecDphiEtaFS3; //Inclusive elec EtaFS- had DPhi
152 TH2F *fInclusiveElecDphiEtaFS4; //Inclusive elec EtaFS- had DPhi
153 TH2F *fDphiULSMassLow; //Dphi - ULS, mass< mass cut
154 TH2F *fDphiULSMassLow1; //Dphi - ULS, mass< mass cut
155 TH2F *fDphiULSMassLow2; //Dphi - ULS, mass< mass cut
156 TH2F *fDphiULSMassLow3; //Dphi - ULS, mass< mass cut
157 TH2F *fDphiULSMassLow4; //Dphi - ULS, mass< mass cut
158 TH2F *fDphiLSMassLow; //Dphi - LS, mass< mass cut
159 TH2F *fDphiLSMassLow1; //Dphi - LS, mass< mass cut
160 TH2F *fDphiLSMassLow2; //Dphi - LS, mass< mass cut
161 TH2F *fDphiLSMassLow3; //Dphi - LS, mass< mass cut
162 TH2F *fDphiLSMassLow4; //Dphi - LS, mass< mass cut
163 TH2F *fDphiULSMassLowNoPartner; //Dphi - ULS, mass< mass cut no partner
164 TH2F *fDphiULSMassLowNoPartner1; //Dphi - ULS, mass< mass cut no partner
165 TH2F *fDphiULSMassLowNoPartner2; //Dphi - ULS, mass< mass cut no partner
166 TH2F *fDphiULSMassLowNoPartner3; //Dphi - ULS, mass< mass cut no partner
167 TH2F *fDphiULSMassLowNoPartner4; //Dphi - ULS, mass< mass cut no partner
168 TH2F *fDphiLSMassLowNoPartner; //Dphi - LS, mass< mass cut
169 TH2F *fDphiLSMassLowNoPartner1; //Dphi - LS, mass< mass cut
170 TH2F *fDphiLSMassLowNoPartner2; //Dphi - LS, mass< mass cut
171 TH2F *fDphiLSMassLowNoPartner3; //Dphi - LS, mass< mass cut
172 TH2F *fDphiLSMassLowNoPartner4; //Dphi - LS, mass< mass cut
173 TH1F *fPhotoElecPt; //photonic elec pt
174 TH1F *fSemiInclElecPt; //Semi inclusive ele pt
175 TH1F *fInclusiveElecPt; // Inclusive elec pt
176 TH1F *fULSElecPt; //ULS elec Pt
177 TH1F *fLSElecPt;// LS elec pt
178 //Eta bins (Deta < 0.8)
179 TH2F *fSemiIncElecDphiEta1; //Semi Inclusive elec - had DPhi
180 TH2F *fSemiIncElecDphiEta11; //Semi Inclusive elec - had DPhi
181 TH2F *fSemiIncElecDphiEta12; //Semi Inclusive elec - had DPhi
182 TH2F *fSemiIncElecDphiEta13; //Semi Inclusive elec - had DPhi
183 TH2F *fSemiIncElecDphiEta14; //Semi Inclusive elec - had DPhi
184 TH2F *fPhotElecDphiEta1; //Photon elec - had DPhi
185 TH2F *fPhotElecDphiEta11; //Photon elec - had DPhi
186 TH2F *fPhotElecDphiEta12; //Photon elec - had DPhi
187 TH2F *fPhotElecDphiEta13; //Photon elec - had DPhi
188 TH2F *fPhotElecDphiEta14; //Photon elec - had DPhi
189 TH2F *fInclusiveElecDphiEta1; //Inclusive elec - had DPhi
190 TH2F *fInclusiveElecDphiEta11; //Inclusive elec - had DPhi
191 TH2F *fInclusiveElecDphiEta12; //Inclusive elec - had DPhi
192 TH2F *fInclusiveElecDphiEta13; //Inclusive elec - had DPhi
193 TH2F *fInclusiveElecDphiEta14; //Inclusive elec - had DPhi
194 TH2F *fDphiULSMassLowEta1; //Dphi - ULS, mass< mass cut
195 TH2F *fDphiULSMassLowEta11; //Dphi - ULS, mass< mass cut
196 TH2F *fDphiULSMassLowEta12; //Dphi - ULS, mass< mass cut
197 TH2F *fDphiULSMassLowEta13; //Dphi - ULS, mass< mass cut
198 TH2F *fDphiULSMassLowEta14; //Dphi - ULS, mass< mass cut
199 TH2F *fDphiLSMassLowEta1; //Dphi - LS, mass< mass cut
200 TH2F *fDphiLSMassLowEta11; //Dphi - LS, mass< mass cut
201 TH2F *fDphiLSMassLowEta12; //Dphi - LS, mass< mass cut
202 TH2F *fDphiLSMassLowEta13; //Dphi - LS, mass< mass cut
203 TH2F *fDphiLSMassLowEta14; //Dphi - LS, mass< mass cut
204 TH2F *fDphiULSMassLowNoPartnerEta1; //Dphi - ULS, mass< mass cut no partner
205 TH2F *fDphiULSMassLowNoPartnerEta11; //Dphi - ULS, mass< mass cut no partner
206 TH2F *fDphiULSMassLowNoPartnerEta12; //Dphi - ULS, mass< mass cut no partner
207 TH2F *fDphiULSMassLowNoPartnerEta13; //Dphi - ULS, mass< mass cut no partner
208 TH2F *fDphiULSMassLowNoPartnerEta14; //Dphi - ULS, mass< mass cut no partner
209 TH2F *fDphiLSMassLowNoPartnerEta1; //Dphi - LS, mass< mass cut
210 TH2F *fDphiLSMassLowNoPartnerEta11; //Dphi - LS, mass< mass cut
211 TH2F *fDphiLSMassLowNoPartnerEta12; //Dphi - LS, mass< mass cut
212 TH2F *fDphiLSMassLowNoPartnerEta13; //Dphi - LS, mass< mass cut
213 TH2F *fDphiLSMassLowNoPartnerEta14; //Dphi - LS, mass< mass cut
215 //Eta bins (Deta > 0.8)
216 TH2F *fSemiIncElecDphiEta2; //Semi Inclusive elec - had DPhi
217 TH2F *fSemiIncElecDphiEta21; //Semi Inclusive elec - had DPhi
218 TH2F *fSemiIncElecDphiEta22; //Semi Inclusive elec - had DPhi
219 TH2F *fSemiIncElecDphiEta23; //Semi Inclusive elec - had DPhi
220 TH2F *fSemiIncElecDphiEta24; //Semi Inclusive elec - had DPhi
221 TH2F *fPhotElecDphiEta2; //Photon elec - had DPhi
222 TH2F *fPhotElecDphiEta21; //Photon elec - had DPhi
223 TH2F *fPhotElecDphiEta22; //Photon elec - had DPhi
224 TH2F *fPhotElecDphiEta23; //Photon elec - had DPhi
225 TH2F *fPhotElecDphiEta24; //Photon elec - had DPhi
226 TH2F *fInclusiveElecDphiEta2; //Inclusive elec - had DPhi
227 TH2F *fInclusiveElecDphiEta21; //Inclusive elec - had DPhi
228 TH2F *fInclusiveElecDphiEta22; //Inclusive elec - had DPhi
229 TH2F *fInclusiveElecDphiEta23; //Inclusive elec - had DPhi
230 TH2F *fInclusiveElecDphiEta24; //Inclusive elec - had DPhi
231 TH2F *fDphiULSMassLowEta2; //Dphi - ULS, mass< mass cut
232 TH2F *fDphiULSMassLowEta21; //Dphi - ULS, mass< mass cut
233 TH2F *fDphiULSMassLowEta22; //Dphi - ULS, mass< mass cut
234 TH2F *fDphiULSMassLowEta23; //Dphi - ULS, mass< mass cut
235 TH2F *fDphiULSMassLowEta24; //Dphi - ULS, mass< mass cut
236 TH2F *fDphiLSMassLowEta2; //Dphi - LS, mass< mass cut
237 TH2F *fDphiLSMassLowEta21; //Dphi - LS, mass< mass cut
238 TH2F *fDphiLSMassLowEta22; //Dphi - LS, mass< mass cut
239 TH2F *fDphiLSMassLowEta23; //Dphi - LS, mass< mass cut
240 TH2F *fDphiLSMassLowEta24; //Dphi - LS, mass< mass cut
241 TH2F *fDphiULSMassLowNoPartnerEta2; //Dphi - ULS, mass< mass cut no partner
242 TH2F *fDphiULSMassLowNoPartnerEta21; //Dphi - ULS, mass< mass cut no partner
243 TH2F *fDphiULSMassLowNoPartnerEta22; //Dphi - ULS, mass< mass cut no partner
244 TH2F *fDphiULSMassLowNoPartnerEta23; //Dphi - ULS, mass< mass cut no partner
245 TH2F *fDphiULSMassLowNoPartnerEta24; //Dphi - ULS, mass< mass cut no partner
246 TH2F *fDphiLSMassLowNoPartnerEta2; //Dphi - LS, mass< mass cut
247 TH2F *fDphiLSMassLowNoPartnerEta21; //Dphi - LS, mass< mass cut
248 TH2F *fDphiLSMassLowNoPartnerEta22; //Dphi - LS, mass< mass cut
249 TH2F *fDphiLSMassLowNoPartnerEta23; //Dphi - LS, mass< mass cut
250 TH2F *fDphiLSMassLowNoPartnerEta24; //Dphi - LS, mass< mass cut
252 // TH1F *fTrackPtBefTrkCuts; //Track pt before track cuts
253 // TH1F *fTrackPtAftTrkCuts; //Track pt after track cuts
254 // TH2F *fTPCnsigma; //TPC n sigma vs p
255 // TH1F *fNCellv1; //No of cells in cluster, all EMCAL cluster
256 // TH1F *fClsEv1; //Cluster energy, all EMCAL cluster
257 // TH1F *fNClusv1; //No of clusters in event, all EMCAL cluster
258 TH1F *fInvmassLS1; //LS Invmass for all rec par
259 // TH1F *fInvmassLS2; //LS Invmass for all rec par
260 // TH1F *fInvmassLS3; //LS Invmass for all rec par
261 // TH1F *fInvmassLS4; //LS Invmass for all rec par
262 // TH1F *fInvmassLS5; //LS Invmass for all rec par
263 TH1F *fInvmassULS1;//ULS Invmass for all rec par
264 // TH1F *fInvmassULS2;//ULS Invmass for all rec par
265 // TH1F *fInvmassULS3;//ULS Invmass for all rec par
266 // TH1F *fInvmassULS4;//ULS Invmass for all rec par
267 // TH1F *fInvmassULS5;//ULS Invmass for all rec par
270 TH1F *fElecPhiTPChalf;//
272 // TH1F *fElecPhiTPC;//
273 // TH1F *fElecPhiTPCEovP;//
275 TH1F *fHadronPhiTPChalf;//
276 TH2F *fHadronPhiPt;//
277 /* TH1F *fTrackHFEcuts;//
278 TH1F *fTrakPhiSPD1;//
279 TH1F *fTrakPhiSPD2;//
280 TH1F *fTrakPhiSPDOr;//
281 TH1F *fTrakPhiSPDAnd;//
282 TH1F *fTrackHFEcutsITS;//
284 /* TH1F *fNoMixedEvents;//
285 TH2F *fMixStat; //no of events in pool vs multplicity
286 TH2F *fMixStat1; //no of events in pool vs zvtx
287 TH2F *fMixedIncElecDphi; //Mixed event - inclusive elec DPhi
288 TH2F *fMixedIncElecDphi1; //Mixed event - inclusive elec DPhi
289 TH2F *fMixedIncElecDphi2; //Mixed event - inclusive elec DPhi
290 TH2F *fMixedIncElecDphi3; //Mixed event - inclusive elec DPhi
291 TH2F *fMixedIncElecDphi4; //Mixed event - inclusive elec DPhi
292 TH2F *fMixedPhotElecDphi; //
293 TH2F *fMixedPhotElecDphi1; //
294 TH2F *fMixedPhotElecDphi2; //
295 TH2F *fMixedPhotElecDphi3; //
296 TH2F *fMixedPhotElecDphi4; //
297 TH2F *fMixedSemiIncElecDphi; //
298 TH2F *fMixedSemiIncElecDphi1; //
299 TH2F *fMixedSemiIncElecDphi2; //
300 TH2F *fMixedSemiIncElecDphi3; //
301 TH2F *fMixedSemiIncElecDphi4; //
302 TH2F *fMixedDphiULSMassLow;//
303 TH2F *fMixedDphiULSMassLow1;//
304 TH2F *fMixedDphiULSMassLow2;//
305 TH2F *fMixedDphiULSMassLow3;//
306 TH2F *fMixedDphiULSMassLow4;//
307 TH2F *fMixedDphiLSMassLow;//
308 TH2F *fMixedDphiLSMassLow1;//
309 TH2F *fMixedDphiLSMassLow2;//
310 TH2F *fMixedDphiLSMassLow3;//
311 TH2F *fMixedDphiLSMassLow4;//
314 TH1F *fCentralityPass; // ! QA histogram of events that pass centrality cut
315 TH1F *fCentralityNoPass; //! QA histogram of events that do not pass centrality cut
317 TH2F *fHadronDphi; //Hadron - had DPhi
318 TH2F *fHadronDphi1; //Hadron - had DPhi
319 TH2F *fHadronDphi2; //Hadron - had DPhi
320 TH2F *fHadronDphi3; //Hadron - had DPhi
321 TH2F *fHadronDphi4; //Hadron - had DPhi
322 TH1F *fPiPt; //TPC nsig < 3.5 pt
324 TH2F *fHadronDphiNoSS; //Hadron - had DPhi
325 TH2F *fHadronDphiNoSS1; //Hadron - had DPhi
326 TH2F *fHadronDphiNoSS2; //Hadron - had DPhi
327 TH2F *fHadronDphiNoSS3; //Hadron - had DPhi
328 TH2F *fHadronDphiNoSS4; //Hadron - had DPhi
329 TH1F *fPiPtNoSS; //TPC nsig < 3.5 pt
332 TH2F *fEovPHadWoSS;//
336 TH2F *fHadronDphiEta1; //Hadron - had DPhi
337 TH2F *fHadronDphiEta11; //Hadron - had DPhi
338 TH2F *fHadronDphiEta12; //Hadron - had DPhi
339 TH2F *fHadronDphiEta13; //Hadron - had DPhi
340 TH2F *fHadronDphiEta14; //Hadron - had DPhi
341 TH2F *fHadronDphiNoSSEta1; //Hadron - had DPhi NoSS
342 TH2F *fHadronDphiNoSSEta11; //Hadron - had DPhi NoSS
343 TH2F *fHadronDphiNoSSEta12; //Hadron - had DPhi NoSS
344 TH2F *fHadronDphiNoSSEta13; //Hadron - had DPhi NoSS
345 TH2F *fHadronDphiNoSSEta14; //Hadron - had DPhi NoSS
348 TH2F *fHadronDphiEta2; //Hadron - had DPhi
349 TH2F *fHadronDphiEta21; //Hadron - had DPhi
350 TH2F *fHadronDphiEta22; //Hadron - had DPhi
351 TH2F *fHadronDphiEta23; //Hadron - had DPhi
352 TH2F *fHadronDphiEta24; //Hadron - had DPhi
353 TH2F *fHadronDphiNoSSEta2; //Hadron - had DPhi NoSS
354 TH2F *fHadronDphiNoSSEta21; //Hadron - had DPhi NoSS
355 TH2F *fHadronDphiNoSSEta22; //Hadron - had DPhi NoSS
356 TH2F *fHadronDphiNoSSEta23; //Hadron - had DPhi NoSS
357 TH2F *fHadronDphiNoSSEta24; //Hadron - had DPhi NoSS
360 //THnSparse *fSparseElectron;//!Electron info
361 //Double_t *fvalueElectron;//!Electron info
363 AliAnalysisTaskElecHadronCorrel(const AliAnalysisTaskElecHadronCorrel&); // not implemented
364 AliAnalysisTaskElecHadronCorrel& operator=(const AliAnalysisTaskElecHadronCorrel&); // not implemented
366 ClassDef(AliAnalysisTaskElecHadronCorrel, 2); //!example of analysis
369 class AliehDPhiBasicParticle : public AliVParticle
372 AliehDPhiBasicParticle(Float_t eta, Float_t phi, Float_t pt, Short_t charge)
373 : fEta(eta), fPhi(phi), fpT(pt), fCharge(charge)
376 ~AliehDPhiBasicParticle() {}
379 virtual Double_t Px() const { AliFatal("Not implemented"); return 0; }
380 virtual Double_t Py() const { AliFatal("Not implemented"); return 0; }
381 virtual Double_t Pz() const { AliFatal("Not implemented"); return 0; }
382 virtual Double_t Pt() const { return fpT; }
383 virtual Double_t P() const { AliFatal("Not implemented"); return 0; }
384 virtual Bool_t PxPyPz(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
386 virtual Double_t Xv() const { AliFatal("Not implemented"); return 0; }
387 virtual Double_t Yv() const { AliFatal("Not implemented"); return 0; }
388 virtual Double_t Zv() const { AliFatal("Not implemented"); return 0; }
389 virtual Bool_t XvYvZv(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
391 virtual Double_t OneOverPt() const { AliFatal("Not implemented"); return 0; }
392 virtual Double_t Phi() const { return fPhi; }
393 virtual Double_t Theta() const { AliFatal("Not implemented"); return 0; }
396 virtual Double_t E() const { AliFatal("Not implemented"); return 0; }
397 virtual Double_t M() const { AliFatal("Not implemented"); return 0; }
399 virtual Double_t Eta() const { return fEta; }
400 virtual Double_t Y() const { AliFatal("Not implemented"); return 0; }
402 virtual Short_t Charge() const { return fCharge; }
403 virtual Int_t GetLabel() const { AliFatal("Not implemented"); return 0; }
405 virtual Int_t PdgCode() const { AliFatal("Not implemented"); return 0; }
406 virtual const Double_t *PID() const { AliFatal("Not implemented"); return 0; }
412 Short_t fCharge; // charge
414 ClassDef( AliehDPhiBasicParticle, 1); // class which contains only quantities requires for this analysis to reduce memory consumption for event mixing