//_________________________________________________________//
AliAnalysisTaskEfficiencyBF *AddTaskBalanceEfficiency(
TString centralityEstimator="V0M",
Double_t centrMin=0.,
Double_t centrMax=90.,
Double_t vertexZ=10.,
TString fileNameBase="AnalysisResults"
) {
// Creates a balance function analysis task and adds it to the analysis manager.
// Get the pointer to the existing analysis manager via the static access method.
TString centralityName("");
centralityName+=Form("%s_%.0f-%.0f_%.0f",centralityEstimator.Data(),centrMin,centrMax,vertexZ);
TString outputFileName(fileNameBase);
outputFileName.Append(".root");
//===========================================================================
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
::Error("AddTaskTriggeredBF", "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("AddTaskTriggeredBF", "This task requires an input event handler");
return NULL;
}
TString analysisType = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
if(dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler())) analysisType = "MC";
// Create the task, add it to manager and configure it.
//===========================================================================
AliAnalysisTaskEfficiencyBF *taskEfficiencyBF = new AliAnalysisTaskEfficiencyBF("TaskEfficiencyBF");
// analysis mode
taskEfficiencyBF->SetAnalysisMode("TPC");
// centrality
taskEfficiencyBF->SetCentralityEstimator(centralityEstimator);
taskEfficiencyBF->SetCentralityPercentileRange(centrMin,centrMax);
taskEfficiencyBF->SelectCollisionCandidates(AliVEvent::kMB);
// vertex
taskEfficiencyBF->SetVertexDiamond(.3,.3,vertexZ);
// track cuts
AliESDtrackCuts *cuts = AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
cuts->SetRequireTPCStandAlone(kTRUE); // TPC only cuts!
taskEfficiencyBF->SetAnalysisCutObject(cuts);
//analysis kinematic cuts
taskEfficiencyBF->SetMinPt(0.3);
taskEfficiencyBF->SetMaxPt(1.5);
// taskEfficiencyBF->SetMinEta(-0.8);
//taskEfficiencyBF->SetMaxEta(0.8);
taskEfficiencyBF->SetEtaRange(-0.8,0.8,100,0.0,1.6, 64); //acceptance cuts
taskEfficiencyBF->SetPtRange(0.1, 5.0, 49); //acceptance cuts
taskEfficiencyBF->SetPhiRange(0.0,360.,100, 180., 90); //acceptance cuts
// ADD the task
//===========================================================================
//bf->PrintAnalysisSettings();
mgr->AddTask(taskEfficiencyBF);
// 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 += ":PWGCFEbyE.outputBalanceFunctionEfficiencyAnalysis";
AliAnalysisDataContainer *coutQA = mgr->CreateContainer(Form("listQA_%s",centralityName.Data()), TList::Class(),AliAnalysisManager::kOutputContainer,outputFileName.Data());
AliAnalysisDataContainer *coutEfficiencyBF = mgr->CreateContainer(Form("listEfficiencyBF_%s",centralityName.Data()), TList::Class(),AliAnalysisManager::kOutputContainer,outputFileName.Data());
mgr->ConnectInput(taskEfficiencyBF, 0, mgr->GetCommonInputContainer());
mgr->ConnectOutput(taskEfficiencyBF, 1, coutQA);
mgr->ConnectOutput(taskEfficiencyBF, 2, coutEfficiencyBF);
return taskEfficiencyBF;
}
AddTaskBalanceEfficiency.C:1 AddTaskBalanceEfficiency.C:2 AddTaskBalanceEfficiency.C:3 AddTaskBalanceEfficiency.C:4 AddTaskBalanceEfficiency.C:5 AddTaskBalanceEfficiency.C:6 AddTaskBalanceEfficiency.C:7 AddTaskBalanceEfficiency.C:8 AddTaskBalanceEfficiency.C:9 AddTaskBalanceEfficiency.C:10 AddTaskBalanceEfficiency.C:11 AddTaskBalanceEfficiency.C:12 AddTaskBalanceEfficiency.C:13 AddTaskBalanceEfficiency.C:14 AddTaskBalanceEfficiency.C:15 AddTaskBalanceEfficiency.C:16 AddTaskBalanceEfficiency.C:17 AddTaskBalanceEfficiency.C:18 AddTaskBalanceEfficiency.C:19 AddTaskBalanceEfficiency.C:20 AddTaskBalanceEfficiency.C:21 AddTaskBalanceEfficiency.C:22 AddTaskBalanceEfficiency.C:23 AddTaskBalanceEfficiency.C:24 AddTaskBalanceEfficiency.C:25 AddTaskBalanceEfficiency.C:26 AddTaskBalanceEfficiency.C:27 AddTaskBalanceEfficiency.C:28 AddTaskBalanceEfficiency.C:29 AddTaskBalanceEfficiency.C:30 AddTaskBalanceEfficiency.C:31 AddTaskBalanceEfficiency.C:32 AddTaskBalanceEfficiency.C:33 AddTaskBalanceEfficiency.C:34 AddTaskBalanceEfficiency.C:35 AddTaskBalanceEfficiency.C:36 AddTaskBalanceEfficiency.C:37 AddTaskBalanceEfficiency.C:38 AddTaskBalanceEfficiency.C:39 AddTaskBalanceEfficiency.C:40 AddTaskBalanceEfficiency.C:41 AddTaskBalanceEfficiency.C:42 AddTaskBalanceEfficiency.C:43 AddTaskBalanceEfficiency.C:44 AddTaskBalanceEfficiency.C:45 AddTaskBalanceEfficiency.C:46 AddTaskBalanceEfficiency.C:47 AddTaskBalanceEfficiency.C:48 AddTaskBalanceEfficiency.C:49 AddTaskBalanceEfficiency.C:50 AddTaskBalanceEfficiency.C:51 AddTaskBalanceEfficiency.C:52 AddTaskBalanceEfficiency.C:53 AddTaskBalanceEfficiency.C:54 AddTaskBalanceEfficiency.C:55 AddTaskBalanceEfficiency.C:56 AddTaskBalanceEfficiency.C:57 AddTaskBalanceEfficiency.C:58 AddTaskBalanceEfficiency.C:59 AddTaskBalanceEfficiency.C:60 AddTaskBalanceEfficiency.C:61 AddTaskBalanceEfficiency.C:62 AddTaskBalanceEfficiency.C:63 AddTaskBalanceEfficiency.C:64 AddTaskBalanceEfficiency.C:65 AddTaskBalanceEfficiency.C:66 AddTaskBalanceEfficiency.C:67 AddTaskBalanceEfficiency.C:68 AddTaskBalanceEfficiency.C:69 AddTaskBalanceEfficiency.C:70 AddTaskBalanceEfficiency.C:71 AddTaskBalanceEfficiency.C:72 AddTaskBalanceEfficiency.C:73 AddTaskBalanceEfficiency.C:74 AddTaskBalanceEfficiency.C:75 AddTaskBalanceEfficiency.C:76 AddTaskBalanceEfficiency.C:77 AddTaskBalanceEfficiency.C:78 AddTaskBalanceEfficiency.C:79 AddTaskBalanceEfficiency.C:80 AddTaskBalanceEfficiency.C:81 AddTaskBalanceEfficiency.C:82 AddTaskBalanceEfficiency.C:83 AddTaskBalanceEfficiency.C:84 AddTaskBalanceEfficiency.C:85 AddTaskBalanceEfficiency.C:86