1 //=========================================================================//
3 // Analysis AddTask for Net-Charge Higher Moment Analysis //
4 // Author: Satyajit Jena || Nirbhay K. Behera //
5 // sjena@cern.ch || nbehera@cern.ch //
7 //=========================================================================//
9 TString fileNameBase="AnalysisResults.root";
11 // const char* analysisType = "AOD"; // MC, ESD, AOD
12 // const char* centralityEstimator = "V0M"; // V0M, TRK, FMD, ....
14 //_________________________________________________________//
16 AliAnalysisTask* AddAliEbyEHigherMomentsTask(Double_t vx,
26 const char* centralityEstimator,
27 Bool_t trigger = kFALSE,
28 const char* analysisType,
32 TString taskname = "HM";
33 taskname.Append(taskss);
35 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
37 ::Error("AddTaskFluctuations", "No analysis manager to connect to.");
41 if (!mgr->GetInputEventHandler()) {
42 ::Error("AddTaskFluctuations", "This task requires an input event handler");
45 TString type = mgr->GetInputEventHandler()->GetDataType();
47 AliEbyEHigherMomentsTask *taskHM = new AliEbyEHigherMomentsTask("HigherMomentsTask");
49 taskHM->SetVertexDiamond(vx,vy,vz);
50 taskHM->SetKinematicsCutsAOD(ptl,pth,eta);
51 taskHM->SetDCA(dcaxy, dcaz);
53 taskHM->SetCentralityEstimator(centralityEstimator);
54 taskHM->SetAnalysisType(analysisType);
55 taskHM->SetPtRange(ptl,pth);
57 taskHM->SetTPCNclus(nclus);
58 taskHM->SetAODtrackCutBit(AODfilterBit);
59 if(trigger) taskHM->SelectCollisionCandidates(AliVEvent::kMB | AliVEvent::kCentral | AliVEvent::kSemiCentral);
60 else taskHM->SelectCollisionCandidates(AliVEvent::kMB);
64 AliAnalysisDataContainer *coutFA = mgr->CreateContainer(taskname.Data(),
66 AliAnalysisManager::kOutputContainer,
68 mgr->ConnectInput(taskHM, 0, mgr->GetCommonInputContainer());
69 mgr->ConnectOutput(taskHM, 1, coutFA);