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