]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/EBYE/macros/AddAliEbyEHigherMomentsEffContTask.C
end-of-line normalization
[u/mrichter/AliRoot.git] / PWGCF / EBYE / macros / AddAliEbyEHigherMomentsEffContTask.C
CommitLineData
5ea3b761 1//=========================================================================//
2// //
3// Analysis AddTask for Net-Charge Higher Moment Analysis //
4// Author: Satyajit Jena || Nirbhay K. Behera //
5// sjena@cern.ch || nbehera@cern.ch //
6// //
7//=========================================================================//
8TString fileNameBase="AnalysisResults.root";
9
10//const char* analysisType = "MCAOD"; // MC, ESD, AOD
11//const char* centralityEstimator = "V0M"; // V0M, TRK, FMD, ....
12
13//_________________________________________________________//
14
15AliAnalysisTask* AddAliEbyEHigherMomentsEffContTask(Double_t vx,
16 Double_t vy,
17 Double_t vz,
18 Double_t dcaxy,
19 Double_t dcaz,
20 Double_t ptl,
21 Double_t pth,
22 Double_t eta,
23 Double_t rapidity,
24 Int_t nclus,
25 Double_t chi2ndf,
26 Int_t AODfilterBit = 128,
27 Bool_t usepid,
28 TString particle,
29 Double_t nsigma,
30 Bool_t CheckCont,
31 Bool_t efficiency,
32 const char* centralityEstimator,
33 Bool_t trigger = kFALSE,
34 const char* analysisType,
35 const char* taskss) {
36
37
38 TString taskname = "HMQA";
39 TString taskname1 = "HM";
40 taskname.Append(taskss);
41 taskname1.Append(taskss);
42
43 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
44 if (!mgr) {
45 ::Error("AddTaskFluctuations", "No analysis manager to connect to.");
46 return NULL;
47 }
48
49 if (!mgr->GetInputEventHandler()) {
50 ::Error("AddTaskFluctuations", "This task requires an input event handler");
51 return NULL;
52 }
53 TString type = mgr->GetInputEventHandler()->GetDataType();
54
55 AliEbyEHigherMomentsEffContTask *taskHM = new AliEbyEHigherMomentsEffContTask("HigherMomentsTask");
56 taskHM->SetVertexDiamond(vx,vy,vz);
57 taskHM->SetKinematicsCutsAOD(ptl,pth,eta);
58 taskHM->SetDCA(dcaxy, dcaz);
59 taskHM->SetCentralityEstimator(centralityEstimator);
60 taskHM->SetAnalysisType(analysisType);
61 taskHM->SetPtRange(ptl,pth);
62 taskHM->SetEta(eta);
63 taskHM->SetTPCNclus(nclus);
64 taskHM->SetChi2PerNDF(chi2ndf);
65 taskHM->SetAODtrackCutBit(AODfilterBit);
66 taskHM->SetUsePid(usepid);
67 taskHM->SetContaMinationCheck(CheckCont);
68 taskHM->SetEfficencyJob(efficiency);
69
70 if( usepid ){
71 taskHM->SetNSigmaCut(nsigma);
72 taskHM->SetRapidityCut(rapidity);
73 if( particle == "Proton" ){ taskHM->SetParticleSpecies(AliPID::kProton); }
74 else if( particle == "Kaon") { taskHM->SetParticleSpecies(AliPID::kKaon); }
75 else if( particle == "Pion" ){ taskHM->SetParticleSpecies(AliPID::kPion); }
76 }
77
78 if(trigger) taskHM->SelectCollisionCandidates(AliVEvent::kMB | AliVEvent::kCentral | AliVEvent::kSemiCentral);
79 else taskHM->SelectCollisionCandidates(AliVEvent::kMB);
80
81 mgr->AddTask(taskHM);
82
83
84 AliAnalysisDataContainer *coutQA = mgr->CreateContainer(taskname.Data(),
85 TList::Class(),
86 AliAnalysisManager::kOutputContainer,fileNameBase.Data());
87 AliAnalysisDataContainer *coutFA = mgr->CreateContainer(taskname1.Data(),
88 TList::Class(),
89 AliAnalysisManager::kOutputContainer,fileNameBase.Data());
90 mgr->ConnectInput(taskHM, 0, mgr->GetCommonInputContainer());
91 mgr->ConnectOutput(taskHM, 1, coutQA);
92 mgr->ConnectOutput(taskHM, 2, coutFA);
93
94 return taskHM;
95}