]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/macros/AddTaskJetCorePP.C
fix bug from last commit - Marta V.
[u/mrichter/AliRoot.git] / PWGJE / macros / AddTaskJetCorePP.C
CommitLineData
ad869500 1
2
3AliAnalysisTaskJetCorePP* AddTaskJetCorePP(
4 const Char_t* branchPrefix="clustersAOD",
255cb71c 5 const Char_t* jetAlgo="ANTIKT",
ad869500 6 Float_t jetParameterR = 0.4, //jet R
ad869500 7 UInt_t trkFilterMask = 272,
8 Float_t trackLowPtCut = 0.15,
255cb71c 9 const Char_t* jetbgAlgo="KT", //background jet algo
ad869500 10 Int_t collisionSystem = 0, //pp=0, pPb=1
11 Int_t offlineTriggerMask=AliVEvent::kMB, //MinBias=0
12 Int_t minContribVtx = 1,
13 Float_t vtxZMin = -10.0,
14 Float_t vtxZMax = 10.0,
15 Float_t centMin = 0.0,
16 Float_t centMax = 100.0,
17 Float_t triggerEtaCut = 0.9,
18 Float_t trackEtaCut = 0.9,
80ac66f6 19 const Char_t* nonStdFile="",
255cb71c 20 const Char_t* mcFullFlag="", // real="", all jets= "MC"
21 const Char_t* mcChargFlag="", // real="", charged jets = "MC2"
8e103a56 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);
255cb71c 45 TString analBranchBg(branchPrefix); // kT bg jets
46 TString analBranchFullMC=""; //full jets MC to be used with charged jets MC
47 TString analBranchChargMC=""; //charged jets
48 TString analBranchBgChargMC=""; //charged jets kt background
49
50
ad869500 51 TString stJetAlgo(jetAlgo);
255cb71c 52 TString stJetBgAlgo(jetbgAlgo);
ad869500 53 stJetAlgo.ToUpper();
255cb71c 54 stJetBgAlgo.ToUpper();
80ac66f6 55
56
255cb71c 57 TString jet="";
58 TString jetbg="";
59 TString otherparams="";
60 jet = jet + "_" + stJetAlgo + Form("%02d",(Int_t) (10*jetParameterR));
61 jetbg = jetbg + "_" + stJetBgAlgo + Form("%02d",(Int_t) (10*jetParameterR));
62
63 otherparams = otherparams + "_B0"; //bg mode
64 otherparams = otherparams + Form("_Filter%05d",(UInt_t) trkFilterMask);
65 otherparams = otherparams + Form("_Cut%05d",(Int_t) (1000*trackLowPtCut));
80ac66f6 66
ad869500 67 if(analBranch.BeginsWith("clustersAOD"))
255cb71c 68 otherparams = otherparams + Form("_Skip%02d",0);
80ac66f6 69
255cb71c 70 analBranch = analBranch + jet + otherparams; //antikt jet
71 analBranchBg = analBranchBg + jetbg + otherparams; //kt bg jet
72
ad869500 73 //clustersAOD_ANTIKT04_B0_Filter00272_Cut00150_Skip00
74 //Skip00 none of the most energetic jets is ommited
75 //Cut00150 pT min cut on track
76 //Filter00272
80ac66f6 77
255cb71c 78 TString mcFullSuffix(mcFullFlag); //MC = all jets
79 TString mcChargSuffix(mcChargFlag); //MC2= charged jets, MC = all jets
80
81 if(mcChargSuffix.Length()>0 && mcChargSuffix=="MC2"){ //charged jets generator level
82 analBranchChargMC = branchPrefix + mcChargSuffix + jet + otherparams;
83 analBranchBgChargMC = branchPrefix + mcChargSuffix + jetbg + otherparams;
84 }
85
86 if(mcFullSuffix.Length()>0 && mcFullSuffix=="MC"){ //full jets generator level
87 analBranchFullMC = branchPrefix + mcFullSuffix + jet + otherparams;
80ac66f6 88 }
89
255cb71c 90
80ac66f6 91
255cb71c 92 AliAnalysisTaskJetCorePP *task = new AliAnalysisTaskJetCorePP(Form("JetCorePP_%s_%s_%d",analBranch.Data(), mcChargSuffix.Data(), offlineTriggerMask));
ad869500 93
94 task->SetBranchName(analBranch.Data());
255cb71c 95 task->SetBranchNameFullMC(analBranchFullMC.Data());
96 task->SetBranchNameChargMC(analBranchChargMC.Data());
97 task->SetBranchNameBg(analBranchBg.Data()); //kt bg jets
98 task->SetBranchNameBgChargMC(analBranchBgChargMC.Data()); //kt bg jets
ad869500 99 task->SetNonStdFile(nonStdFile);
100 task->SetSystem(collisionSystem);
101 task->SetJetR(jetParameterR);
102 task->SetOfflineTrgMask(offlineTriggerMask);
103 task->SetMinContribVtx(minContribVtx);
104 task->SetVtxZMin(vtxZMin);
105 task->SetVtxZMax(vtxZMax);
106 task->SetFilterMask(trkFilterMask);
107 task->SetCentMin(centMin);
108 task->SetCentMax(centMax);
109 task->SetJetEtaMin(jetEtaMin);
110 task->SetJetEtaMax(jetEtaMax);
111 task->SetTriggerEtaCut(triggerEtaCut);
112 task->SetTrackEtaCut(trackEtaCut);
113 task->SetTrackLowPtCut(trackLowPtCut);
8e103a56 114 task->SetTriggerType(triggerType);
115 task->SetEventNumberRangeLow(evtRangeLow);
116 task->SetEventNumberRangeHigh(evtRangeHigh);
117 task->SetTriggerPtRangeLow(trigRangeLow);
118 task->SetTriggerPtRangeHigh(trigRangeHigh);
119
120
ad869500 121 task->SetDebugLevel(0); //No debug messages 0
122 mgr->AddTask(task);
8e103a56 123 //E= range of last two decimal numbers in event numbers
124 //Ptt range of the cosidered trigger bin
ad869500 125 AliAnalysisDataContainer *coutputJetCorePP = mgr->CreateContainer(
255cb71c 126 Form("pwgjejetcorepp_%s_%s_%s_%d_T%d_E%d_%d_Ptt%.0f_%.0f",analBranch.Data(),jetbgAlgo,mcChargSuffix.Data(),offlineTriggerMask,triggerType,evtRangeLow,evtRangeHigh,trigRangeLow,trigRangeHigh),
ad869500 127 TList::Class(),
128 AliAnalysisManager::kOutputContainer,
255cb71c 129 Form("%s:PWGJE_jetcorepp_%s_%s_%s_%d_T%d_E%d_%d_Ptt%.0f_%.0f",AliAnalysisManager::GetCommonFileName(),analBranch.Data(),jetbgAlgo,mcChargSuffix.Data(),offlineTriggerMask,triggerType,evtRangeLow,evtRangeHigh,trigRangeLow,trigRangeHigh)
ad869500 130 );
131
132 mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer());
133 mgr->ConnectOutput(task, 0, mgr->GetCommonOutputContainer());
134 mgr->ConnectOutput(task, 1, coutputJetCorePP);
135
136 return task;
137}