]>
Commit | Line | Data |
---|---|---|
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 | 23 | class TH1; |
3b7aa4ba | 24 | class TH1F; |
25 | class TH2F; | |
26 | class TH3F; | |
27 | class AliESDEvent; | |
28 | ||
d514944f | 29 | //#include "AliAnalysisTask.h" |
30 | #include "AliAnalysisTaskSE.h" | |
3b7aa4ba | 31 | |
32 | ||
d514944f | 33 | class 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 |