AliAnalysisTaskCompareAODTrackCuts* AddTaskCompareAODTrackCuts_DiHadronPIDEff(
Double_t MinCentrality = 5.,
Double_t MaxCentrality = 0.,
const char* CentralityEstimator = "V0M",
Double_t maxVertexZ = 7.,
Double_t maxEta = 0.8,
Double_t minAssociatedPt = 0.2,
Double_t maxAssociatedPt = 5.0,
Double_t minTriggerPt = 5.,
Double_t maxTriggerPt = 10.,
Bool_t requestAllSingleTrackHistos = kTRUE,
Int_t FilterMaskTrigger = 7,
Int_t FilterMaskAssociated = 10,
Bool_t isPbPb = kTRUE,
Bool_t isMC = kTRUE,
Int_t DebugLevel = 0,
const char* outputFileName = 0,
const char* containerName = "DiHadronPIDEff",
const char* folderName = "PWGCF_DiHadronPID")
{
// Get a pointer to the analysis manager.
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
cout<<"AddTaskDiHadronPID.C -> No analysis manager found."<<endl;
return 0x0;
}
// Creating the analysis task.
AliAnalysisTaskCompareAODTrackCuts* EfficiencyTask = new AliAnalysisTaskCompareAODTrackCuts(containerName);
EfficiencyTask->SetVerbose(kFALSE);
EfficiencyTask->SetMC(isMC);
EfficiencyTask->SetCalculateTOFMismatch(kTRUE);
// Configure and add Event Cuts.
AliAODEventCutsDiHadronPID* eventcuts = new AliAODEventCutsDiHadronPID("EventCuts");
eventcuts->SetTrigger(AliVEvent::kMB);
eventcuts->SetCentrality(MaxCentrality, MinCentrality);
eventcuts->SetMaxVertexZ(maxVertexZ);
eventcuts->SetCentralityEstimator(CentralityEstimator);
eventcuts->SetIsPbPb(isPbPb);
eventcuts->SetDebugLevel(DebugLevel);
EfficiencyTask->SetEventCuts(eventcuts);
// Configure and add track cuts for trigger.
AliAODTrackCutsDiHadronPID* triggercuts = new AliAODTrackCutsDiHadronPID("TrackCutsTrigger");
triggercuts->SetIsMC(isMC);
triggercuts->SetFilterMask(FilterMaskTrigger);
triggercuts->SetPtRange(minTriggerPt,maxTriggerPt);
triggercuts->SetMaxEta(maxEta);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllCharged);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPositive);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegative);
if (requestAllSingleTrackHistos) {
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllPion);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosPion);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegPion);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllKaon);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosKaon);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegKaon);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllProton);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosProton);
triggercuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegProton);
}
triggercuts->SetDebugLevel(DebugLevel);
EfficiencyTask->AddTrackCuts(triggercuts);
// Configure and add track cuts for associateds.
AliAODTrackCutsDiHadronPID* associatedscuts = new AliAODTrackCutsDiHadronPID("TrackCutsAssociated");
associatedscuts->SetIsMC(isMC);
associatedscuts->SetFilterMask(FilterMaskAssociated);
associatedscuts->SetPtRange(minAssociatedPt,maxAssociatedPt);
associatedscuts->SetMaxEta(maxEta);
ULong_t associatedflags = (UInt_t)(AliAODTrack::kTOFout)|(UInt_t)(AliAODTrack::kTIME);
associatedscuts->SetDemandFlags(associatedflags);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllCharged);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPositive);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegative);
if (requestAllSingleTrackHistos) {
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllPion);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosPion);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegPion);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllKaon);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosKaon);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegKaon);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kAllProton);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kPosProton);
associatedscuts->RequestQAHistos(AliAODTrackCutsDiHadronPID::kNegProton);
}
associatedscuts->SetDebugLevel(DebugLevel);
EfficiencyTask->AddTrackCuts(associatedscuts);
// Add the task.
mgr->AddTask(EfficiencyTask);
// Data containers.
AliAnalysisDataContainer* cinput = mgr->GetCommonInputContainer();
mgr->ConnectInput(EfficiencyTask, 0, cinput);
if (!outputFileName) {outputFileName = AliAnalysisManager::GetCommonFileName();}
AliAnalysisDataContainer* coutput1 = mgr->CreateContainer(containerName, TList::Class(),
AliAnalysisManager::kOutputContainer,Form("%s:%s", outputFileName, folderName));
mgr->ConnectOutput(EfficiencyTask,1,coutput1);
return EfficiencyTask;
}
AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:1 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:2 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:3 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:4 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:5 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:6 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:7 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:8 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:9 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:10 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:11 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:12 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:13 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:14 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:15 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:16 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:17 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:18 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:19 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:20 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:21 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:22 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:23 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:24 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:25 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:26 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:27 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:28 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:29 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:30 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:31 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:32 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:33 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:34 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:35 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:36 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:37 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:38 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:39 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:40 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:41 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:42 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:43 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:44 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:45 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:46 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:47 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:48 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:49 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:50 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:51 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:52 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:53 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:54 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:55 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:56 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:57 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:58 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:59 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:60 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:61 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:62 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:63 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:64 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:65 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:66 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:67 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:68 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:69 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:70 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:71 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:72 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:73 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:74 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:75 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:76 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:77 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:78 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:79 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:80 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:81 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:82 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:83 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:84 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:85 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:86 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:87 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:88 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:89 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:90 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:91 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:92 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:93 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:94 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:95 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:96 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:97 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:98 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:99 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:100 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:101 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:102 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:103 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:104 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:105 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:106 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:107 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:108 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:109 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:110 AddTaskCompareAODTrackCuts_DiHadronPIDEff.C:111