class TFile;
class TString;
class TList;
class AliAnalysisTaskSE;
#include "Riostream.h"
#include "AliFlowEventSimple.h"
#include "AliAnalysisTaskMixedHarmonics.h"
#include "AliFlowAnalysisWithMixedHarmonics.h"
using std::cout;
using std::endl;
ClassImp(AliAnalysisTaskMixedHarmonics)
AliAnalysisTaskMixedHarmonics::AliAnalysisTaskMixedHarmonics(const char *name, Bool_t useParticleWeights):
AliAnalysisTaskSE(name),
fEvent(NULL),
fMH(NULL),
fListHistos(NULL),
fHarmonic(1),
fNoOfMultipicityBins(100),
fMultipicityBinWidth(1.),
fMinMultiplicity(3.),
fOppositeChargesPOI(kFALSE),
fEvaluateDifferential3pCorrelator(kFALSE),
fCorrectForDetectorEffects(kFALSE),
fPrintOnTheScreen(kTRUE),
fCalculateVsM(kFALSE),
fShowBinLabelsVsM(kFALSE),
fUseParticleWeights(useParticleWeights),
fUsePhiWeights(kFALSE),
fUsePtWeights(kFALSE),
fUseEtaWeights(kFALSE),
fWeightsList(NULL)
{
cout<<"AliAnalysisTaskMixedHarmonics::AliAnalysisTaskMixedHarmonics(const char *name, Bool_t useParticleWeights)"<<endl;
DefineInput(0, AliFlowEventSimple::Class());
if(useParticleWeights)
{
DefineInput(1, TList::Class());
}
DefineOutput(1, TList::Class());
}
AliAnalysisTaskMixedHarmonics::AliAnalysisTaskMixedHarmonics():
AliAnalysisTaskSE(),
fEvent(NULL),
fMH(NULL),
fListHistos(NULL),
fHarmonic(0),
fNoOfMultipicityBins(0),
fMultipicityBinWidth(0),
fMinMultiplicity(0),
fOppositeChargesPOI(kFALSE),
fEvaluateDifferential3pCorrelator(kFALSE),
fCorrectForDetectorEffects(kFALSE),
fPrintOnTheScreen(kFALSE),
fCalculateVsM(kFALSE),
fShowBinLabelsVsM(kFALSE),
fUseParticleWeights(kFALSE),
fUsePhiWeights(kFALSE),
fUsePtWeights(kFALSE),
fUseEtaWeights(kFALSE),
fWeightsList(NULL)
{
cout<<"AliAnalysisTaskMixedHarmonics::AliAnalysisTaskMixedHarmonics()"<<endl;
}
void AliAnalysisTaskMixedHarmonics::UserCreateOutputObjects()
{
cout<<"AliAnalysisTaskMixedHarmonics::UserCreateOutputObjects()"<<endl;
fMH = new AliFlowAnalysisWithMixedHarmonics();
fMH->SetHarmonic(fHarmonic);
fMH->SetNoOfMultipicityBins(fNoOfMultipicityBins);
fMH->SetMultipicityBinWidth(fMultipicityBinWidth);
fMH->SetMinMultiplicity(fMinMultiplicity);
fMH->SetOppositeChargesPOI(fOppositeChargesPOI);
fMH->SetEvaluateDifferential3pCorrelator(fEvaluateDifferential3pCorrelator);
fMH->SetCorrectForDetectorEffects(fCorrectForDetectorEffects);
fMH->SetPrintOnTheScreen(fPrintOnTheScreen);
fMH->SetCalculateVsM(fCalculateVsM);
fMH->SetShowBinLabelsVsM(fShowBinLabelsVsM);
if(fUseParticleWeights)
{
if(fUsePhiWeights) fMH->SetUsePhiWeights(fUsePhiWeights);
if(fUsePtWeights) fMH->SetUsePtWeights(fUsePtWeights);
if(fUseEtaWeights) fMH->SetUseEtaWeights(fUseEtaWeights);
if(GetNinputs()==2)
{
fWeightsList = (TList*)GetInputData(1);
}
if(fWeightsList) fMH->SetWeightsList(fWeightsList);
}
fMH->Init();
if(fMH->GetHistList())
{
fListHistos = fMH->GetHistList();
} else
{
Printf("ERROR: Could not retrieve histogram list (MH, Task::UserCreateOutputObjects()) !!!!");
}
PostData(1,fListHistos);
}
void AliAnalysisTaskMixedHarmonics::UserExec(Option_t *)
{
fEvent = dynamic_cast<AliFlowEventSimple*>(GetInputData(0));
if(fEvent)
{
fMH->Make(fEvent);
} else
{
cout<<"WARNING: No input data (MH, Task::UserExec()) !!!!"<<endl;
cout<<endl;
}
PostData(1,fListHistos);
}
void AliAnalysisTaskMixedHarmonics::Terminate(Option_t *)
{
fListHistos = (TList*)GetOutputData(1);
fMH = new AliFlowAnalysisWithMixedHarmonics();
if(fListHistos)
{
fMH->GetOutputHistograms(fListHistos);
fMH->Finish();
PostData(1,fListHistos);
} else
{
cout<<" WARNING: histogram list pointer is empty (MH, Task::Terminate()) !!!!"<<endl;
cout<<endl;
}
}
AliAnalysisTaskMixedHarmonics.cxx:1 AliAnalysisTaskMixedHarmonics.cxx:2 AliAnalysisTaskMixedHarmonics.cxx:3 AliAnalysisTaskMixedHarmonics.cxx:4 AliAnalysisTaskMixedHarmonics.cxx:5 AliAnalysisTaskMixedHarmonics.cxx:6 AliAnalysisTaskMixedHarmonics.cxx:7 AliAnalysisTaskMixedHarmonics.cxx:8 AliAnalysisTaskMixedHarmonics.cxx:9 AliAnalysisTaskMixedHarmonics.cxx:10 AliAnalysisTaskMixedHarmonics.cxx:11 AliAnalysisTaskMixedHarmonics.cxx:12 AliAnalysisTaskMixedHarmonics.cxx:13 AliAnalysisTaskMixedHarmonics.cxx:14 AliAnalysisTaskMixedHarmonics.cxx:15 AliAnalysisTaskMixedHarmonics.cxx:16 AliAnalysisTaskMixedHarmonics.cxx:17 AliAnalysisTaskMixedHarmonics.cxx:18 AliAnalysisTaskMixedHarmonics.cxx:19 AliAnalysisTaskMixedHarmonics.cxx:20 AliAnalysisTaskMixedHarmonics.cxx:21 AliAnalysisTaskMixedHarmonics.cxx:22 AliAnalysisTaskMixedHarmonics.cxx:23 AliAnalysisTaskMixedHarmonics.cxx:24 AliAnalysisTaskMixedHarmonics.cxx:25 AliAnalysisTaskMixedHarmonics.cxx:26 AliAnalysisTaskMixedHarmonics.cxx:27 AliAnalysisTaskMixedHarmonics.cxx:28 AliAnalysisTaskMixedHarmonics.cxx:29 AliAnalysisTaskMixedHarmonics.cxx:30 AliAnalysisTaskMixedHarmonics.cxx:31 AliAnalysisTaskMixedHarmonics.cxx:32 AliAnalysisTaskMixedHarmonics.cxx:33 AliAnalysisTaskMixedHarmonics.cxx:34 AliAnalysisTaskMixedHarmonics.cxx:35 AliAnalysisTaskMixedHarmonics.cxx:36 AliAnalysisTaskMixedHarmonics.cxx:37 AliAnalysisTaskMixedHarmonics.cxx:38 AliAnalysisTaskMixedHarmonics.cxx:39 AliAnalysisTaskMixedHarmonics.cxx:40 AliAnalysisTaskMixedHarmonics.cxx:41 AliAnalysisTaskMixedHarmonics.cxx:42 AliAnalysisTaskMixedHarmonics.cxx:43 AliAnalysisTaskMixedHarmonics.cxx:44 AliAnalysisTaskMixedHarmonics.cxx:45 AliAnalysisTaskMixedHarmonics.cxx:46 AliAnalysisTaskMixedHarmonics.cxx:47 AliAnalysisTaskMixedHarmonics.cxx:48 AliAnalysisTaskMixedHarmonics.cxx:49 AliAnalysisTaskMixedHarmonics.cxx:50 AliAnalysisTaskMixedHarmonics.cxx:51 AliAnalysisTaskMixedHarmonics.cxx:52 AliAnalysisTaskMixedHarmonics.cxx:53 AliAnalysisTaskMixedHarmonics.cxx:54 AliAnalysisTaskMixedHarmonics.cxx:55 AliAnalysisTaskMixedHarmonics.cxx:56 AliAnalysisTaskMixedHarmonics.cxx:57 AliAnalysisTaskMixedHarmonics.cxx:58 AliAnalysisTaskMixedHarmonics.cxx:59 AliAnalysisTaskMixedHarmonics.cxx:60 AliAnalysisTaskMixedHarmonics.cxx:61 AliAnalysisTaskMixedHarmonics.cxx:62 AliAnalysisTaskMixedHarmonics.cxx:63 AliAnalysisTaskMixedHarmonics.cxx:64 AliAnalysisTaskMixedHarmonics.cxx:65 AliAnalysisTaskMixedHarmonics.cxx:66 AliAnalysisTaskMixedHarmonics.cxx:67 AliAnalysisTaskMixedHarmonics.cxx:68 AliAnalysisTaskMixedHarmonics.cxx:69 AliAnalysisTaskMixedHarmonics.cxx:70 AliAnalysisTaskMixedHarmonics.cxx:71 AliAnalysisTaskMixedHarmonics.cxx:72 AliAnalysisTaskMixedHarmonics.cxx:73 AliAnalysisTaskMixedHarmonics.cxx:74 AliAnalysisTaskMixedHarmonics.cxx:75 AliAnalysisTaskMixedHarmonics.cxx:76 AliAnalysisTaskMixedHarmonics.cxx:77 AliAnalysisTaskMixedHarmonics.cxx:78 AliAnalysisTaskMixedHarmonics.cxx:79 AliAnalysisTaskMixedHarmonics.cxx:80 AliAnalysisTaskMixedHarmonics.cxx:81 AliAnalysisTaskMixedHarmonics.cxx:82 AliAnalysisTaskMixedHarmonics.cxx:83 AliAnalysisTaskMixedHarmonics.cxx:84 AliAnalysisTaskMixedHarmonics.cxx:85 AliAnalysisTaskMixedHarmonics.cxx:86 AliAnalysisTaskMixedHarmonics.cxx:87 AliAnalysisTaskMixedHarmonics.cxx:88 AliAnalysisTaskMixedHarmonics.cxx:89 AliAnalysisTaskMixedHarmonics.cxx:90 AliAnalysisTaskMixedHarmonics.cxx:91 AliAnalysisTaskMixedHarmonics.cxx:92 AliAnalysisTaskMixedHarmonics.cxx:93 AliAnalysisTaskMixedHarmonics.cxx:94 AliAnalysisTaskMixedHarmonics.cxx:95 AliAnalysisTaskMixedHarmonics.cxx:96 AliAnalysisTaskMixedHarmonics.cxx:97 AliAnalysisTaskMixedHarmonics.cxx:98 AliAnalysisTaskMixedHarmonics.cxx:99 AliAnalysisTaskMixedHarmonics.cxx:100 AliAnalysisTaskMixedHarmonics.cxx:101 AliAnalysisTaskMixedHarmonics.cxx:102 AliAnalysisTaskMixedHarmonics.cxx:103 AliAnalysisTaskMixedHarmonics.cxx:104 AliAnalysisTaskMixedHarmonics.cxx:105 AliAnalysisTaskMixedHarmonics.cxx:106 AliAnalysisTaskMixedHarmonics.cxx:107 AliAnalysisTaskMixedHarmonics.cxx:108 AliAnalysisTaskMixedHarmonics.cxx:109 AliAnalysisTaskMixedHarmonics.cxx:110 AliAnalysisTaskMixedHarmonics.cxx:111 AliAnalysisTaskMixedHarmonics.cxx:112 AliAnalysisTaskMixedHarmonics.cxx:113 AliAnalysisTaskMixedHarmonics.cxx:114 AliAnalysisTaskMixedHarmonics.cxx:115 AliAnalysisTaskMixedHarmonics.cxx:116 AliAnalysisTaskMixedHarmonics.cxx:117 AliAnalysisTaskMixedHarmonics.cxx:118 AliAnalysisTaskMixedHarmonics.cxx:119 AliAnalysisTaskMixedHarmonics.cxx:120 AliAnalysisTaskMixedHarmonics.cxx:121 AliAnalysisTaskMixedHarmonics.cxx:122 AliAnalysisTaskMixedHarmonics.cxx:123 AliAnalysisTaskMixedHarmonics.cxx:124 AliAnalysisTaskMixedHarmonics.cxx:125 AliAnalysisTaskMixedHarmonics.cxx:126 AliAnalysisTaskMixedHarmonics.cxx:127 AliAnalysisTaskMixedHarmonics.cxx:128 AliAnalysisTaskMixedHarmonics.cxx:129 AliAnalysisTaskMixedHarmonics.cxx:130 AliAnalysisTaskMixedHarmonics.cxx:131 AliAnalysisTaskMixedHarmonics.cxx:132 AliAnalysisTaskMixedHarmonics.cxx:133 AliAnalysisTaskMixedHarmonics.cxx:134 AliAnalysisTaskMixedHarmonics.cxx:135 AliAnalysisTaskMixedHarmonics.cxx:136 AliAnalysisTaskMixedHarmonics.cxx:137 AliAnalysisTaskMixedHarmonics.cxx:138 AliAnalysisTaskMixedHarmonics.cxx:139 AliAnalysisTaskMixedHarmonics.cxx:140 AliAnalysisTaskMixedHarmonics.cxx:141 AliAnalysisTaskMixedHarmonics.cxx:142 AliAnalysisTaskMixedHarmonics.cxx:143 AliAnalysisTaskMixedHarmonics.cxx:144 AliAnalysisTaskMixedHarmonics.cxx:145 AliAnalysisTaskMixedHarmonics.cxx:146 AliAnalysisTaskMixedHarmonics.cxx:147 AliAnalysisTaskMixedHarmonics.cxx:148 AliAnalysisTaskMixedHarmonics.cxx:149 AliAnalysisTaskMixedHarmonics.cxx:150 AliAnalysisTaskMixedHarmonics.cxx:151 AliAnalysisTaskMixedHarmonics.cxx:152 AliAnalysisTaskMixedHarmonics.cxx:153 AliAnalysisTaskMixedHarmonics.cxx:154 AliAnalysisTaskMixedHarmonics.cxx:155 AliAnalysisTaskMixedHarmonics.cxx:156 AliAnalysisTaskMixedHarmonics.cxx:157 AliAnalysisTaskMixedHarmonics.cxx:158 AliAnalysisTaskMixedHarmonics.cxx:159 AliAnalysisTaskMixedHarmonics.cxx:160 AliAnalysisTaskMixedHarmonics.cxx:161 AliAnalysisTaskMixedHarmonics.cxx:162 AliAnalysisTaskMixedHarmonics.cxx:163 AliAnalysisTaskMixedHarmonics.cxx:164 AliAnalysisTaskMixedHarmonics.cxx:165 AliAnalysisTaskMixedHarmonics.cxx:166 AliAnalysisTaskMixedHarmonics.cxx:167 AliAnalysisTaskMixedHarmonics.cxx:168 AliAnalysisTaskMixedHarmonics.cxx:169 AliAnalysisTaskMixedHarmonics.cxx:170 AliAnalysisTaskMixedHarmonics.cxx:171 AliAnalysisTaskMixedHarmonics.cxx:172 AliAnalysisTaskMixedHarmonics.cxx:173 AliAnalysisTaskMixedHarmonics.cxx:174 AliAnalysisTaskMixedHarmonics.cxx:175 AliAnalysisTaskMixedHarmonics.cxx:176 AliAnalysisTaskMixedHarmonics.cxx:177 AliAnalysisTaskMixedHarmonics.cxx:178 AliAnalysisTaskMixedHarmonics.cxx:179 AliAnalysisTaskMixedHarmonics.cxx:180 AliAnalysisTaskMixedHarmonics.cxx:181 AliAnalysisTaskMixedHarmonics.cxx:182 AliAnalysisTaskMixedHarmonics.cxx:183 AliAnalysisTaskMixedHarmonics.cxx:184 AliAnalysisTaskMixedHarmonics.cxx:185 AliAnalysisTaskMixedHarmonics.cxx:186 AliAnalysisTaskMixedHarmonics.cxx:187 AliAnalysisTaskMixedHarmonics.cxx:188 AliAnalysisTaskMixedHarmonics.cxx:189 AliAnalysisTaskMixedHarmonics.cxx:190 AliAnalysisTaskMixedHarmonics.cxx:191 AliAnalysisTaskMixedHarmonics.cxx:192 AliAnalysisTaskMixedHarmonics.cxx:193 AliAnalysisTaskMixedHarmonics.cxx:194 AliAnalysisTaskMixedHarmonics.cxx:195 AliAnalysisTaskMixedHarmonics.cxx:196 AliAnalysisTaskMixedHarmonics.cxx:197 AliAnalysisTaskMixedHarmonics.cxx:198 AliAnalysisTaskMixedHarmonics.cxx:199 AliAnalysisTaskMixedHarmonics.cxx:200 AliAnalysisTaskMixedHarmonics.cxx:201 AliAnalysisTaskMixedHarmonics.cxx:202 AliAnalysisTaskMixedHarmonics.cxx:203 AliAnalysisTaskMixedHarmonics.cxx:204 AliAnalysisTaskMixedHarmonics.cxx:205 AliAnalysisTaskMixedHarmonics.cxx:206 AliAnalysisTaskMixedHarmonics.cxx:207 AliAnalysisTaskMixedHarmonics.cxx:208 AliAnalysisTaskMixedHarmonics.cxx:209 AliAnalysisTaskMixedHarmonics.cxx:210 AliAnalysisTaskMixedHarmonics.cxx:211 AliAnalysisTaskMixedHarmonics.cxx:212 AliAnalysisTaskMixedHarmonics.cxx:213 AliAnalysisTaskMixedHarmonics.cxx:214 AliAnalysisTaskMixedHarmonics.cxx:215 AliAnalysisTaskMixedHarmonics.cxx:216 AliAnalysisTaskMixedHarmonics.cxx:217