TString trigClass = "",
TString kEmcalTriggers = "",
TString kPeriod = "LHC11h",
- Int_t recombScheme = 0
+ Int_t recombScheme = 0,
+ TString tag1 = "Jet",
+ TString tag2 = ""
) {
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
Error("AddTaskEmcalJetTagger","No analysis manager found.");
return 0;
}
- Bool_t ismc=kFALSE;
- ismc = (mgr->GetMCtruthEventHandler())?kTRUE:kFALSE;
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
// #### Add necessary jet finder tasks
gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C");
+ if(tag2.IsNull()) tag2=tag1;
+
AliEmcalJetTask* jetFinderTaskBase = 0x0;
if (strcmp(type,"TPC")==0)
- jetFinderTaskBase = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme);
+ jetFinderTaskBase = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme,tag1.Data(),1.);
else if (strcmp(type,"EMCAL")==0)
- jetFinderTaskBase = AddTaskEmcalJet(kTracksName, kClusName, kANTIKT, R, kFULLJETS, ptminTrack, etminClus,0.005,recombScheme);
+ jetFinderTaskBase = AddTaskEmcalJet(kTracksName, kClusName, kANTIKT, R, kFULLJETS, ptminTrack, etminClus,0.005,recombScheme,tag1.Data(),1.);
+ jetFinderTaskBase->SelectCollisionCandidates(AliVEvent::kAny);
- AliEmcalJetTask* jetFinderTaskTag = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTag, etminClus,0.005,recombScheme);
+ AliEmcalJetTask* jetFinderTaskTag = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTag, etminClus,0.005,recombScheme,tag2.Data(),1.);
+ jetFinderTaskTag->SelectCollisionCandidates(AliVEvent::kAny);
+ if(tag1.EqualTo("JetPythia"))
+ jetFinderTaskBase->SelectConstituents(TObject::kBitMask, 0);
+ if(tag2.EqualTo("JetPythia"))
+ jetFinderTaskTag->SelectConstituents(TObject::kBitMask, 0);
+
TString strJetsBase = jetFinderTaskBase->GetName();
TString strJetsTag = jetFinderTaskTag->GetName();
TString rhoNameBase = "";
TString rhoNameTag = "";
if(rhoType==1) {
- rhoTaskBase = AttachRhoTaskTagger(kPeriod,kTracksName,kClusName,R,ptminTrack,etminClus,recombScheme);
+ rhoTaskBase = AttachRhoTaskTagger(kPeriod,kTracksName,kClusName,R,ptminTrack,etminClus,recombScheme,tag1);
if(rhoTaskBase) {
rhoTaskBase->SetCentralityEstimator(CentEst);
rhoTaskBase->SelectCollisionCandidates(AliVEvent::kAny);
rhoNameBase = rhoTaskBase->GetOutRhoScaledName();
}
if(rhoTaskTag) {
- rhoTaskTag = AttachRhoTaskTagger(kPeriod,kTracksName,kClusName,R,ptminTag,0.);
+ rhoTaskTag = AttachRhoTaskTagger(kPeriod,kTracksName,kClusName,R,ptminTag,0.,recombScheme,tag2);
rhoTaskTag->SetCentralityEstimator(CentEst);
rhoTaskTag->SelectCollisionCandidates(AliVEvent::kAny);
rhoNameTag = rhoTaskTag->GetOutRhoName();
Error("AddTaskEmcalJetTagger","No analysis manager found.");
return 0;
}
- Bool_t ismc=kFALSE;
- ismc = (mgr->GetMCtruthEventHandler())?kTRUE:kFALSE;
// Check the analysis type using the event handlers connected to the analysis manager.
//==============================================================================
jetContBase->SetRhoName(nrhoBase);
jetContBase->ConnectParticleContainer(trackCont);
jetContBase->ConnectClusterContainer(clusterCont);
- jetContBase->SetZLeadingCut(0.98,0.98);
}
AliJetContainer *jetContTag = task->AddJetContainer(njetsTag,"TPC",R);
jetContTag->ConnectParticleContainer(trackCont);
jetContTag->ConnectClusterContainer(clusterCont);
}
-
for(Int_t i=0; i<2; i++) {
task->SetPercAreaCut(0.6, i);
}
-
task->SetCaloTriggerPatchInfoName(kEmcalTriggers.Data());
-
task->SetCentralityEstimator(CentEst);
-
task->SelectCollisionCandidates(pSel);
-
task->SetUseAliAnaUtils(kFALSE);
mgr->AddTask(task);
mgr->ConnectOutput(task,1,coutput1);
return task;
-
}
-
+//Attach rho task
AliAnalysisTaskRhoBase *AttachRhoTaskTagger(TString kPeriod = "LHC13b",
TString kTracksName = "PicoTracks",
TString kClusName = "caloClustersCorr",
Double_t R = 0.4,
Double_t ptminTrack = 0.15,
Double_t etminClus = 0.3,
- Int_t recombScheme = 0
+ Int_t recombScheme = 0,
+ TString tag = "Jet"
) {
AliAnalysisTaskRhoBase *rhoTaskBase;
kPeriod.ToLower();
// Add kt jet finder and rho task in case we want background subtraction
+ gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C");
AliEmcalJetTask *jetFinderKt;
AliEmcalJetTask *jetFinderAKt;
- jetFinderKt = AddTaskEmcalJet(kTracksName, "", kKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme);
- jetFinderAKt = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme);
-
+ jetFinderAKt = AddTaskEmcalJet(kTracksName, "", kANTIKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme,tag.Data(),1.);
+ jetFinderAKt->SelectCollisionCandidates(AliVEvent::kAny);
if(kPeriod.EqualTo("lhc13b") || kPeriod.EqualTo("lhc13c") || kPeriod.EqualTo("lhc13d") || kPeriod.EqualTo("lhc13e") || kPeriod.EqualTo("lhc13f")) {
-
-
- jetFinderKt->SetMinJetPt(0.);
+ jetFinderKt = AddTaskEmcalJet(kTracksName, "", kKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme,tag.Data(),0.);
gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskRhoSparse.C");
TF1 *fScale = new TF1("fScale","1.42",0.,100.); //scale factor for pPb
kTRUE
);
rhoTaskSparse->SetUseAliAnaUtils(kTRUE);
-
rhoTaskBase = dynamic_cast<AliAnalysisTaskRhoBase*>rhoTaskSparse;
}
else if(kPeriod.EqualTo("lhc10h") || kPeriod.EqualTo("lhc11h") ) {
+ jetFinderKt = AddTaskEmcalJet(kTracksName, "", kKT, R, kCHARGEDJETS, ptminTrack, etminClus,0.005,recombScheme,tag.Data(),0.1);
gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskRho.C");
-
TF1* sfunc = new TF1("sfunc","[0]*x*x+[1]*x+[2]",-1,100);
sfunc->SetParameter(2,1.76458);
sfunc->SetParameter(1,-0.0111656);
sfunc->SetParameter(0,0.000107296);
- TString rhoname = Form("RhoR%03dptmin%3.0f%s",(int)(100*R),ptminTrack*1000.0,kTracksName.Data());
+ TString rhoname = Form("%sRhoR%03dptmin%3.0f%s",tag.Data(),(int)(100*R),ptminTrack*1000.0,kTracksName.Data());
+ Printf("rhoname: %s",rhoname.Data());
AliAnalysisTaskRho *rhoTask = AddTaskRho(
jetFinderKt->GetName(),
kTracksName,
rhoTask->SetHistoBins(100,0,250);
rhoTaskBase = dynamic_cast<AliAnalysisTaskRhoBase*>rhoTask;
-
+ }
+ jetFinderKt->SelectCollisionCandidates(AliVEvent::kAny);
+ if(tag.EqualTo("JetPythia")) {
+ jetFinderKt->SelectConstituents(TObject::kBitMask, 0);
+ jetFinderAKt->SelectConstituents(TObject::kBitMask, 0);
}
- return rhoTaskBase;
+ return rhoTaskBase;
}