]>
Commit | Line | Data |
---|---|---|
ad869500 | 1 | |
2 | ||
3 | AliAnalysisTaskJetCorePP* 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 | } |