]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/macros/AddTaskJetCorePP.C
lhc12g
[u/mrichter/AliRoot.git] / PWGJE / macros / AddTaskJetCorePP.C
CommitLineData
ad869500 1
2
3AliAnalysisTaskJetCorePP* AddTaskJetCorePP(
4 const Char_t* branchPrefix="clustersAOD",
5 const Char_t* jetAlgo="ANTIKT",
6 Float_t jetParameterR = 0.4, //jet R
7 Int_t bgMode = 0,
8 UInt_t trkFilterMask = 272,
9 Float_t trackLowPtCut = 0.15,
10 Int_t skipJet = 0,
11 Int_t collisionSystem = 0, //pp=0, pPb=1
12 Int_t offlineTriggerMask=AliVEvent::kMB, //MinBias=0
13 Int_t minContribVtx = 1,
14 Float_t vtxZMin = -10.0,
15 Float_t vtxZMax = 10.0,
16 Float_t centMin = 0.0,
17 Float_t centMax = 100.0,
18 Float_t triggerEtaCut = 0.9,
19 Float_t trackEtaCut = 0.9,
80ac66f6 20 const Char_t* nonStdFile="",
8e103a56 21 const Char_t* mcflag="", // real="", MC2 = charged jets, MC = all jets
22 Int_t triggerType=0, //0=single incl trigger, 1=leading track, 2=hadron pt>10
23 Int_t evtRangeLow=0, //last digit of range of ESD event number
24 Int_t evtRangeHigh=9, //first digit of range of ESD event number
25 Float_t trigRangeLow=0, //trigger pT low bin boreder works with triggType=0
26 Float_t trigRangeHigh=50 //trigger pT high border works with triggType=0
ad869500 27 ){
28
29 Printf("adding task jet response\n");
30
31 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
32 if(!mgr){
33 ::Error("AddTaskJetCorePP", "No analysis manager to connect to.");
34 return NULL;
35 }
36 if(!mgr->GetInputEventHandler()){
37 ::Error("AddTaskJetCorePP", "This task requires an input event handler.");
38 return NULL;
39 }
40
41 Float_t jetEtaMin = -0.9 + jetParameterR;
42 Float_t jetEtaMax = 0.9 - jetParameterR;
43
44 TString analBranch(branchPrefix);
45 TString stJetAlgo(jetAlgo);
46 stJetAlgo.ToUpper();
80ac66f6 47
48
49 TString tail;
50 tail = tail + "_" + stJetAlgo + Form("%02d",(Int_t) (10*jetParameterR));
51 tail = tail + Form("_B%d",(Int_t) bgMode);
52 tail = tail + Form("_Filter%05d",(UInt_t) trkFilterMask);
53 tail = tail + Form("_Cut%05d",(Int_t) (1000*trackLowPtCut));
54
ad869500 55 if(analBranch.BeginsWith("clustersAOD"))
80ac66f6 56 tail = tail + Form("_Skip%02d",(Int_t) skipJet);
57
58 analBranch = analBranch + tail;
ad869500 59 //clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00
60 //Skip00 none of the most energetic jets is ommited
61 //Cut00150 pT min cut on track
62 //Filter00272
80ac66f6 63
64 TString mcSuffix(mcflag); //MC2= charged jets, MC = all jets
65 TString analBranchMC="";
66 if(mcSuffix.Length()>0 && mcSuffix.Contains("MC")){
67 analBranchMC = branchPrefix + mcSuffix + tail;
68 }
69
70
71 AliAnalysisTaskJetCorePP *task = new AliAnalysisTaskJetCorePP(Form("JetCorePP_%s_%s_%d",analBranch.Data(), mcSuffix.Data(), offlineTriggerMask));
ad869500 72
73 task->SetBranchName(analBranch.Data());
80ac66f6 74 task->SetBranchNameMC(analBranchMC.Data());
ad869500 75 task->SetNonStdFile(nonStdFile);
76 task->SetSystem(collisionSystem);
77 task->SetJetR(jetParameterR);
78 task->SetOfflineTrgMask(offlineTriggerMask);
79 task->SetMinContribVtx(minContribVtx);
80 task->SetVtxZMin(vtxZMin);
81 task->SetVtxZMax(vtxZMax);
82 task->SetFilterMask(trkFilterMask);
83 task->SetCentMin(centMin);
84 task->SetCentMax(centMax);
85 task->SetJetEtaMin(jetEtaMin);
86 task->SetJetEtaMax(jetEtaMax);
87 task->SetTriggerEtaCut(triggerEtaCut);
88 task->SetTrackEtaCut(trackEtaCut);
89 task->SetTrackLowPtCut(trackLowPtCut);
8e103a56 90 task->SetTriggerType(triggerType);
91 task->SetEventNumberRangeLow(evtRangeLow);
92 task->SetEventNumberRangeHigh(evtRangeHigh);
93 task->SetTriggerPtRangeLow(trigRangeLow);
94 task->SetTriggerPtRangeHigh(trigRangeHigh);
95
96
ad869500 97 task->SetDebugLevel(0); //No debug messages 0
98 mgr->AddTask(task);
8e103a56 99 //E= range of last two decimal numbers in event numbers
100 //Ptt range of the cosidered trigger bin
ad869500 101 AliAnalysisDataContainer *coutputJetCorePP = mgr->CreateContainer(
8e103a56 102 Form("pwgjejetcorepp_%s_%s_%d_T%d_E%d_%d_Ptt%.0f_%.0f",analBranch.Data(),mcSuffix.Data(),offlineTriggerMask,triggerType,evtRangeLow,evtRangeHigh,trigRangeLow,trigRangeHigh),
ad869500 103 TList::Class(),
104 AliAnalysisManager::kOutputContainer,
8e103a56 105 Form("%s:PWGJE_jetcorepp_%s_%s_%d_T%d_E%d_%d_Ptt%.0f_%.0f",AliAnalysisManager::GetCommonFileName(),analBranch.Data(),mcSuffix.Data(),offlineTriggerMask,triggerType,evtRangeLow,evtRangeHigh,trigRangeLow,trigRangeHigh)
ad869500 106 );
107
108 mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer());
109 mgr->ConnectOutput(task, 0, mgr->GetCommonOutputContainer());
110 mgr->ConnectOutput(task, 1, coutputJetCorePP);
111
112 return task;
113}