]>
Commit | Line | Data |
---|---|---|
d7afd9ac | 1 | // $Id$ |
2 | ||
3 | AliAnalysisTaskEmcalJetSpectraMECpA* AddTaskEmcalJetSpectraMECpA( | |
4 | const char *outfilename = "AnalysisOutput.root", | |
d7afd9ac | 5 | UInt_t type = AliAnalysisTaskEmcal::kTPC, |
f4cde8da | 6 | const char *nRhosCh = "rhoChEm", |
9e64e697 | 7 | TF1 *sfunc = 0, |
f4cde8da | 8 | const Double_t radius = 0.2, |
d7afd9ac | 9 | const Double_t minPhi = 1.8, |
10 | const Double_t maxPhi = 2.74, | |
11 | const Double_t minEta = -0.3, | |
12 | const Double_t maxEta = 0.3, | |
f4cde8da | 13 | const char* usedTracks = "PicoTracks", |
14 | const char* outClusName = "CaloClustersCorr", | |
15 | const Double_t minTrackPt = 0.15, | |
16 | const Double_t minClusterPt = 0.30 | |
17 | ) | |
d7afd9ac | 18 | { |
19 | // Get the pointer to the existing analysis manager via the static access method. | |
20 | //============================================================================== | |
21 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
22 | if (!mgr) | |
23 | { | |
24 | ::Error("AddTasEmcalJetSpectraMECpA", "No analysis manager to connect to."); | |
25 | return NULL; | |
26 | } | |
27 | ||
28 | // Check the analysis type using the event handlers connected to the analysis manager. | |
29 | //============================================================================== | |
30 | if (!mgr->GetInputEventHandler()) | |
31 | { | |
32 | ::Error("AddTaskEmcalJetSpectraMECpA", "This task requires an input event handler"); | |
33 | return NULL; | |
34 | } | |
35 | ||
f4cde8da | 36 | //Run the jet finder and rho tasks first |
37 | ||
38 | // Some constants for the jet finders | |
39 | const Int_t cKT = 0; | |
40 | const Int_t cANTIKT = 1; | |
41 | const Int_t cFULLJETS = 0; | |
42 | const Int_t cCHARGEDJETS = 1; | |
43 | const Int_t cNEUTRALJETS = 2; | |
f4cde8da | 44 | |
45 | float AreaCut = radius*radius*TMath::Pi(); | |
46 | ||
47 | gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C"); | |
48 | ||
49 | AliEmcalJetTask* jetFinderTaskChBack = AddTaskEmcalJet(usedTracks,"",cKT,radius,cCHARGEDJETS,minTrackPt, minClusterPt); | |
50 | ||
51 | ||
52 | AliEmcalJetTask* jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cANTIKT,radius, cFULLJETS,minTrackPt,minClusterPt); | |
53 | ||
54 | gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskRho.C"); | |
55 | ||
56 | AliAnalysisTaskRho *rhochtask = AddTaskRho(jetFinderTaskChBack->GetName(),usedTracks,outClusName,nRhosCh,0.2,0,0.01,0,sfunc,0,kTRUE,nRhosCh); | |
57 | ||
58 | ||
59 | ||
d7afd9ac | 60 | //------------------------------------------------------- |
61 | // Init the task and do settings | |
62 | //------------------------------------------------------- | |
63 | ||
f4cde8da | 64 | const char *nJets = jetFinderTask->GetName(); |
65 | ||
66 | ||
d7afd9ac | 67 | TString name(Form("SpectraMECpA_%s", nJets)); |
68 | AliAnalysisTaskEmcalJetSpectraMECpA *spectratask = new AliAnalysisTaskEmcalJetSpectraMECpA(name); | |
f4cde8da | 69 | spectratask->SetJetsName(jetFinderTask->GetName()); |
d7afd9ac | 70 | spectratask->SetAnaType(type); |
f4cde8da | 71 | spectratask->SetRhoName(nRhosCh); |
d7afd9ac | 72 | spectratask->SetJetPhiLimits(minPhi,maxPhi); |
73 | spectratask->SetJetEtaLimits(minEta,maxEta); | |
f4cde8da | 74 | spectratask->SetJetAreaCut(AreaCut); |
75 | spectratask->SetTracksName(usedTracks); | |
d7afd9ac | 76 | |
77 | //------------------------------------------------------- | |
78 | // Final settings, pass to manager and set the containers | |
79 | //------------------------------------------------------- | |
80 | ||
81 | mgr->AddTask(spectratask); | |
82 | ||
83 | // Create containers for input/output | |
84 | mgr->ConnectInput (spectratask, 0, mgr->GetCommonInputContainer() ); | |
85 | AliAnalysisDataContainer *cospectra = mgr->CreateContainer(name, | |
86 | TList::Class(), | |
87 | AliAnalysisManager::kOutputContainer, | |
88 | outfilename); | |
89 | mgr->ConnectOutput(spectratask,1,cospectra); | |
90 | ||
91 | return spectratask; | |
92 | } |