-AliAnalysisTaskFullpAJets *AddTaskFullpAJets(const Double_t jetRadius=0.4)
+AliAnalysisTaskFullpAJets *AddTaskFullpAJets(const char* proj_name, const Double_t jetRadius=0.4, Bool_t IsMC=kFALSE, const char* track_name="PicoTracks", const char* clus_name="caloClusters", const char* corrclus_name="caloClustersCorr", const char* mcpart_name="MCParticles", const char* Centrality_name="V0A", Double_t scaleFactor = 1.28, Double_t nefJetCut = 1.0, Bool_t doNEF=kFALSE, Bool_t signalTrackBias=kFALSE, Bool_t doTrackQA=kFALSE, Bool_t doClusterQA=kFALSE, Int_t calcRhoJet=0, Bool_t doNEFSignalOnly=kTRUE, Bool_t doVertexRCut=kTRUE, Bool_t isMCParticleLevel=kFALSE)
{
- const char *usedTracks = "PicoTracks";
- const char *usedClusters = "caloClusters";
- const char *outClusName = "caloClustersCorr";
- const char *centEst = "V0A";
+ char *usedTracks = track_name;
+ char *usedClusters = clus_name;
+ char *outClusName = corrclus_name;
+ char *usedMCParticles = mcpart_name;
+ char *centEst = Centrality_name;
+ char *projName = proj_name;
const Double_t minTrackPt=0.15;
const Double_t minClusterPt=0.30;
- Double_t scaleFactor=1.45; // Obtained from previous runs...
+ const Double_t minMCPartPt=0.00;
+ Double_t scaleFac = scaleFactor; // Obtained from previous runs...
+ Double_t NEFSignalJetCut = nefJetCut; // Require signal jet to not exceed a Neutral Energy Fraction of this setting...
// Some constants for the jet finders
const Int_t cKT=0;
}
TString taskName = Form("AnalysisFullpAJetsR%d",drjet);
- TString listName = Form("ListR%d",drjet);
+ TString listName = Form("List%sR%d",projName,drjet);
TString fileName = Form("%s:FullpAJets", AliAnalysisManager::GetCommonFileName());
// Jet finders (RECONSTRUCTED DATA)
gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C");
- // ########## CHARGED JETS ##########
- jetFinderTask = AddTaskEmcalJet(usedTracks,"",cANTIKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt);
+ // Add User Task
+ AliAnalysisTaskFullpAJets *task = new AliAnalysisTaskFullpAJets(taskName);
+
+ // Used for physics selection
+ task->SetUseAliAnaUtils(kTRUE);
+ task->DoVertexRCut(doVertexRCut);
- jetFinderTask = AddTaskEmcalJet(usedTracks,"",cKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt);
+ if (IsMC == kTRUE)
+ {
+ task->SetTrackName(usedMCParticles);
+ task->SetClusterName("");
+ task->SetTrackPtCut(minMCPartPt);
+ task->SetClusterPtCut(minMCPartPt);
+ task->SetMCParticleLevel(isMCParticleLevel);
+
+ // ########## CHARGED JETS ##########
+ jetFinderTask = AddTaskEmcalJet(usedMCParticles,"",cKT,jetRadius,cCHARGEDJETS,minMCPartPt,minMCPartPt,0.01,1,"Jet");
+ task->SetkTChargedJetName(jetFinderTask->GetName());
+
+ jetFinderTask = AddTaskEmcalJet(usedMCParticles,"",cANTIKT,jetRadius,cCHARGEDJETS,minMCPartPt,minMCPartPt,0.01,1,"Jet");
+ task->SetAkTChargedJetName(jetFinderTask->GetName());
+
+ // ########## FULL JETS ##########
+ // No Full jets or clusters are used if run over MCParticles!
+ task->SetkTFullJetName("");
+ task->SetAkTFullJetName("");
+ }
+ else
+ {
+ task->SetTrackName(usedTracks);
+ task->SetClusterName(outClusName);
+ task->SetTrackPtCut(minTrackPt);
+ task->SetClusterPtCut(minClusterPt);
- // ########## FULL JETS ##########
- // last two settings are for min pt tracks/clusters
- // anti-kT
- jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cANTIKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt);
+ // ########## CHARGED JETS ##########
+ jetFinderTask = AddTaskEmcalJet(usedTracks,"",cKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt,0.01,1,"Jet");
+ task->SetkTChargedJetName(jetFinderTask->GetName());
+
+ jetFinderTask = AddTaskEmcalJet(usedTracks,"",cANTIKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt,0.01,1,"Jet");
+ task->SetAkTChargedJetName(jetFinderTask->GetName());
+
+ // ########## FULL JETS ##########
+ jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt,0.01,1,"Jet");
+ task->SetkTFullJetName(jetFinderTask->GetName());
- // kT
- jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt);
+ jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cANTIKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt,0.01,1,"Jet");
+ task->SetAkTFullJetName(jetFinderTask->GetName());
+ }
- // Add User Task
- AliAnalysisTaskFullpAJets *task = new AliAnalysisTaskFullpAJets(taskName);
task->SetRjet(drjet);
task->SetCentralityTag(centEst);
- task->SetScaleFactor(scaleFactor);
- task->SetTrackPtCut(minTrackPt);
- task->SetClusterPtCut(minClusterPt);
+ task->SetScaleFactor(scaleFac);
task->SelectCollisionCandidates(AliVEvent::kINT7);
+ task->SetNColl(7);
+ task->SetNEFSignalJetCut(NEFSignalJetCut);
+ task->DoNEFCalibration(doNEF);
+ task->DoNEFSignalOnly(doNEFSignalOnly);
+ task->SetJetChargeBias(signalTrackBias);
+ task->DoTrackQA(doTrackQA);
+ task->DoClusterQA(doClusterQA);
+ task->CalculateRhoJet(calcRhoJet);
mgr->AddTask(task);
mgr->ConnectOutput(task,1,coutput);
return task;
-
}