]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/Correlations/DPhi/AliAnalysisTaskDiHadron.h
Fixed dependencies
[u/mrichter/AliRoot.git] / PWGCF / Correlations / DPhi / AliAnalysisTaskDiHadron.h
CommitLineData
69088c96 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16//2- and 3-particle trigger particle correlation analysis
17//Author: Jason Glyndwr Ulery, ulery@uni-frankfurt.de
d514944f 18//version 3.5, last revised 2010/11/04
69088c96 19
20#ifndef ALIANALYSISTASKDIHADRON_H
21#define ALIANALYSISTASKDIHADRON_H
22
13171d17 23class TH1;
3b7aa4ba 24class TH1F;
25class TH2F;
26class TH3F;
27class AliESDEvent;
28
d514944f 29//#include "AliAnalysisTask.h"
30#include "AliAnalysisTaskSE.h"
3b7aa4ba 31
32
d514944f 33class AliAnalysisTaskDiHadron : public AliAnalysisTaskSE{
3b7aa4ba 34 //Default constructor
35 public:
36
37
38 AliAnalysisTaskDiHadron(const char *name="AliAnalysisTaskDiHadron");
39
40 virtual ~AliAnalysisTaskDiHadron() {}
41 //virtual ~AliAnalysisTaskDiHadron();
42
43
44
45 //AliAnalysisTask Functions
46
47 virtual void ConnectInputData(Option_t *option);
48 virtual void CreateOutputObjects();
49 virtual void Exec(Option_t *option);
50 virtual void Terminate(Option_t *);
51
52
69088c96 53 void SetEfficiencies(Float_t EffFitPt, const TF1 *FitLow, const TF1 *FitHigh, Int_t NFitLowParam, Int_t NFitHighParam, Float_t *FitLowParam, Float_t *FitHighParam);
d514944f 54 void SetFlow(Float_t V2FitPt, Float_t V3FitPt, Float_t V4FitPt, const TF1 *FitLowV2, const TF1 *FitHighV2, const TF1 *FitLowV3, const TF1 *FitHighV3, const TF1 *FitLowV4, const TF1 *FitHighV4, Int_t NFitLowParamV2, Int_t NFitHighParamV2, Int_t NFitLowParamV3, Int_t NFitHighParamV3, Int_t NFitLowParamV4, Int_t NFitHighParamV4, Float_t *FitLowParamV2, Float_t *FitHighParamV2, Float_t *FitLowParamV3, Float_t *FitHighParamV3, Float_t *FitLowParamV4, Float_t *FitHighParamV4);
55 void SetBins(Int_t nBinPhi, Int_t nBinEta, Int_t nBinPhiEtaPhi, Int_t nBinPhiEtaEta, Int_t nBinPhi3, Int_t nBinEta3, Float_t dPhiMin, Float_t dPhiMax, Int_t NTPtBins, Int_t NMixBins, Int_t NCentBins,Int_t fCentPercent, Int_t NAPtBins, Int_t NAPt3Bins, Int_t NVertexBins, Int_t NXEBin,Float_t *PtTrigArray, Float_t *PtAssocArray, Float_t *PtAssoc3Array1, Float_t *PtAssoc3Array2, Int_t *CentArrayMin, Int_t *CentArrayMax, Float_t *XEArray);
56 void SetOptions(Int_t fAODData, Int_t fEfficiencyCorr, Int_t fDEBUG,Int_t fMCHistos);
69088c96 57 void SetCuts(Int_t MinClutersTPC, Float_t MinClusterRatio, Float_t MaxTPCchi2, Int_t MinClustersITS, Float_t EtaCut, Float_t TrigEtaCut, Float_t NearPhiCut, Float_t XECut, Float_t MaxDCA, Float_t MaxDCAXY, Float_t MaxDCAZ, Int_t DCA2D, Int_t TPCRefit, Int_t ITSRefit, Int_t SPDCut, Float_t MinPtAssoc, Float_t MaxPtAssoc, Float_t VzCut, Int_t NIDs, const char *TrigIDArray);
13171d17 58 void SetSimulation(Int_t Simulate,Float_t SimNBgPart,Float_t SimNJetPart,Float_t SimNJet,Int_t SimNEvents, Int_t SimAwayDeflected);
69088c96 59 Int_t CheckVertex(const AliESDEvent *rESD);
d514944f 60 Int_t CheckVertexAOD(const AliAODEvent *rAOD);
69088c96 61 Int_t CheckTrigger(const AliESDEvent *rESD);
d514944f 62 Int_t CheckTriggerAOD(const AliAODEvent *rAOD);
63 Int_t TrackCuts(const AliESDEvent *rESD, Float_t *rPt, Float_t *rEta, Float_t *rPhi, Short_t *rCharge, Float_t *rEff, Float_t *rV2, Float_t *rV3, Float_t *rV4, Int_t **rPtAssoc3, Int_t *rNPtAssoc3, Int_t *rGoodTracks);
64 Int_t TrackCutsAOD(const AliAODEvent *rAOD, Float_t *rPt, Float_t *rEta, Float_t *rPhi, Short_t *rCharge, Float_t *rEff, Float_t *rV2, Float_t *rV3, Float_t *rV4, Int_t **rPtAssoc3, Int_t *rNPtAssoc3, Int_t *rGoodTracks);
65 Int_t TrackCutsMC(AliMCEvent *rMC, Float_t *rPt, Float_t *rEta, Float_t *rPhi, Short_t *rCharge, Float_t *rEff, Float_t *rV2, Float_t *rV3, Float_t *rV4, Int_t **rPtAssoc3, Int_t *rNPtAssoc3, Int_t *rGoodTracks);
66 Int_t TrackCutsSim(Float_t *rPt, Float_t *rEta, Float_t *rPhi, Short_t *rCharge, Float_t *rEff, Float_t *rV2, Float_t *rV3, Float_t *rV4, Int_t **rPtAssoc3, Int_t *rNPtAssoc3, Int_t *rGoodTracks);
13171d17 67 void CalcFlow(Float_t *rPt, Float_t *rEta, Float_t *rPhi, Int_t *rGoodTracks, Int_t LeadPart);
3b7aa4ba 68
69 private:
70
71//Maximum numbers for creating the arrays
69088c96 72 enum{kNumberOfPtBins=20,
d514944f 73 kNumberOfCentBins=11,
69088c96 74 kNumberOfAPtBins=50,
75 kNumberOfApt3Bins=50,
76 kNumberOfTriggerIDs=10,
77 kNumberOfVertexBins=20,
78 kNumberOfXeBins=20,
79 kNumberOfEventsToMix=100};
3b7aa4ba 80 // virtual void SetParameters();
69088c96 81 AliESDEvent *fESD; //ESD data file
d514944f 82 AliAODEvent *fAOD;//AOD data file
69088c96 83 AliMCEvent *fMC;//Monty Carlo event file
84 TList *fOutput;//List used to store all the histograms for output
3b7aa4ba 85
d514944f 86 //Cuts
69088c96 87 Int_t fMinClustersTPC;//Minimum Clusters in the TPC
88 Float_t fMinClusterRatio;//Ratio of MinClusters to Number of Possible Clusters in TPC
89 Float_t fMaxTPCchi2;//Max chi^2/ndf for TPC fit
90 Int_t fMinClustersITS;//Minimum Clusters in ITS
91 Float_t fEtaCut;//Associated particle eta range |eta|<fEtaCut
92 Float_t fTrigEtaCut;//Trigger particle eta range |eta|<fTrigEtaCut (should be <=fEtaCut)
93 Float_t fNearPhiCut;//Point in DeltaPhi seperating near and away sides
94 Float_t fXECut;//Point in DeltaPhi seperating near and away for XE (not finished)
95 Float_t fMaxDCA;//Max total DCA (if fDCA2D==0) (in cm)
96 Float_t fMaxDCAXY;//Max radial DCA (if fDCA2D==1)
97 Float_t fMaxDCAZ;//Max longitudional DCA (if fDCA2D==1)
98 Int_t fDCA2D;//1 cut on total DCA, 2 cut seperately on radial and logitudional, 3 pt dependent cut
99 Int_t fTPCRefit;//1 require TPCRefit 0 not
100 Int_t fITSRefit;//1 require ITSRefit 0 not
101 Int_t fSPDCut;//1 require a point in the SPD 0 not
102 Float_t fMinPtAssoc;//Minimum pT to look at
103 Float_t fMaxPtAssoc;//Maximum pT to look at
104 Float_t fVzCut;//z-vertex cut |z-vertex|<fVzCut in cm
d514944f 105 Int_t fAODData;//0 ESDs, 1 AODs needs properly set event for simulations
106 Int_t fEfficiencyCorr;//Toggle correcting of efficiencies when filling histograms
107 Int_t fDEBUG;//if 1 extra printfs for debugging
108
109 //Binning
110 Int_t fnBinPhi;//Number of bins for DeltaPhi histograms
111 Int_t fnBinEta;//Number of bins for DeltaEta histograms
112 Int_t fnBinPhiEtaPhi;//Number of bins for DeltaPhi-DeltaEta histograms in Phi
113 Int_t fnBinPhiEtaEta;//Number of bins for DeltaPhi-DeltaEta histograms in Eta
114 Int_t fnBinPhi3;//Number of bins in 3-particle DeltaPhi-DeltaPhi (along each axis)
115 Int_t fnBinEta3;//Number of bins in 3-particle DeltaEta-DeltaEta (along each axis)
116 Float_t fPi;//Pi=3.14....
117 Float_t fdPhiMin;//lowest edge of the first bin in DeltaPhi plots
118 Float_t fdPhiMax;//maximum in DeltaPhi plots (should be 2*Pi+fdPhiMin)
119
120 //Parameters for settings
121 Int_t fNTPtBins;//Number of trigger pt bins
122 Int_t fNMix;//Number of events to mix
123 Int_t fNCentBins;//Number of centrality bins (they are allowed to overlap)
124 Int_t fCentPercent;//if 1 centralities are defined in % and uses the centrality task if 0 centralities define in V0Mult
125 Int_t fNAPtBins;//Number of associated particle bins for 2-particle correlations (overlap not allowed)
126 Int_t fNAPt3Bins;//Number of associated particle bins for 3-particle correlations (overlap allowed)
127 Int_t fNVertexBins;//Number of bins in z-vertex for mixing
128 Int_t fNXEBins;//Number of bins for XE distribution (not finished)
129 Int_t fNIDs;//Number of trigger IDs (such as CINT1B)
130 Float_t fEffFitPt;//Pt cut used to divide efficiciency fits into low and high pt
131 Int_t fNFitLowParam;//Number of fit parameters for low pt efficeincy fit
132 Int_t fNFitHighParam;//Number of fit parameters for high pt efficeincy fit
133 Float_t fV2FitPt;//Pt cut used to divide v2 fits into low and high pt
134 Float_t fV3FitPt;//Pt cut used to divide v3 fits into low and high pt
135 Float_t fV4FitPt;//Pt cut used to divied v4 fits into low and high pt
136 Int_t fNFitLowParamV2;//Number of fit parameters in low pt v2 fit
137 Int_t fNFitHighParamV2;//Number of fit parameters in high pt V2 fit
138 Int_t fNFitLowParamV3;//Number of fit parameters in low pt v3 fit
139 Int_t fNFitHighParamV3;//Number of fit parameters in high pt V3 fit
140 Int_t fNFitLowParamV4;//Number of fit parameters in low pt v4 fit
141 Int_t fNFitHighParamV4;//Number of fit parameters in high pt v4 fit
142 Int_t fMCHistos;//Toggle whether to make Monty Carlo histograms (if made and ran on data will simply be empty not cause a crash)
143
144 TF1 *fFitLow;//Low pt efficiency fit function
145 TF1 *fFitHigh;//High pt efficiency fit function
146 Float_t *fFitLowParam; //fit parameters for low pt efficiency fit function
147 Float_t *fFitHighParam;//fit parameters for high pt efficiency fit function
148 TF1 *fFitLowV2;//Low pt efficiency fit function
149 TF1 *fFitHighV2;//High pt efficiency fit function
150 Float_t *fFitLowParamV2; //fit parameters for low pt efficiency fit function
151 Float_t *fFitHighParamV2;//fit parameters for high pt efficiency fit function
152 TF1 *fFitLowV3;//Low pt efficiency fit function
153 TF1 *fFitHighV3;//High pt efficiency fit function
154 Float_t *fFitLowParamV3; //fit parameters for low pt efficiency fit function
155 Float_t *fFitHighParamV3;//fit parameters for high pt efficiency fit function
156 TF1 *fFitLowV4;//Low pt efficiency fit function
157 TF1 *fFitHighV4;//High pt efficiency fit function
158 Float_t *fFitLowParamV4; //fit parameters for low pt efficiency fit function
159 Float_t *fFitHighParamV4;//fit parameters for high pt efficiency fit function
160
161 Float_t *fPtTrigArray;//Array for trigger pt bins
162 Float_t *fPtAssocArray;//Array for associated pt bins (2-particle correlations)
163 //2 arrays to allow overlaping bins
164 Float_t *fPtAssoc3Array1;//lower bin edge for 3-particle correlations associated pt bins
165 Float_t *fPtAssoc3Array2; //upper bin eged for 3-particle correlations associated pt bins
166 //2 arrays to allow oeverlaping bins
167 Int_t *fCentArrayMin;//lower bin edge for centrality bins (based on SPD tracklet multiplicity)
168 Int_t *fCentArrayMax;//upper bin edge for centraily bins
169 Float_t *fXEArray;//XE bin array
170 char *fTrigIDArray;//array of trigger ids (such as CINT1B)
171
13171d17 172 //Simulations
d514944f 173 Int_t fSimulate;//if 1 run a simulation
174 Float_t fSimNBgPart;//Number of background particles in simulation
175 Float_t fSimNJetPart;//Number of particles in 1 of the jet peaks in simulation
176 Float_t fSimNJet;//Average Number of Jets per event.
177 Int_t fSimNEvents;//Number of events to simulate
13171d17 178 Int_t fSimAwayDeflected;//Set away side for defected jets in sim
179 Float_t fSimPsi2;//reaction plane 2 for sim
180 Float_t fSimPsi3;//reaction plane 3 for sim
181 Float_t fSimPsi4;// reaction plane 4 for sim
182 Int_t fSimFlowMark;//event to use from flow array
d514944f 183
184
185 Float_t fVertexArray[(kNumberOfVertexBins+1)];//array for dividing z vertex into bins for event mixing
3b7aa4ba 186
187 //Histograms
d514944f 188 TH1F *fHistPt[kNumberOfCentBins][2];//Pt Distribution of tracks (no efficency correction)
189 TH1F *fHistPtEff[kNumberOfCentBins][2];//Pt Distribution of tracks (efficnecy corrected if set)
190 TH1F *fHistPtTrig[kNumberOfPtBins][kNumberOfCentBins][2];//Pt Distributions of tracks from triggered events
191 TH1F *fHistMult[2];//Multipuliciy Distributions
192 TH1F *fHistMultTrig[kNumberOfPtBins][2];//Multiplicity Distributions of triggered events
193
194 TH2F *fHistPhi[kNumberOfCentBins][2];//Phi Distributions of tracks
195 TH2F *fHistPhiTrig[kNumberOfPtBins][kNumberOfCentBins][2];//Phi Distributions fo tracks in triggered events
196 TH2F *fHistDeltaPhi[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle distributions
197 TH2F *fHistDeltaPhiMix[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle distributions from mixed events
198 TH2F *fHistDeltaPhiMixV2[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle distributions for v2
199 TH2F *fHistDeltaPhiMixV3[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle distributions for v3
200 TH2F *fHistDeltaPhiMixV4[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle distributions for v4
201
202 TH2F *fHistPhiPt[kNumberOfCentBins][2];//Pt weighed phi distributions
203 TH2F *fHistPhiTrigPt[kNumberOfPtBins][kNumberOfCentBins][2];//Pt weighted phi distributions from triggered events
204 TH2F *fHistDeltaPhiPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-partricle pt weighted distributions
205 TH2F *fHistDeltaPhiMixPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle pt weigthed distributions from mixed events
206 TH2F *fHistDeltaPhiMixV2Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle pt weighted distributions for v2
207 TH2F *fHistDeltaPhiMixV3Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle pt weighted distributions for v2
208 TH2F *fHistDeltaPhiMixV4Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//DeltaPhi 2-particle pt weighted distributions for v4
3b7aa4ba 209
d514944f 210
211 TH2F *fHistEta[kNumberOfCentBins][2];//Eta distributions
212 TH2F *fHistEtaTrig[kNumberOfPtBins][kNumberOfCentBins][2];//Eta distributions from mixed events
213 TH2F *fHistEtaPt[kNumberOfCentBins][2];//Pt-weighted Eta distributions
214 TH2F *fHistEtaTrigPt[kNumberOfPtBins][kNumberOfCentBins][2];//Pt-weighted Eta diestibutions from mixed events
215
216 TH2F *fHistDeltaEtaN[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta distributions
217 TH2F *fHistDeltaEtaNMix[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta distributions from mixed events
218 TH2F *fHistDeltaEtaNMixV2[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta distributions for v2
219 TH2F *fHistDeltaEtaNMixV3[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta distributions for v3
220 TH2F *fHistDeltaEtaNMixV4[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta distributions for v4
221 TH2F *fHistDeltaEtaNPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side pt weighted 2-particle DeltaEta distributions
222 TH2F *fHistDeltaEtaNMixPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side pt-weighted 2-particle DeltaEta distributions from mixed events
223 TH2F *fHistDeltaEtaNMixV2Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta pt weighted distributions for v2
224 TH2F *fHistDeltaEtaNMixV3Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta pt weighted distributions for v2
225 TH2F *fHistDeltaEtaNMixV4Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Near-side 2-particle DeltaEta pt weighted distributions for v4
226
227 TH2F *fHistDeltaEtaA[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side DeltaEta distributions
228 TH2F *fHistDeltaEtaAMix[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side DeltaEta distributions from mixed events
229 TH2F *fHistDeltaEtaAMixV2[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side 2-particle DeltaEta distributions for v2
230 TH2F *fHistDeltaEtaAMixV3[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side 2-particle DeltaEta distributions for v2
231 TH2F *fHistDeltaEtaAMixV4[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side 2-particle DeltaEta distributions for v4
232
233 TH2F *fHistDeltaEtaAPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side pt-weighted DeltaEta distributions from mixed events
234 TH2F *fHistDeltaEtaAMixPt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side pt-weigthed DeltaEta distributions from mixed events
235 TH2F *fHistDeltaEtaAMixV2Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side pt-weighted 2-particle DeltaEta distributions for v2
236 TH2F *fHistDeltaEtaAMixV3Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side pt-weighted 2-particle DeltaEta distributions for v2
237 TH2F *fHistDeltaEtaAMixV4Pt[kNumberOfPtBins][kNumberOfCentBins][3][2];//Away-side pt-weighted 2-particle DeltaEta distributions for v4
238
239 TH1F *fHistNEvents[kNumberOfCentBins][2];//Number of events count
240 TH1F *fHistNTrigger[kNumberOfCentBins][2];//Number of triggers count
241 TH1F *fHistNTriggerPt[kNumberOfCentBins][2];//Pt-weighted number of triggers count
242 TH1F *fHistNMix[kNumberOfCentBins][2];//Number of mixed events count
243
244 TH3F *fHistPhiEta[kNumberOfCentBins][2];//Phi-Eta distributions
245 TH3F *fHistPhiEtaTrig[kNumberOfPtBins][kNumberOfCentBins][2];//Phi-Eta distributions in triggered events
246 TH3F *fHistDeltaPhiEta[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta 2-particle distributions
247 TH3F *fHistDeltaPhiEtaMix[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta 2-particle distributions from mixed events
248 TH3F *fHistDeltaPhiEtaMixV2[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta 2-particle distributions for V2
249 TH3F *fHistDeltaPhiEtaMixV3[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta 2-particle distributions for V3
250 TH3F *fHistDeltaPhiEtaMixV4[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta 2-particle distributions for V4
251
252 TH3F *fHistPhiEtaPt[kNumberOfCentBins][2];//Pt-weighted Phi-Eta distributions
253 TH3F *fHistPhiEtaTrigPt[kNumberOfPtBins][kNumberOfCentBins][2];//Pt-weighted Phi-Eta distributions from triggered events
254 TH3F *fHistDeltaPhiEtaPt[kNumberOfPtBins][kNumberOfCentBins][2];//Pt-weighted DeltaPhi-DeltaEta 2-particle distributions
255 TH3F *fHistDeltaPhiEtaMixPt[kNumberOfPtBins][kNumberOfCentBins][2];//Pt-weigthed DeltaPhi-DeltaEta 2-particle distributions from mixed events
256 TH3F *fHistDeltaPhiEtaMixV2Pt[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta pt weighted 2-particle distributions for V2
257 TH3F *fHistDeltaPhiEtaMixV3Pt[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta pt weighted 2-particle distributions for V3
258 TH3F *fHistDeltaPhiEtaMixV4Pt[kNumberOfPtBins][kNumberOfCentBins][2];//DeltaPhi-DeltaEta pt weighted 2-particle distributions for V4
259
260 TH1F *fHistXEN[kNumberOfPtBins][kNumberOfCentBins][2];//XE Near-side (not finished)
261 TH1F *fHistXENMix[kNumberOfPtBins][kNumberOfCentBins][2];//XE near-side from mixed events (not finished)
262 TH1F *fHistXEA[kNumberOfPtBins][kNumberOfCentBins][2];//XE away-side (not finished)
263 TH1F *fHistXEAMix[kNumberOfPtBins][kNumberOfCentBins][2];//XE away-side from mxied events (not finished)
264
3b7aa4ba 265 //Three-Particle Histograms
d514944f 266 TH2F *fHistDeltaPhiPhi[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions
267 TH2F *fHistDeltaPhiPhiMix[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions from mixed events
268 TH2F *fHistDeltaPhiPhiMixV2[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions from mixed events
269 TH2F *fHistDeltaPhiPhiMixV3[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions from mixed events
270 TH2F *fHistDeltaPhiPhiMixV4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions from mixed events
271 TH2F *fHistDeltaPhiPhiMixV2V2V4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle distributions from mixed events
272 TH2F *fHistDeltaPhiPhiSS[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle soft-soft background term (from mixing)
273 TH2F *fHistDeltaPhiPhiSSV2[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle soft-soft background term v2 (from mixing)
274 TH2F *fHistDeltaPhiPhiSSV3[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle soft-soft background term v3 (from mixing)
275 TH2F *fHistDeltaPhiPhiSSV4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaPhi-DeltaPhi 3-particle soft-soft background term v4 (from mixing)
276
277 TH2F *fHistDeltaEtaEta[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions
278 TH2F *fHistDeltaEtaEtaMix[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions from Mixed Events
279 TH2F *fHistDeltaEtaEtaMixV2[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions for V2
280 TH2F *fHistDeltaEtaEtaMixV3[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions for V2
281 TH2F *fHistDeltaEtaEtaMixV4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions for V4
282 TH2F *fHistDeltaEtaEtaMixV2V2V4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions for v2*v2*v4 terms
283 TH2F *fHistDeltaEtaEtaSS[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions soft-soft background term (from mixing)
284 TH2F *fHistDeltaEtaEtaSSV2[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions soft-soft background term v2 (from mixing)
285 TH2F *fHistDeltaEtaEtaSSV3[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions soft-soft background term v3 (from mixing)
286
287 TH2F *fHistDeltaEtaEtaSSV4[kNumberOfPtBins][kNumberOfApt3Bins][kNumberOfCentBins][4][2];//DeltaEta-DeltaEta 3-particle distributions soft-soft background term v4 (from mixing)
288
289
290
69088c96 291 //Arrays for event mixing (only need parameters of tracks passing cuts kept)
d514944f 292 Float_t *fMPt[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//Pt array (mixed events)
293 Float_t *fMPhi[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2]; //Phi array (mixed events)
294 Int_t fMixTrack[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//Number of tracks in the event stored (mixed events)
295 Float_t *fMEta[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//Eta Array (mixed events)
296 Short_t *fMCharge[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//Charge array (mixed events)
297 Float_t *fMEff[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//Efficiency correction array (mixed events)
298 Float_t *fMV2[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//v2
299 Float_t *fMV3[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//v2
300 Float_t *fMV4[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//v4
301 Int_t fMixPointer[kNumberOfCentBins][kNumberOfVertexBins][2];//which event should be replaced with newest mixed event (mixed events)
302 Int_t fMixEnd[kNumberOfCentBins][kNumberOfVertexBins][2]; //current depth of mixed event pool (mixed events)
3b7aa4ba 303 //additional ones to speed up the 3-particle correlations
69088c96 304 Short_t *fMPtAssoc3[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2][10];//which 3-particle pt bin(s) the track is in, using a bit extra memory fixing the pt bins to 10, but makes the arrays much easier (mixed events)
305 Short_t *fMNPtAssoc3[kNumberOfEventsToMix][kNumberOfCentBins][kNumberOfVertexBins][2];//number of 3-particle pt bins the track is in (mixed events)
3b7aa4ba 306
d514944f 307
3b7aa4ba 308 //Arrays for Main Events
69088c96 309 Float_t *ftPhi;//Phi array (current event)
310 Float_t *ftEta;//Eta array (current event)
311 Float_t *ftPt;//Pt Array (current event)
312 Short_t *ftCharge;//Charge Array (current event)
313 Float_t *ftEff;//Efficneicy Array (current event)
d514944f 314 Float_t *ftV2;//V2 Array (current event)
315 Float_t *ftV3;//V3 Array (current event)
316 Float_t *ftV4;//V4 Array (current event)
69088c96 317 Int_t **ftPtAssoc3;//which 3-particle bins the track is in (current event)
318 Int_t *ftNPtAssoc3;//number of 3-particle bins the track is in (current event)
d514944f 319
3b7aa4ba 320 AliAnalysisTaskDiHadron(const AliAnalysisTaskDiHadron&);//not implimented
321 AliAnalysisTaskDiHadron& operator=(const AliAnalysisTaskDiHadron&);//not implimnted
322
323 ClassDef(AliAnalysisTaskDiHadron,1);
324
325};
326#endif
327
328