1 AliAnalysisTask *AddTaskPtFlucPbPb(){
2 //get the current analysis manager
3 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
5 Error("AddTask_sheckel_PtFlucPbPb", "No analysis manager found.");
10 // --- Check for MC ---
11 AliMCEventHandler *mcH = static_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler());
14 //============= Set Task Name ===================
15 TString taskName=("AliAnalysisTaskPtFlucPbPb.cxx+");
16 //===============================================
18 gROOT->LoadMacro(taskName.Data());
20 TString taskSO=gSystem->pwd();
22 taskSO+=taskName(0,taskName.First('.'))+"_cxx.so";
23 gProof->Exec(Form("gSystem->Load(\"%s\")",taskSO.Data()),kTRUE);
27 //========= Add task to the ANALYSIS manager =====
28 AliAnalysisTaskPtFlucPbPb *task = new AliAnalysisTaskPtFlucPbPb("sheckelTaskPtFlucPbPb");
31 // --- Set ESD track Cuts ---
33 AliESDtrackCuts *esdTrackCuts = new AliESDtrackCuts("esdTrackCuts"); // My pp track cuts (ITS+TPC)
34 AliESDtrackCuts *esdCuts = new AliESDtrackCuts("esdCuts"); // TPC-only track cuts
36 // -- My pp track cuts (ITS+TPC)
38 esdTrackCuts->SetRequireTPCStandAlone(kFALSE);
39 esdTrackCuts->SetMinNClustersTPC(70);
40 esdTrackCuts->SetMaxChi2PerClusterTPC(4.0);
41 esdTrackCuts->SetAcceptKinkDaughters(kFALSE);
42 esdTrackCuts->SetRequireTPCRefit(kTRUE);
44 esdTrackCuts->SetRequireITSRefit(kTRUE);
45 esdTrackCuts->SetClusterRequirementITS(AliESDtrackCuts::kAny);
47 esdTrackCuts->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01"); // 7*(0.0026+0.0050/pt^1.01)
48 esdTrackCuts->SetMaxDCAToVertexZ(2.);
49 esdTrackCuts->SetDCAToVertex2D(kFALSE);
50 esdTrackCuts->SetRequireSigmaToVertex(kFALSE);
51 // Pt range and acceptance in eta
52 esdTrackCuts->SetPtRange(0.15,2.);
53 esdTrackCuts->SetEtaRange(-0.8,0.8);
56 // -- TPC-only track cuts
58 esdCuts->SetRequireTPCStandAlone(kTRUE);
59 esdCuts->SetMinNClustersTPC(70);
60 esdCuts->SetMaxChi2PerClusterTPC(4.0);
61 esdCuts->SetAcceptKinkDaughters(kFALSE);
62 esdCuts->SetRequireTPCRefit(kFALSE);
64 esdCuts->SetRequireITSRefit(kFALSE);
66 esdCuts->SetMaxDCAToVertexXY(2.4); // cm
67 esdCuts->SetMaxDCAToVertexZ(3.2); // cm
68 esdCuts->SetDCAToVertex2D(kTRUE);
69 esdCuts->SetRequireSigmaToVertex(kFALSE);
70 // Pt range and acceptance in eta
71 esdCuts->SetPtRange(0.15,2.);
72 esdCuts->SetEtaRange(-0.8,0.8);
74 // --- End track Cuts ---
77 // task->SetAliESDtrackCuts(esdTrackCuts);
78 task->SetAliESDtrackCuts(esdCuts);
80 task->SelectCollisionCandidates(AliVEvent::kMB);
81 task->SetMaxVertexZ(10.); // cm
82 task->SetNContributors(1);
83 task->SetUseCentrality(1); // 0=off, 1=VZERO, 2=SPD(not implemented)
85 if (mcH) task->SetMC(kTRUE);
91 //================================================
93 //================================================
96 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
99 AliAnalysisDataContainer *coutput =
100 mgr->CreateContainer("sheckel_PtFlucPbPb", TList::Class(),
101 AliAnalysisManager::kOutputContainer,"sheckel_PtFlucPbPb.root");
103 // connect containers
104 mgr->ConnectInput (task, 0, cinput );
105 mgr->ConnectOutput (task, 1, coutput );