const char *nclusters1 = "CaloClusters",
const char *njets1 = "Jets",
const char *nrho1 = "Rho",
+ Double_t jetradius1 = 0.2,
const char *ntracks2 = "MCParticles",
const char *nclusters2 = "",
const char *njets2 = "MCJets",
const char *nrho2 = "",
- Double_t jetradius = 0.2,
+ Double_t jetradius2 = 0.2,
Double_t jetptcut = 1,
Double_t jetareacut = 0.557,
- Double_t jetBiasTrack = 5,
- Double_t jetBiasClus = 5,
+ Double_t jetBias = 5,
+ Int_t biasType = 0, // 0 = charged, 1 = neutral, 2 = both
UInt_t matching = AliJetResponseMaker::kGeometrical,
Double_t maxDistance1 = 0.25,
Double_t maxDistance2 = 0.25,
- UInt_t type = AliAnalysisTaskEmcal::kTPC,
+ const char *cutType = "TPC",
Int_t ptHardBin = -999,
+ Double_t minCent = -999,
+ Double_t maxCent = -999,
const char *taskname = "AliJetResponseMaker",
Bool_t biggerMatrix = kFALSE,
- AliJetResponseMaker* address = 0
+ AliJetResponseMaker* address = 0,
+ Double_t nefmincut = -10,
+ Double_t nefmaxcut = 10,
+ Int_t jetTagging = 0
)
{
// Get the pointer to the existing analysis manager via the static access method.
// Init the task and do settings
//-------------------------------------------------------
- TString name(Form("%s_%s_%s_Track%d_Clus%d_",taskname,njets1,njets2,(Int_t)floor(jetBiasTrack),(Int_t)floor(jetBiasClus)));
- if (type == AliAnalysisTaskEmcal::kTPC)
- name += "TPC";
- else if (type == AliAnalysisTaskEmcal::kEMCAL)
- name += "EMCAL";
- else if (type == AliAnalysisTaskEmcal::kUser)
- name += "USER";
- if (ptHardBin != -999) {
- name += "_PtHard";
- name += ptHardBin;
- }
+ TString name(Form("%s_%s_%s_Bias%d_BiasType%d_%s",taskname,njets1,njets2,(Int_t)floor(jetBias),biasType,cutType));
+
+ if (minCent != -999 && maxCent != -999)
+ name += Form("_Cent%d_%d", (Int_t)floor(minCent), (Int_t)floor(maxCent));
+ if (ptHardBin != -999)
+ name += Form("_PtHard%d", ptHardBin);
+ if (nefmaxcut<1.0)
+ name += Form("_NEF%d", (Int_t)(100*nefmaxcut));
+
AliJetResponseMaker* jetTask = address;
if (jetTask)
new (jetTask) AliJetResponseMaker(name);
else
jetTask = new AliJetResponseMaker(name);
- jetTask->SetAnaType(type);
- jetTask->SetTracksName(ntracks1);
- jetTask->SetClusName(nclusters1);
- jetTask->SetJetsName(njets1);
- jetTask->SetRhoName(nrho1);
- jetTask->SetTracks2Name(ntracks2);
- jetTask->SetClus2Name(nclusters2);
- jetTask->SetJets2Name(njets2);
- jetTask->SetRho2Name(nrho2);
- jetTask->SetJetRadius(jetradius);
- jetTask->SetJetPtCut(jetptcut);
- jetTask->SetPercAreaCut(jetareacut);
- jetTask->SetPtBiasJetTrack(jetBiasTrack);
- jetTask->SetPtBiasJetClus(jetBiasClus);
+ AliParticleContainer *trackCont1 = jetTask->AddParticleContainer(ntracks1);
+ AliClusterContainer *clusCont1 = jetTask->AddClusterContainer(nclusters1);
+ AliJetContainer *jetCont1 = jetTask->AddJetContainer(njets1, cutType, jetradius1);
+ jetCont1->SetRhoName(nrho1);
+ jetCont1->SetLeadingHadronType(biasType);
+ jetCont1->SetPtBiasJetTrack(jetBias);
+ jetCont1->SetPtBiasJetClus(jetBias);
+ jetCont1->SetJetPtCut(jetptcut);
+ jetCont1->SetPercAreaCut(jetareacut);
+ jetCont1->SetIsParticleLevel(kFALSE);
+ jetCont1->ConnectParticleContainer(trackCont1);
+ jetCont1->ConnectClusterContainer(clusCont1);
+ jetCont1->SetNEFCut(nefmincut,nefmaxcut);
+ jetCont1->SetFlavourCut(jetTagging);
+
+
+ AliParticleContainer *trackCont2 = jetTask->AddParticleContainer(ntracks2);
+ AliClusterContainer *clusCont2 = jetTask->AddClusterContainer(nclusters2);
+ AliJetContainer *jetCont2 = jetTask->AddJetContainer(njets2, cutType, jetradius2);
+ jetCont2->SetRhoName(nrho2);
+ jetCont2->SetLeadingHadronType(biasType);
+ jetCont2->SetPtBiasJetTrack(jetBias);
+ jetCont2->SetPtBiasJetClus(jetBias);
+ jetCont2->SetJetPtCut(jetptcut);
+ jetCont2->SetPercAreaCut(jetareacut);
+ jetCont2->SetIsParticleLevel(kTRUE);
+ jetCont2->ConnectParticleContainer(trackCont2);
+ jetCont2->ConnectClusterContainer(clusCont2);
+ jetCont2->SetFlavourCut(jetTagging);
+
+
jetTask->SetMatching(matching, maxDistance1, maxDistance2);
jetTask->SetVzRange(-10,10);
+ jetTask->SetIsPythia(kTRUE);
jetTask->SetPtHardBin(ptHardBin);
+ jetTask->SetCentRange(minCent,maxCent);
if (biggerMatrix)
jetTask->SetHistoBins(1000,0,500);