]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ANALYSIS/macros/AddTaskEventplane.C
prettier logs
[u/mrichter/AliRoot.git] / ANALYSIS / macros / AddTaskEventplane.C
CommitLineData
6b7c66c9 1AliEPSelectionTask *AddTaskEventplane(Bool_t useEtaGap=kFALSE,Float_t etaGap=0.,Bool_t posTPCAOD=kFALSE,TString containername = "EPStat",Bool_t doRecenter=kFALSE)
ce7adfe9 2{
3 // Macro to connect an event plane selection task to an existing analysis manager.
7cdafa1e 4
5 if(useEtaGap && posTPCAOD){
6 ::Error("AddTaskEventplane", "eta-splitting of events and one side of TPC not possible at same time!");
7 return NULL;
8 }
9
ce7adfe9 10 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
11 if (!mgr) {
12 ::Error("AddTaskEventplane", "No analysis manager to connect to.");
13 return NULL;
14 }
15 // Check the analysis type using the event handlers connected to the analysis manager.
16 //==============================================================================
17 if (!mgr->GetInputEventHandler()) {
18 ::Error("AddTaskEventplane", "This task requires an input event handler");
19 return NULL;
20 }
21 TString inputDataType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
e51055a0 22
ce7adfe9 23
24 AliEPSelectionTask *eventplaneTask = new AliEPSelectionTask("EventplaneSelection");
9663fa4b 25 eventplaneTask->SelectCollisionCandidates(AliVEvent::kMB | AliVEvent::kSemiCentral | AliVEvent::kCentral);
e51055a0 26 if (inputDataType == "AOD"){
27 eventplaneTask->SetInput("AOD");
28 }
90267ca6 29 eventplaneTask->SetTrackType("TPC");
ce7adfe9 30 eventplaneTask->SetUsePtWeight();
90267ca6 31 eventplaneTask->SetUsePhiWeight();
6b7c66c9 32 if(doRecenter) eventplaneTask->SetUseRecentering();
90267ca6 33 eventplaneTask->SetSaveTrackContribution();
8af85e9f 34 if(useEtaGap){
35 eventplaneTask->SetSubeventsSplitMethod(AliEPSelectionTask::kEta);
36 eventplaneTask->SetEtaGap(etaGap);
37 }
7cdafa1e 38 if(posTPCAOD){
39 eventplaneTask->SetPersonalAODtrackCuts(128,0.,0.8,0.15,20.);
40 eventplaneTask->SetSubeventsSplitMethod(AliEPSelectionTask::kRandom);
41 }
8af85e9f 42
90267ca6 43
ce7adfe9 44 mgr->AddTask(eventplaneTask);
45
46 AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
7cdafa1e 47 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(containername,
ce7adfe9 48 TList::Class(), AliAnalysisManager::kOutputContainer,
49 "EventStat_temp.root");
50
51 mgr->ConnectInput(eventplaneTask, 0, mgr->GetCommonInputContainer());
52 mgr->ConnectOutput(eventplaneTask,1,coutput1);
53
54 return eventplaneTask;
55}