AliAnalysisTaskKinkResonance *AddTaskKinkResonanceL1520ESD(Short_t lCollidingSystems=0 /*0 = pp, 1 = AA*/)
{
// Creates, configures and attaches to the train a kink resonance task.
// Get the pointer to the existing analysis manager via the static access method.
//==============================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
::Error("AddTaskKinkResonanceL1520ESD", "No analysis manager to connect to.");
return NULL;
}
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
if (!mgr->GetInputEventHandler()) {
::Error("AddTaskKinkResonanceL1520ESD", "This task requires an input event handler");
return NULL;
}
TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
if (type != "ESD") {
::Error("AddTaskKinkResonanceL1520ESD", "This task needs an ESD input handler");
return NULL;
}
if (!mgr->GetMCtruthEventHandler()) {
::Error("AddTaskKinkResonanceL1520ESD", "This task needs an MC handler");
return NULL;
}
// Setup the analysis object
AliResonanceKink *kinkResonanceObjectLESD=new AliResonanceKink();
kinkResonanceObjectLESD->InitOutputHistograms(100,1.4,1.8, 36, -0.9, 0.9, 100, 0.0, 10.0);
kinkResonanceObjectLESD->SetPDGCodes(kProton, kKPlus, AliResonanceKink::kLambda1520);
kinkResonanceObjectLESD->SetAnalysisType("ESD"); // "ESD" or "MC" or "DATA"
kinkResonanceObjectLESD->SetMaxNsigmaToVertex(4.0);
kinkResonanceObjectLESD->SetMaxDCAxy(3.0);
kinkResonanceObjectLESD->SetMaxDCAzaxis(3.0);
kinkResonanceObjectLESD->SetPtTrackCut(0.25);
kinkResonanceObjectLESD->SetMinTPCclusters(50);
kinkResonanceObjectLESD->SetMaxChi2PerTPCcluster(3.5);
kinkResonanceObjectLESD->SetMaxCov0(2.0);
kinkResonanceObjectLESD->SetMaxCov2(2.0);
kinkResonanceObjectLESD->SetMaxCov5(0.5);
kinkResonanceObjectLESD->SetMaxCov9(0.5);
kinkResonanceObjectLESD->SetMaxCov14(2.0);
kinkResonanceObjectLESD->SetMinKinkRadius(120.);
kinkResonanceObjectLESD->SetMaxKinkRadius(220.);
kinkResonanceObjectLESD->SetQtLimits(0.05, 0.5);
kinkResonanceObjectLESD->SetUpperAbsEtaCut(0.9);
// Create and configure the task
AliAnalysisTaskKinkResonance *taskresonanceL1520ESD = new AliAnalysisTaskKinkResonance("TaskResL1520ESDKinkPID");
taskresonanceL1520ESD->SetAnalysisKinkObject(kinkResonanceObjectLESD);
mgr->AddTask(taskresonanceL1520ESD);
// Create ONLY the output containers for the data produced by the task.
// Get and connect other common input/output containers via the manager as below
//==============================================================================
TString outputFileName = AliAnalysisManager::GetCommonFileName();
outputFileName += ":PWG2KINKResonanceL1520ESD";
if (lCollidingSystems) outputFileName += "_AA";
else outputFileName += "_PP";
if (mgr->GetMCtruthEventHandler()) outputFileName += "_MC";
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("KinkResL1520ESD",
TList::Class(),
AliAnalysisManager::kOutputContainer,
outputFileName );
mgr->ConnectInput(taskresonanceL1520ESD, 0, mgr->GetCommonInputContainer());
mgr->ConnectOutput(taskresonanceL1520ESD, 1, coutput1);
return taskresonanceL1520ESD;
}
AddTaskKinkResonanceL1520ESD.C:1 AddTaskKinkResonanceL1520ESD.C:2 AddTaskKinkResonanceL1520ESD.C:3 AddTaskKinkResonanceL1520ESD.C:4 AddTaskKinkResonanceL1520ESD.C:5 AddTaskKinkResonanceL1520ESD.C:6 AddTaskKinkResonanceL1520ESD.C:7 AddTaskKinkResonanceL1520ESD.C:8 AddTaskKinkResonanceL1520ESD.C:9 AddTaskKinkResonanceL1520ESD.C:10 AddTaskKinkResonanceL1520ESD.C:11 AddTaskKinkResonanceL1520ESD.C:12 AddTaskKinkResonanceL1520ESD.C:13 AddTaskKinkResonanceL1520ESD.C:14 AddTaskKinkResonanceL1520ESD.C:15 AddTaskKinkResonanceL1520ESD.C:16 AddTaskKinkResonanceL1520ESD.C:17 AddTaskKinkResonanceL1520ESD.C:18 AddTaskKinkResonanceL1520ESD.C:19 AddTaskKinkResonanceL1520ESD.C:20 AddTaskKinkResonanceL1520ESD.C:21 AddTaskKinkResonanceL1520ESD.C:22 AddTaskKinkResonanceL1520ESD.C:23 AddTaskKinkResonanceL1520ESD.C:24 AddTaskKinkResonanceL1520ESD.C:25 AddTaskKinkResonanceL1520ESD.C:26 AddTaskKinkResonanceL1520ESD.C:27 AddTaskKinkResonanceL1520ESD.C:28 AddTaskKinkResonanceL1520ESD.C:29 AddTaskKinkResonanceL1520ESD.C:30 AddTaskKinkResonanceL1520ESD.C:31 AddTaskKinkResonanceL1520ESD.C:32 AddTaskKinkResonanceL1520ESD.C:33 AddTaskKinkResonanceL1520ESD.C:34 AddTaskKinkResonanceL1520ESD.C:35 AddTaskKinkResonanceL1520ESD.C:36 AddTaskKinkResonanceL1520ESD.C:37 AddTaskKinkResonanceL1520ESD.C:38 AddTaskKinkResonanceL1520ESD.C:39 AddTaskKinkResonanceL1520ESD.C:40 AddTaskKinkResonanceL1520ESD.C:41 AddTaskKinkResonanceL1520ESD.C:42 AddTaskKinkResonanceL1520ESD.C:43 AddTaskKinkResonanceL1520ESD.C:44 AddTaskKinkResonanceL1520ESD.C:45 AddTaskKinkResonanceL1520ESD.C:46 AddTaskKinkResonanceL1520ESD.C:47 AddTaskKinkResonanceL1520ESD.C:48 AddTaskKinkResonanceL1520ESD.C:49 AddTaskKinkResonanceL1520ESD.C:50 AddTaskKinkResonanceL1520ESD.C:51 AddTaskKinkResonanceL1520ESD.C:52 AddTaskKinkResonanceL1520ESD.C:53 AddTaskKinkResonanceL1520ESD.C:54 AddTaskKinkResonanceL1520ESD.C:55 AddTaskKinkResonanceL1520ESD.C:56 AddTaskKinkResonanceL1520ESD.C:57 AddTaskKinkResonanceL1520ESD.C:58 AddTaskKinkResonanceL1520ESD.C:59 AddTaskKinkResonanceL1520ESD.C:60 AddTaskKinkResonanceL1520ESD.C:61 AddTaskKinkResonanceL1520ESD.C:62 AddTaskKinkResonanceL1520ESD.C:63 AddTaskKinkResonanceL1520ESD.C:64 AddTaskKinkResonanceL1520ESD.C:65 AddTaskKinkResonanceL1520ESD.C:66 AddTaskKinkResonanceL1520ESD.C:67 AddTaskKinkResonanceL1520ESD.C:68 AddTaskKinkResonanceL1520ESD.C:69 AddTaskKinkResonanceL1520ESD.C:70 AddTaskKinkResonanceL1520ESD.C:71 AddTaskKinkResonanceL1520ESD.C:72 AddTaskKinkResonanceL1520ESD.C:73