]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/STRANGENESS/Cascades/macros/AddTaskCheckPerformanceCascadepp276.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / STRANGENESS / Cascades / macros / AddTaskCheckPerformanceCascadepp276.C
CommitLineData
df984074 1AliAnalysisTaskCheckPerformanceCascadepp276 *AddTaskCheckPerformanceCascadepp276( TString collidingSystem = "pp",
2 Int_t minnTPCcls = 70,
ed45f693 3 Float_t vtxlim = 10.,
93900229 4 Float_t vtxlimmin = 0.,
5 Bool_t fwithsdd = kFALSE,
ed45f693 6 Bool_t kextrasel = kFALSE,
7 Bool_t kacccut = kFALSE,
8 Bool_t krelaunchvertexers = kFALSE,
93900229 9 Bool_t ksddonselection = kFALSE,
74457772 10 Float_t minptondaughtertracks = 0.0,
11 Float_t etacutondaughtertracks = 0.8) {
12
13 // Creates, configures and attaches to the train a cascades check task.
ed45f693 14 // Get the pointer to the existing analysis manager via the static access method.
15 //==============================================================================
16 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
17 if (!mgr) {
18 ::Error("AddTaskCheckPerformanceCascadepp276", "No analysis manager to connect to.");
19 return NULL;
20 }
21
22 // Check the analysis type using the event handlers connected to the analysis manager.
23 //==============================================================================
24 if (!mgr->GetInputEventHandler()) {
25 ::Error("AddTaskCheckPerformanceCascadepp276", "This task requires an input event handler");
26 return NULL;
27 }
28 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
29
30 // Create and configure the task
74457772 31 //==============================================================================
32 TString tasknameperf = "TaskCheckPerformanceCascadepp276";
33 tasknameperf += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
34 AliAnalysisTaskCheckPerformanceCascadepp276 *taskCheckPerfCascadepp276 = new AliAnalysisTaskCheckPerformanceCascadepp276(tasknameperf);
35 taskCheckPerfCascadepp276->SetAnalysisType (type); // "ESD" or "AOD"
df984074 36 taskCheckPerfCascadepp276->SetCollidingSystem (collidingSystem); // choose the collidiond system to run on: "pp" and "pPb"
74457772 37 taskCheckPerfCascadepp276->SetRelaunchV0CascVertexers (krelaunchvertexers); // choose if reconstruct the vertex of V0 in the cascades
38 taskCheckPerfCascadepp276->SetSDDSelection (fwithsdd); // choose if apply SDD event selection
39 taskCheckPerfCascadepp276->SetQualityCutZprimVtxPos (kTRUE); // choose if apply Z vtx PV position event selection
4201ed2a 40 taskCheckPerfCascadepp276->SetRejectEventPileUp (kTRUE); // choose if apply no Pileup event selection
74457772 41 taskCheckPerfCascadepp276->SetQualityCutNoTPConlyPrimVtx (kTRUE); // choose if apply no TPC only event selection
42 taskCheckPerfCascadepp276->SetQualityCutTPCrefit (kTRUE); // choose if apply TPC refit on daughter tracks
43 taskCheckPerfCascadepp276->SetQualityCutnTPCcls (kTRUE); // choose if apply n TPC cluster selection on daughter tracks
44 taskCheckPerfCascadepp276->SetWithSDDOn (ksddonselection); // which SDD selection do you want apply? [if kTRUE select SDDon events]
45 taskCheckPerfCascadepp276->SetQualityCutMinnTPCcls (minnTPCcls); // which value do you want apply for the minTPCcls cut?
46 taskCheckPerfCascadepp276->SetExtraSelections (kextrasel); // choose if apply the extra selection of cascade reco.
47 taskCheckPerfCascadepp276->SetApplyAccCut (kacccut); // choose if apply acceptance cut
48 taskCheckPerfCascadepp276->SetVertexRange (vtxlim); // which higher value do you want apply for vtx Z cut?
49 taskCheckPerfCascadepp276->SetVertexRangeMin (vtxlimmin); // which lower value do you want apply for vtx Z cut?
50 taskCheckPerfCascadepp276->SetMinptCutOnDaughterTracks (minptondaughtertracks); // which value do you want apply for cut on min pt daughter track?
51 taskCheckPerfCascadepp276->SetEtaCutOnDaughterTracks (etacutondaughtertracks); // which value do you want apply for cut on eta daughter track?
52
ed45f693 53 mgr->AddTask(taskCheckPerfCascadepp276);
54
55 // Create ONLY the output containers for the data produced by the task.
56 // Get and connect other common input/output containers via the manager as below
57 //==============================================================================
74457772 58 // Directory name
59 TString outputFileNamePerf = Form("%s:PWGLFStrangeness.outputCheckPerformanceCascadepp276", AliAnalysisManager::GetCommonFileName());
60 // Objects name
89a90483 61 TString outputnameperf0 = "clistCascPerf";
62 TString outputnameperf1 = "cfcontPIDAsXiM";
63 TString outputnameperf2 = "cfcontPIDAsXiP";
64 TString outputnameperf3 = "cfcontPIDAsOmegaM";
65 TString outputnameperf4 = "cfcontPIDAsOmegaP";
66 TString outputnameperf5 = "cfcontAsCuts";
67 outputnameperf0 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
68 outputnameperf1 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
69 outputnameperf2 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
70 outputnameperf3 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
71 outputnameperf4 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
72 outputnameperf5 += Form("_minnTPCcls%i_vtxlim%.1f-%.1f_minptdghtrk%.1f_etacutdghtrk%.1f",minnTPCcls,vtxlim,vtxlimmin,minptondaughtertracks,etacutondaughtertracks);
73
74
74457772 75 //Save objects into the train common file
89a90483 76 AliAnalysisDataContainer *coutputperf1 = mgr->CreateContainer(outputnameperf0,
74457772 77 TList::Class(),
78 AliAnalysisManager::kOutputContainer,
79 outputFileNamePerf );
89a90483 80 AliAnalysisDataContainer *coutputperf2 = mgr->CreateContainer(outputnameperf1,
74457772 81 AliCFContainer::Class(),
82 AliAnalysisManager::kOutputContainer,
83 outputFileNamePerf );
89a90483 84 AliAnalysisDataContainer *coutputperf3 = mgr->CreateContainer(outputnameperf2,
74457772 85 AliCFContainer::Class(),
86 AliAnalysisManager::kOutputContainer,
87 outputFileNamePerf );
89a90483 88 AliAnalysisDataContainer *coutputperf4 = mgr->CreateContainer(outputnameperf3,
74457772 89 AliCFContainer::Class(),
90 AliAnalysisManager::kOutputContainer,
91 outputFileNamePerf );
89a90483 92 AliAnalysisDataContainer *coutputperf5 = mgr->CreateContainer(outputnameperf4,
74457772 93 AliCFContainer::Class(),
94 AliAnalysisManager::kOutputContainer,
95 outputFileNamePerf );
89a90483 96 AliAnalysisDataContainer *coutputperf6 = mgr->CreateContainer(outputnameperf5,
74457772 97 AliCFContainer::Class(),
98 AliAnalysisManager::kOutputContainer,
99 outputFileNamePerf );
ed45f693 100
101 mgr->ConnectInput( taskCheckPerfCascadepp276, 0, mgr->GetCommonInputContainer());
74457772 102 mgr->ConnectOutput(taskCheckPerfCascadepp276, 1, coutputperf1);
103 mgr->ConnectOutput(taskCheckPerfCascadepp276, 2, coutputperf2);
104 mgr->ConnectOutput(taskCheckPerfCascadepp276, 3, coutputperf3);
105 mgr->ConnectOutput(taskCheckPerfCascadepp276, 4, coutputperf4);
106 mgr->ConnectOutput(taskCheckPerfCascadepp276, 5, coutputperf5);
107 mgr->ConnectOutput(taskCheckPerfCascadepp276, 6, coutputperf6);
ed45f693 108
109 return taskCheckPerfCascadepp276;
110}