]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/macros/AddTaskChargedJetsPA.C
from Ruediger
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskChargedJetsPA.C
CommitLineData
8628b70c 1AliAnalysisTaskChargedJetsPA* AddTaskChargedJetsPA(
2 Double_t jetRadius = 0.4,
3 Int_t trigger = AliVEvent::kINT7,
4 Bool_t isMC = kFALSE,
5 Double_t randomConeR = 0.4,
6 Double_t trackBgrdConeR = 0.6,
7 const char* usedTracks = "PicoTracks",
8 const char* usedClusters = "CaloClustersCorr",
9 Double_t trackEtaWindow = 0.9,
10 Double_t vertexWindow = 10.0,
11 Double_t vertexMaxR = 1.0,
8628b70c 12 Double_t minJetPt = 5.0, // signal jet min pt
13 Double_t dijetLeadingMinPt = 10.0,
14 Double_t dijetMaxAngleDev = 10.0,
15 Int_t numberOfPtHardBins = 0
16)
17{
18 // #### Detect the demanded trigger with its readable name
19 TString triggerName(Form("Trigger_%i", trigger));
20 if (trigger == AliVEvent::kAnyINT)
21 triggerName = "kAnyINT";
22 else if (trigger == AliVEvent::kAny)
23 triggerName = "kAny";
24 else if(trigger == AliVEvent::kINT7)
25 triggerName = "kINT7";
efb9b161 26 else if(trigger == AliVEvent::kMB)
27 triggerName = "kMB";
8628b70c 28 else if(trigger == AliVEvent::kEMC7)
29 triggerName = "kEMC7";
30 else if(trigger == AliVEvent::kEMCEJE)
31 triggerName = "kEMCEJE";
32 else if(trigger == AliVEvent::kEMCEGA)
33 triggerName = "kEMCEGA";
34
35 // #### Define manager and data container names
8628b70c 36 AliAnalysisManager *manager = AliAnalysisManager::GetAnalysisManager();
37 if (!manager) {
38 ::Error("AddTaskChargedJetsPA", "No analysis manager to connect to.");
39 return NULL;
40 }
41 TString myContName("");
42 if(isMC)
7cfa86a3 43 myContName = Form("AnalysisR0%2.0f_%s_MC",jetRadius*100,triggerName.Data());
8628b70c 44 else
7cfa86a3 45 myContName = Form("AnalysisR0%2.0f_%s",jetRadius*100,triggerName.Data());
8628b70c 46
47 // #### Add necessary jet finder tasks
48 gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C");
49 AliEmcalJetTask* jetFinderTask = AddTaskEmcalJet(usedTracks,"",1,jetRadius,1,0.150,0.300);// anti-kt
50 AliEmcalJetTask* jetFinderTaskKT = AddTaskEmcalJet(usedTracks,"",0,jetRadius,1,0.150,0.300); // kt
51
52 // #### Define analysis task
53 AliAnalysisTaskChargedJetsPA *task = NULL;
7cfa86a3 54 contHistos = manager->CreateContainer(myContName.Data(), TList::Class(), AliAnalysisManager::kOutputContainer, Form("%s:ChargedJetsPA", AliAnalysisManager::GetCommonFileName()));
efb9b161 55 task = new AliAnalysisTaskChargedJetsPA(Form("AnalysisPA_%s_%s", jetFinderTask->GetName(), triggerName.Data()), usedTracks, usedClusters, jetFinderTask->GetName(),jetFinderTaskKT->GetName());
8628b70c 56
57 // #### Task preferences
efb9b161 58 task->SetAcceptanceWindows(trackEtaWindow, vertexWindow, vertexMaxR, jetRadius, jetRadius);
8628b70c 59 task->SetSignalJetMinPt(minJetPt);
60 task->SetSignalJetMinArea(0.6*jetRadius*jetRadius*TMath::Pi());
61 task->SetDijetLeadingMinPt(dijetLeadingMinPt);
62 task->SetDijetMaxAngleDeviation(dijetMaxAngleDev);
63 task->SetRandConeRadius(randomConeR);
64 task->SetTrackBackgroundConeRadius(trackBgrdConeR);
65 task->SelectCollisionCandidates(trigger);
66 if(numberOfPtHardBins)
67 task->SetNumberOfPtHardBins(numberOfPtHardBins);
68
69 // #### Add analysis task
70 manager->AddTask(task);
71 manager->ConnectInput(task, 0, manager->GetCommonInputContainer());
72 manager->ConnectOutput(task, 1, contHistos);
73 return task;
74}