AliPhysics  ec7afe5 (ec7afe5)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskCRC.cxx
Go to the documentation of this file.
1 /*************************************************************************
2  * Copyright(c) 1998-2008, 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 /********************************
17  * analysis task for CRC *
18  * *
19  * author: Jacopo Margutti *
20  * (margutti@nikhef.nl) *
21  * ******************************/
22 
23 class TFile;
24 class TString;
25 class TList;
26 class AliAnalysisTaskSE;
27 
28 #include "Riostream.h"
29 #include "AliAODEvent.h"
30 #include "AliAODHeader.h"
31 #include "AliCentrality.h"
32 #include "AliFlowVector.h"
33 #include "AliFlowEvent.h"
34 #include "AliFlowEventSimple.h"
35 #include "AliAnalysisTaskCRC.h"
36 #include "AliFlowAnalysisCRC.h"
37 #include "AliLog.h"
38 
39 class AliFlowVector;
40 class TVector;
41 
42 using std::cout;
43 using std::endl;
45 
46 //================================================================================================================
47 
48 AliAnalysisTaskCRC::AliAnalysisTaskCRC(const char *name, Bool_t useParticleWeights):
49 AliAnalysisTaskSE(name),
50 fEvent(NULL),
51 fQC(NULL),
52 fListHistos(NULL),
53 fBookOnlyBasicCCH(kTRUE),
54 fFillMultipleControlHistograms(kFALSE),
55 fHarmonic(1),
56 fApplyCorrectionForNUA(kFALSE),
57 fApplyCorrectionForNUAVsM(kFALSE),
58 fPropagateErrorAlsoFromNIT(kFALSE),
59 fCalculateDiffFlow(kTRUE),
60 fCalculate2DDiffFlow(kFALSE),
61 fCalculateDiffFlowVsEta(kTRUE),
62 fStoreDistributions(kFALSE),
63 fCalculateCumulantsVsM(kFALSE),
64 fCalculateAllCorrelationsVsM(kFALSE),
65 fCalculateMixedHarmonics(kFALSE),
66 fCalculateMixedHarmonicsVsM(kFALSE),
67 fStoreControlHistograms(kFALSE),
68 fMinimumBiasReferenceFlow(kTRUE),
69 fForgetAboutCovariances(kFALSE),
70 fStoreVarious(kFALSE),
71 fExactNoRPs(0),
72 fUse2DHistograms(kFALSE),
73 fFillProfilesVsMUsingWeights(kTRUE),
74 fUseQvectorTerms(kFALSE),
75 fnBinsMult(10000),
76 fMinMult(0.),
77 fMaxMult(10000.),
78 fUseParticleWeights(useParticleWeights),
79 fUsePhiWeights(kFALSE),
80 fUsePtWeights(kFALSE),
81 fUseEtaWeights(kFALSE),
82 fUseTrackWeights(kFALSE),
83 fUsePhiEtaWeights(kFALSE),
84 fUsePhiEtaWeightsChDep(kFALSE),
85 fUsePhiEtaWeightsVtxDep(kFALSE),
86 fUsePhiEtaCuts(kFALSE),
87 fUseZDCESEMulWeights(kFALSE),
88 fUseZDCESESpecWeights(kFALSE),
89 fWeightsList(NULL),
90 fMultiplicityWeight(NULL),
91 fMultiplicityIs(AliFlowCommonConstants::kRP),
92 fnBinsForCorrelations(10000),
93 fUseBootstrap(kFALSE),
94 fUseBootstrapVsM(kFALSE),
95 fnSubsamples(10),
96 fCalculateCRC(kTRUE),
97 fCalculateCRCPt(kFALSE),
98 fCalculateCME(kFALSE),
99 fCalculateCRCInt(kFALSE),
100 fCalculateCRC2(kFALSE),
101 fCalculateCRCVZ(kFALSE),
102 fCalculateCRCZDC(kFALSE),
103 fCalculateEbEFlow(kFALSE),
104 fStoreZDCQVecVtxPos(kFALSE),
105 fCRC2nEtaBins(6),
106 fCalculateFlowQC(kFALSE),
107 fCalculateFlowZDC(kFALSE),
108 fCalculateFlowVZ(kFALSE),
109 fUseVZERO(kFALSE),
110 fUseZDC(kFALSE),
111 fRecenterZDC(kFALSE),
112 fDivSigma(kTRUE),
113 fInvertZDC(kFALSE),
114 fCRCTestSin(kFALSE),
115 fUseNUAforCRC(kFALSE),
116 fUseCRCRecenter(kFALSE),
117 fCRCEtaMin(0.),
118 fCRCEtaMax(0.),
119 fnCenBin(10),
120 fFlowQCCenBin(100),
121 fFlowQCDeltaEta(0.4),
122 fCenBinWidth(10.),
123 fDataSet(""),
124 fInteractionRate(""),
125 fSelectCharge(""),
126 fPOIExtraWeights(""),
127 fCorrWeight("TPCuVZuZDCu"),
128 fQVecList(NULL),
129 fCRCZDCCalibList(NULL),
130 fCRCVZEROCalibList(NULL),
131 fCRCZDCResList(NULL),
132 fZDCESEList(NULL),
133 fCenWeightsHist(NULL),
134 fQAZDCCuts(kFALSE),
135 fMinMulZN(1),
136 fMaxDevZN(5.),
137 fZDCGainAlpha(0.395)
138 {
139  // constructor
140  AliDebug(2,"AliAnalysisTaskCRC::AliAnalysisTaskCRC(const char *name, Bool_t useParticleWeights)");
141 
142  // Define input and output slots here
143  // Input slot #0 works with an AliFlowEventSimple
144  DefineInput(0, AliFlowEventSimple::Class());
145 
146  // Output slot #0 is reserved
147  // Output slot #1 writes into a TList container
148  DefineOutput(1, TList::Class());
149 
150  // Event weights:
151  fMultiplicityWeight = new TString("combinations");
152 
153  // b) Initialize default min and max values of correlations:
154  // (Remark: The default values bellow were chosen for v2=5% and M=500)
155  fMinValueOfCorrelation[0] = -0.015; // <2>_min
156  fMaxValueOfCorrelation[0] = 0.03; // <2>_max
157  fMinValueOfCorrelation[1] = -0.6e-3; // <4>_min
158  fMaxValueOfCorrelation[1] = 0.07; // <4>_max
159  fMinValueOfCorrelation[2] = -0.08e-3; // <6>_min
160  fMaxValueOfCorrelation[2] = 0.015; // <6>_max
161  fMinValueOfCorrelation[3] = -20.e-6; // <8>_min
162  fMaxValueOfCorrelation[3] = 0.003; // <8>_max
163 
164  // c) Initialize default min and max values of correlation products:
165  // (Remark: The default values bellow were chosen for v2=5% and M=500)
166  fMinValueOfCorrelationProduct[0] = -15.e-6; // <2><4>_min
167  fMaxValueOfCorrelationProduct[0] = 0.02; // <2><4>_max
168 
169  // d) Initialize default min and max values of q-vector terms:
170  fMinValueOfQvectorTerms[0] = 0.;
171  fMaxValueOfQvectorTerms[0] = 30.;
172  fMinValueOfQvectorTerms[1] = 0.;
173  fMaxValueOfQvectorTerms[1] = 20.;
174  fMinValueOfQvectorTerms[2] = 0.;
175  fMaxValueOfQvectorTerms[2] = 200.;
176  fMinValueOfQvectorTerms[3] = -30.;
177  fMaxValueOfQvectorTerms[3] = 80.;
178 
179  for(Int_t c=0; c<10; c++) {
180  fPtWeightsHist[c] = NULL;
181  for(Int_t b=0; b<21; b++) {
182  for(Int_t k=0; k<2; k++) {
183  fEtaWeightsHist[c][b][k] = NULL;
184  }
185  }
186  }
187  for(Int_t c=0; c<2; c++) {
188  for(Int_t k=0; k<2; k++) {
189  fNvsCenCut[c][k] = NULL;
190  }
191  }
192  for(Int_t k=0; k<5; k++) {
193  fZDCESEMultWeightsHist[k] = NULL;
194  fZDCESESpecWeightsHist[k] = NULL;
195  }
196 
197 }
198 
199 //================================================================================================================
200 
203 fEvent(NULL),
204 fQC(NULL),
205 fListHistos(NULL),
206 fBookOnlyBasicCCH(kFALSE),
207 fFillMultipleControlHistograms(kFALSE),
208 fHarmonic(1),
209 fApplyCorrectionForNUA(kFALSE),
210 fApplyCorrectionForNUAVsM(kFALSE),
211 fPropagateErrorAlsoFromNIT(kFALSE),
212 fCalculateDiffFlow(kFALSE),
213 fCalculate2DDiffFlow(kFALSE),
214 fCalculateDiffFlowVsEta(kTRUE),
215 fStoreDistributions(kFALSE),
216 fCalculateCumulantsVsM(kFALSE),
217 fCalculateAllCorrelationsVsM(kFALSE),
218 fCalculateMixedHarmonics(kFALSE),
219 fCalculateMixedHarmonicsVsM(kFALSE),
220 fStoreControlHistograms(kFALSE),
221 fMinimumBiasReferenceFlow(kFALSE),
222 fForgetAboutCovariances(kFALSE),
223 fStoreVarious(kFALSE),
224 fExactNoRPs(0),
225 fUse2DHistograms(kFALSE),
226 fFillProfilesVsMUsingWeights(kTRUE),
227 fUseQvectorTerms(kFALSE),
228 fnBinsMult(0),
229 fMinMult(0.),
230 fMaxMult(0.),
231 fUseParticleWeights(kFALSE),
232 fUsePhiWeights(kFALSE),
233 fUsePtWeights(kFALSE),
234 fUseEtaWeights(kFALSE),
235 fUseTrackWeights(kFALSE),
236 fUsePhiEtaWeights(kFALSE),
237 fUsePhiEtaWeightsChDep(kFALSE),
238 fUsePhiEtaWeightsVtxDep(kFALSE),
239 fUsePhiEtaCuts(kFALSE),
240 fUseZDCESEMulWeights(kFALSE),
241 fUseZDCESESpecWeights(kFALSE),
242 fWeightsList(NULL),
243 fMultiplicityWeight(NULL),
244 fMultiplicityIs(AliFlowCommonConstants::kRP),
245 fnBinsForCorrelations(0),
246 fUseBootstrap(kFALSE),
247 fUseBootstrapVsM(kFALSE),
248 fnSubsamples(10),
249 fCalculateCRC(kTRUE),
250 fCalculateCRCPt(kFALSE),
251 fCalculateCME(kFALSE),
252 fCalculateCRCInt(kFALSE),
253 fCalculateCRC2(kFALSE),
254 fCalculateCRCVZ(kFALSE),
255 fCalculateCRCZDC(kFALSE),
256 fCalculateEbEFlow(kFALSE),
257 fStoreZDCQVecVtxPos(kFALSE),
258 fCRC2nEtaBins(6),
259 fCalculateFlowQC(kFALSE),
260 fCalculateFlowZDC(kFALSE),
261 fCalculateFlowVZ(kFALSE),
262 fUseVZERO(kFALSE),
263 fUseZDC(kFALSE),
264 fRecenterZDC(kFALSE),
265 fDivSigma(kTRUE),
266 fInvertZDC(kFALSE),
267 fCRCTestSin(kFALSE),
268 fUseNUAforCRC(kFALSE),
269 fUseCRCRecenter(kFALSE),
270 fCRCEtaMin(0.),
271 fCRCEtaMax(0.),
272 fnCenBin(10),
273 fFlowQCCenBin(100),
274 fFlowQCDeltaEta(0.4),
275 fCenBinWidth(10.),
276 fDataSet(""),
277 fInteractionRate(""),
278 fSelectCharge(""),
279 fPOIExtraWeights(""),
280 fCorrWeight("TPCuVZuZDCu"),
281 fQVecList(NULL),
282 fCRCZDCCalibList(NULL),
283 fCRCVZEROCalibList(NULL),
284 fCRCZDCResList(NULL),
285 fZDCESEList(NULL),
286 fCenWeightsHist(NULL),
287 fQAZDCCuts(kFALSE),
288 fMinMulZN(1),
289 fMaxDevZN(5.),
290 fZDCGainAlpha(0.395)
291 {
292  // Dummy constructor
293  AliDebug(2,"AliAnalysisTaskCRC::AliAnalysisTaskCRC()");
294 
295  // b) Initialize default min and max values of correlations:
296  // (Remark: The default values bellow were chosen for v2=5% and M=500)
297  fMinValueOfCorrelation[0] = -0.015; // <2>_min
298  fMaxValueOfCorrelation[0] = 0.03; // <2>_max
299  fMinValueOfCorrelation[1] = -0.6e-3; // <4>_min
300  fMaxValueOfCorrelation[1] = 0.07; // <4>_max
301  fMinValueOfCorrelation[2] = -0.08e-3; // <6>_min
302  fMaxValueOfCorrelation[2] = 0.015; // <6>_max
303  fMinValueOfCorrelation[3] = -20.e-6; // <8>_min
304  fMaxValueOfCorrelation[3] = 0.003; // <8>_max
305 
306  // c) Initialize default min and max values of correlation products:
307  // (Remark: The default values bellow were chosen for v2=5% and M=500)
308  fMinValueOfCorrelationProduct[0] = -15.e-6; // <2><4>_min
309  fMaxValueOfCorrelationProduct[0] = 0.02; // <2><4>_max
310 
311  // d) Initialize default min and max values of q-vector terms:
312  fMinValueOfQvectorTerms[0] = 0.;
313  fMaxValueOfQvectorTerms[0] = 30.;
314  fMinValueOfQvectorTerms[1] = 0.;
315  fMaxValueOfQvectorTerms[1] = 20.;
316  fMinValueOfQvectorTerms[2] = 0.;
317  fMaxValueOfQvectorTerms[2] = 200.;
318  fMinValueOfQvectorTerms[3] = -30.;
319  fMaxValueOfQvectorTerms[3] = 80.;
320 
321  for(Int_t c=0; c<10; c++) {
322  fPtWeightsHist[c] = NULL;
323  for(Int_t b=0; b<21; b++) {
324  for(Int_t k=0; k<2; k++) {
325  fEtaWeightsHist[c][b][k] = NULL;
326  }
327  }
328  }
329  for(Int_t c=0; c<2; c++) {
330  for(Int_t k=0; k<2; k++) {
331  fNvsCenCut[c][k] = NULL;
332  }
333  }
334  for(Int_t k=0; k<5; k++) {
335  fZDCESEMultWeightsHist[k] = NULL;
336  fZDCESESpecWeightsHist[k] = NULL;
337  }
338 
339 }
340 
341 //==========================================================================================================
342 
344 {
345  // Called at every worker node to initialize
346  AliDebug(2,"AliAnalysisTaskCRC::UserCreateOutputObjects()");
347 
348  // Analyser:
349  fQC = new AliFlowAnalysisCRC("AliFlowAnalysisCRC",fnCenBin,fCenBinWidth);
350 
351  // Common:
370  if(fDataSet.EqualTo("2010")) fQC->SetDataSet(AliFlowAnalysisCRC::k2010);
371  if(fDataSet.EqualTo("2011")) fQC->SetDataSet(AliFlowAnalysisCRC::k2011);
372  if(fDataSet.EqualTo("2015")) fQC->SetDataSet(AliFlowAnalysisCRC::k2015);
373  if(fDataSet.EqualTo("2015v6")) fQC->SetDataSet(AliFlowAnalysisCRC::k2015v6);
415  // Multiparticle correlations vs multiplicity:
419  // Particle weights:
420  if(fUseParticleWeights) {
421  // Pass the flags to class:
430  // Pass the list with weights to class:
432  }
434  // Event weights:
435  if(!fMultiplicityWeight->Contains("combinations")) {
437  }
438  // Q Vector weights:
439  if(fUseCRCRecenter) {
441  }
442  if (fRecenterZDC) {
445  }
447  if (fQAZDCCuts) {
449  }
451  if(fUsePtWeights){
452  for(Int_t c=0; c<10; c++) {
454  }
455  }
456  if(fUseEtaWeights){
457  for(Int_t h=0; h<10; h++) {
458  for(Int_t b=0; b<21; b++) {
459  for(Int_t c=0; c<2; c++) {
460  if(fEtaWeightsHist[h][b][c]) fQC->SetEtaWeightsHist(fEtaWeightsHist[h][b][c],h,b,c);
461  }
462  }
463  }
464  }
465  if(fMinMulZN>1){
466  for(Int_t c=0; c<2; c++) {
467  for(Int_t k=0; k<2; k++) {
468  if(fNvsCenCut[c][k]) fQC->SetNvsCenCut(fNvsCenCut[c][k],c,k);
469  }
470  }
471  }
474  for(Int_t k=0; k<5; k++) {
476  }
477  }
480  for(Int_t k=0; k<5; k++) {
482  }
483  }
490 
491  // Store phi distribution for one event to illustrate flow:
493 
494  // Initialize default min and max values of correlations:
495  for(Int_t ci=0;ci<4;ci++) {
498  }
499 
500  // Initialize default min and max values of correlation products:
501  for(Int_t cpi=0;cpi<1;cpi++) {
504  }
505 
506  // Initialize default min and max values of Q-vector terms:
507  for(Int_t ci=0;ci<4;ci++) {
510  }
511 
512  // Bootstrap:
516 
517  fQC->Init();
518 
519  if(fQC->GetHistList()) {
521  } else {
522  Printf("ERROR: Could not retrieve histogram list (QC, Task::UserCreateOutputObjects()) !!!!");
523  }
524 
525  PostData(1,fListHistos);
526 
527 } // end of void AliAnalysisTaskCRC::UserCreateOutputObjects()
528 
529 //================================================================================================================
530 
532 {
533  // main loop (called for each event)
534  fEvent = dynamic_cast<AliFlowEvent*>(GetInputData(0));
535 
536  // Q-cumulants
537  if(fEvent) {
539  fQC->Make(fEvent);
540  } else {
541  cout<<"WARNING: No input data (QC, Task::UserExec()) !!!!"<<endl;
542  cout<<endl;
543  }
544 
545  PostData(1,fListHistos);
546 }
547 
548 //================================================================================================================
549 
551 {
552  //accessing the merged output list:
553  fListHistos = (TList*)GetOutputData(1);
554 
555  fQC = new AliFlowAnalysisCRC("AliFlowAnalysisCRC",fnCenBin,fCenBinWidth);
556  if(fDataSet.EqualTo("2010")) fQC->SetDataSet(AliFlowAnalysisCRC::k2010);
557  if(fDataSet.EqualTo("2011")) fQC->SetDataSet(AliFlowAnalysisCRC::k2011);
558  if(fDataSet.EqualTo("2015")) fQC->SetDataSet(AliFlowAnalysisCRC::k2015);
559  if(fDataSet.EqualTo("2015v6")) fQC->SetDataSet(AliFlowAnalysisCRC::k2015v6);
564  fQC->SetRunList();
565 
566  if(fListHistos) {
568  fQC->Finish();
569  PostData(1,fListHistos);
570  } else {
571  cout<<" WARNING: histogram list pointer is empty (QC, Task::Terminate()) !!!!"<<endl;
572  cout<<endl;
573  }
574 
575 } // end of void AliAnalysisTaskCRC::Terminate(Option_t *)
576 
577 
578 
579 
580 
581 
582 
583 
584 
585 
586 
587 
588 
589 
590 
591 
592 
593 
594 
595 
596 
void SetPOIExtraWeights(POIExtraWeights set)
TList * GetHistList() const
void SetUsePhiEtaCuts(Bool_t const uPhiEtaW)
void SetTestSin(Bool_t const cCRC)
virtual void UserExec(Option_t *option)
void SetUseQvectorTerms(Bool_t const uqvt)
void SetNvsCenCut(TH1D *const n, Int_t c, Int_t h)
virtual void UserCreateOutputObjects()
TH2F * fZDCESEMultWeightsHist[5]
ZDC mult cuts.
void SetUseTrackWeights(Bool_t const uTrackW)
void SetCalculateAllCorrelationsVsM(Bool_t const cacvm)
void SetDataSet(DataSet set)
AliFlowAnalysisCRC * fQC
void SetUseBootstrap(Bool_t const ub)
void SetCorrWeightVZ(CorrelationWeights weights)
void SetRecenterZDC(Bool_t const cCRC)
void SetBookOnlyBasicCCH(Bool_t const bobcch)
void SetCalculateFlowVZ(Bool_t const cCRC)
void SetApplyCorrectionForNUA(Bool_t const applyCorrectionForNUA)
void SetCRCQVecWeightsList(TList *const wlist)
void SetZDCESEList(TList *const kList)
void SetUseZDCESEMulWeights(Bool_t const uPhiEtaW)
void SetUseZDC(Bool_t const cCRC)
void SetInvertZDC(Bool_t const cCRC)
void SetMinMulZN(Int_t weights)
void SetUsePhiWeights(Bool_t const uPhiW)
void SetQAZDCCuts(Bool_t const cCRC)
void SetnBinsForCorrelations(Int_t const nb)
void SetUseVZERO(Bool_t const cCRC)
void SetDivSigma(Bool_t const cCRC)
void SetZDCESEMultWeightsHist(TH2F *const n, Int_t h)
TCanvas * c
Definition: TestFitELoss.C:172
void SetCorrWeightTPC(CorrelationWeights weights)
void SetInteractionRate(InteractionRate set)
void SetCalculateCRCVZ(Bool_t const cCRC)
void SetForgetAboutCovariances(Bool_t const fac)
void SetCalculateCRC2(Bool_t const cCRC)
void SetZDCESESpecWeightsHist(TH2F *const n, Int_t h)
void SetMinValueOfCorrelation(Int_t const ci, Double_t const minValue)
void SetStoreControlHistograms(Bool_t const sch)
void SetFillMultipleControlHistograms(Bool_t const fmch)
void SetCalculateCRC(Bool_t const cCRC)
void SetMaxValueOfCorrelation(Int_t const ci, Double_t const maxValue)
void SetStoreZDCQVecVtxPos(Bool_t const cCRC)
void SetnBinsMult(Int_t const nbm)
void SetNUAforCRC(Bool_t const cCRC)
void SetCalculateFlowQC(Bool_t const cCRC)
virtual void Make(AliFlowEventSimple *anEvent)
TH2F * fZDCESESpecWeightsHist[5]
void SetMinValueOfCorrelationProduct(Int_t const cpi, Double_t const minValue)
void SetUseZDCESESpecWeights(Bool_t const uPhiEtaW)
void SetCorrWeightZDC(CorrelationWeights weights)
void SetCalculateFlowZDC(Bool_t const cCRC)
void SetRunNumber(Int_t const n)
Double_t fMinValueOfCorrelationProduct[1]
int Int_t
Definition: External.C:63
virtual void Terminate(Option_t *)
void SetCalculateDiffFlow(Bool_t const cdf)
void SetCalculateEbEFlow(Bool_t const cCRC)
void SetFillProfilesVsMUsingWeights(Bool_t const fpvmuw)
void SetPtWeightsHist(TH1D *const n, Int_t c)
Double_t fMinValueOfCorrelation[4]
Double_t fMaxValueOfCorrelation[4]
void SetMinValueOfQvectorTerms(Int_t const qvti, Double_t const minValue)
void SetCalculateCumulantsVsM(Bool_t const ccvm)
Double_t fMinValueOfQvectorTerms[4]
Double_t fMaxValueOfQvectorTerms[4]
void SetCRCZDCResList(TList *const wlist)
void SetPropagateErrorAlsoFromNIT(Bool_t const peafNIT)
void SetCalculateCME(Bool_t const cCRC)
void SetExactNoRPs(Int_t const enr)
void SetCalculateCRCZDC(Bool_t const cCRC)
void SetnSubsamples(Int_t const ns)
void SetCalculateCRCPt(Bool_t const cCRC)
void SetCalculate2DDiffFlow(Bool_t const c2ddf)
void SetStoreVarious(Bool_t const spdfoe)
void SetMaxMult(Double_t const maxm)
void SetCRCEtaRange(Double_t const etamin, Double_t const etamax)
void SetMultiplicityWeight(const char *multiplicityWeight)
TH1D * fEtaWeightsHist[10][21][2]
void SetUseBootstrapVsM(Bool_t const ubVsM)
void SetUse2DHistograms(Bool_t const u2dh)
Double_t fMaxValueOfCorrelationProduct[1]
void SetWeightsList(TList *const wlist)
void SetZDCGainAlpha(Float_t a)
void SetCalculateMixedHarmonicsVsM(Bool_t const cmhvm)
ClassImp(AliAnalysisTaskCRC) AliAnalysisTaskCRC
AliFlowCommonConstants::ERefMultSource fMultiplicityIs
void SetMinMult(Double_t const minm)
void SetUseEtaWeights(Bool_t const uEtaW)
void SetCalculateCRCInt(Bool_t const cCRC)
void SetStoreDistributions(Bool_t const storeDistributions)
virtual void GetOutputHistograms(TList *outputListHistos)
void SetCalculateDiffFlowVsEta(Bool_t const cdfve)
void SetUsePtWeights(Bool_t const uPtW)
void SetMultiplicityIs(AliFlowCommonConstants::ERefMultSource mi)
void SetHarmonic(Int_t const harmonic)
void SetCRCVZEROCalibList(TList *const wlist)
void SetFlowQCDeltaEta(Double_t const TL)
const char Option_t
Definition: External.C:48
void SetMaxValueOfCorrelationProduct(Int_t const cpi, Double_t const maxValue)
void SetMinimumBiasReferenceFlow(Bool_t const mmrf)
void SetCalculateMixedHarmonics(Bool_t const cmh)
void SetEtaWeightsHist(TH1D *const n, Int_t h, Int_t b, Int_t c)
bool Bool_t
Definition: External.C:53
void SetMaxDevZN(Float_t weights)
void SetSelectCharge(SelectCharge set)
void SetMaxValueOfQvectorTerms(Int_t const qvti, Double_t const maxValue)
void SetApplyCorrectionForNUAVsM(Bool_t const applyCorrectionForNUAVsM)
void SetCRCZDCCalibList(TList *const wlist)
void SetFlowQCCenBin(Int_t const TL)
void SetUseCRCRecenter(Bool_t const cCRC)
void SetCRC2nEtaBins(Int_t NB)
void SetCenWeightsHist(TH1D *const n)