Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion PWGHF/HFC/DataModel/CorrelationTables.h
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,8 @@ DECLARE_SOA_TABLE(LcRecoInfo, "AOD", "LCRECOINFO", //! Lc candidates Reconstruct
aod::hf_correlation_lc_hadron::MLc,
aod::hf_correlation_lc_hadron::PtLc,
aod::hf_correlation_lc_hadron::MlScoreBkg,
aod::hf_correlation_lc_hadron::MlScorePrompt);
aod::hf_correlation_lc_hadron::MlScorePrompt,
aod::hf_correlation_lc_hadron::PoolBin);

DECLARE_SOA_TABLE(LcGenInfo, "AOD", "LCGENOINFO", //! Lc candidates Generated Information
aod::hf_correlation_lc_hadron::IsPrompt);
Expand Down
16 changes: 8 additions & 8 deletions PWGHF/HFC/TableProducer/correlatorLcHadrons.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -356,8 +356,8 @@ struct HfCorrelatorLcHadrons {
registry.add("hcountLctriggersMcGen", "Lc trigger particles - MC gen;;N of trigger Lc", {HistType::kTH2F, {{1, -0.5, 0.5}, {axisPtLc}}});
registry.add("hPtCandMcGen", "Lc,Hadron particles - MC gen;particle #it{p}_{T} (GeV/#it{c});entries", {HistType::kTH1D, {axisPtLc}});
registry.add("hYMcGen", "Lc,Hadron candidates - MC gen;candidate #it{#y};entries", {HistType::kTH1D, {axisRapidity}});
registry.add("hPtCandMcGenPrompt", "Lc,Hadron particles - MC Gen Prompt", {HistType::kTH1D, {axisPtLc}});
registry.add("hPtCandMcGenNonPrompt", "Lc,Hadron particles - MC Gen Non Prompt", {HistType::kTH1D, {axisPtLc}});
registry.add("hPtCandMcGenPrompt", "Lc,Hadron particles - MC Gen Prompt", {HistType::kTH2D, {{axisPtLc}, {axisPoolBin}}});
registry.add("hPtCandMcGenNonPrompt", "Lc,Hadron particles - MC Gen Non Prompt", {HistType::kTH2D, {{axisPtLc}, {axisPoolBin}}});
registry.add("hPtParticleAssocMcGen", "Associated Particle - MC Gen", {HistType::kTH1D, {axisPtHadron}});
registry.add("hEtaMcGen", "Lc,Hadron particles - MC Gen", {HistType::kTH1D, {axisEta}});
registry.add("hPhiMcGen", "Lc,Hadron particles - MC Gen", {HistType::kTH1D, {axisPhi}});
Expand Down Expand Up @@ -439,7 +439,7 @@ struct HfCorrelatorLcHadrons {
for (unsigned int iclass = 0; iclass < classMl->size(); iclass++) {
outputMl[iclass] = candidate.mlProbLcToPKPi()[classMl->at(iclass)];
}
entryLcCandRecoInfo(HfHelper::invMassLcToPKPi(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1]); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandRecoInfo(HfHelper::invMassLcToPKPi(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1], poolBin); // 0: BkgBDTScore, 1:PromptBDTScore
if (!skipMixedEventTableFilling) {
entryLc(candidate.phi(), candidate.eta(), candidate.pt() * chargeLc, HfHelper::invMassLcToPKPi(candidate), poolBin, gCollisionId, timeStamp);
}
Expand All @@ -451,7 +451,7 @@ struct HfCorrelatorLcHadrons {
for (unsigned int iclass = 0; iclass < classMl->size(); iclass++) {
outputMl[iclass] = candidate.mlProbLcToPiKP()[classMl->at(iclass)];
}
entryLcCandRecoInfo(HfHelper::invMassLcToPiKP(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1]); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandRecoInfo(HfHelper::invMassLcToPiKP(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1], poolBin); // 0: BkgBDTScore, 1:PromptBDTScore
if (!skipMixedEventTableFilling) {
entryLc(candidate.phi(), candidate.eta(), candidate.pt() * chargeLc, HfHelper::invMassLcToPiKP(candidate), poolBin, gCollisionId, timeStamp);
}
Expand Down Expand Up @@ -611,7 +611,7 @@ struct HfCorrelatorLcHadrons {
registry.fill(HIST("hMassLcMcRecSig"), HfHelper::invMassLcToPKPi(candidate), candidate.pt(), efficiencyWeightLc);
registry.fill(HIST("hMassLcVsPtMcRec"), HfHelper::invMassLcToPKPi(candidate), candidate.pt(), efficiencyWeightLc);
registry.fill(HIST("hSelectionStatusLcToPKPiMcRec"), candidate.isSelLcToPKPi());
entryLcCandRecoInfo(HfHelper::invMassLcToPKPi(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1]); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandRecoInfo(HfHelper::invMassLcToPKPi(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1], poolBin); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandGenInfo(isLcPrompt);
}
if (candidate.isSelLcToPiKP() >= selectionFlagLc) {
Expand All @@ -629,7 +629,7 @@ struct HfCorrelatorLcHadrons {
registry.fill(HIST("hMassLcMcRecSig"), HfHelper::invMassLcToPiKP(candidate), candidate.pt(), efficiencyWeightLc);
registry.fill(HIST("hMassLcVsPtMcRec"), HfHelper::invMassLcToPiKP(candidate), candidate.pt(), efficiencyWeightLc);
registry.fill(HIST("hSelectionStatusLcToPiKPMcRec"), candidate.isSelLcToPiKP());
entryLcCandRecoInfo(HfHelper::invMassLcToPiKP(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1]); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandRecoInfo(HfHelper::invMassLcToPiKP(candidate), candidate.pt() * chargeLc, outputMl[0], outputMl[1], poolBin); // 0: BkgBDTScore, 1:PromptBDTScore
entryLcCandGenInfo(isLcPrompt);
}
} else {
Expand Down Expand Up @@ -855,9 +855,9 @@ struct HfCorrelatorLcHadrons {
isLcPrompt = particle.originMcGen() == RecoDecay::OriginType::Prompt;
isLcNonPrompt = particle.originMcGen() == RecoDecay::OriginType::NonPrompt;
if (isLcPrompt) {
registry.fill(HIST("hPtCandMcGenPrompt"), particle.pt());
registry.fill(HIST("hPtCandMcGenPrompt"), particle.pt(), poolBin);
} else if (isLcNonPrompt) {
registry.fill(HIST("hPtCandMcGenNonPrompt"), particle.pt());
registry.fill(HIST("hPtCandMcGenNonPrompt"), particle.pt(), poolBin);
}

// prompt and non-prompt division
Expand Down
4 changes: 2 additions & 2 deletions PWGHF/HFC/TableProducer/correlatorLcScHadrons.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -931,7 +931,7 @@ struct HfCorrelatorLcScHadrons {
registry.fill(HIST("hPtVsMultiplicityMcRecNonPrompt"), ptCand, multiplicityFT0M);
}

entryCandCandRecoInfo(massCandPKPi, ptCand, outputMlPKPi[0], outputMlPKPi[1]);
entryCandCandRecoInfo(massCandPKPi, ptCand, outputMlPKPi[0], outputMlPKPi[1], poolBin);
entryCandCandGenInfo(isPrompt);
if (!skipMixedEventTableFilling) {
entryCand(candidate.phi(), etaCand, ptCand, massCandPKPi, poolBin, gCollisionId, timeStamp);
Expand All @@ -952,7 +952,7 @@ struct HfCorrelatorLcScHadrons {
registry.fill(HIST("hPtCandSigNonPrompt"), ptCand);
registry.fill(HIST("hPtVsMultiplicityMcRecNonPrompt"), ptCand, multiplicityFT0M);
}
entryCandCandRecoInfo(massCandPiKP, ptCand, outputMlPiKP[0], outputMlPiKP[1]);
entryCandCandRecoInfo(massCandPiKP, ptCand, outputMlPiKP[0], outputMlPiKP[1], poolBin);
entryCandCandGenInfo(isPrompt);
if (!skipMixedEventTableFilling) {
entryCand(candidate.phi(), etaCand, ptCand, massCandPiKP, poolBin, gCollisionId, timeStamp);
Expand Down
9 changes: 5 additions & 4 deletions PWGHF/HFC/Tasks/taskCorrelationLcHadrons.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -259,8 +259,8 @@ struct HfTaskCorrelationLcHadrons {
}
// Histograms for MC Reco analysis
if (fillHistoMcRec) {
registry.add("hMassPromptLcVsPt", "Lc prompt candidates mass Vs Pt", {HistType::kTH2F, {{axisMassLc}, {axisPtLc}}});
registry.add("hMassNonPromptLcVsPt", "Lc non prompt candidates mass Vs Pt", {HistType::kTH2F, {{axisMassLc}, {axisPtLc}}});
registry.add("hMassPromptLcVsPt", "Lc prompt candidates mass Vs Pt", {HistType::kTH3F, {{axisMassLc}, {axisPtLc}, {axisPoolBin}}});
registry.add("hMassNonPromptLcVsPt", "Lc non prompt candidates mass Vs Pt", {HistType::kTH3F, {{axisMassLc}, {axisPtLc}, {axisPoolBin}}});
registry.add("hDeltaEtaPtIntSignalRegionMcRec", stringLcHadron + stringSignal + stringDeltaEta + "entries", {HistType::kTH1D, {axisDeltaEta}});
registry.add("hDeltaPhiPtIntSignalRegionMcRec", stringLcHadron + stringSignal + stringDeltaPhi + "entries", {HistType::kTH1D, {axisDeltaPhi}});
registry.add("hDeltaEtaPtIntSidebandsMcRec", stringLcHadron + stringSideband + stringDeltaEta + "entries", {HistType::kTH1D, {axisDeltaEta}});
Expand Down Expand Up @@ -577,6 +577,7 @@ struct HfTaskCorrelationLcHadrons {
float const ptLc = std::abs(candidate.ptLc());
float const bdtScorePrompt = candidate.mlScorePrompt();
float const bdtScoreBkg = candidate.mlScoreBkg();
int const poolBin = candidate.poolBin();
int const effBinLc = o2::analysis::findBin(binsPtEfficiencyLc, ptLc);
bool const isLcPrompt = candidate.isPrompt();

Expand All @@ -597,7 +598,7 @@ struct HfTaskCorrelationLcHadrons {
}
registry.fill(HIST("hMassLcVsPt"), massLc, ptLc, efficiencyWeightLc);
registry.fill(HIST("hMassLcVsPtWoEff"), massLc, ptLc);
registry.fill(HIST("hMassPromptLcVsPt"), massLc, ptLc, efficiencyWeightLc);
registry.fill(HIST("hMassPromptLcVsPt"), massLc, ptLc, poolBin, efficiencyWeightLc);
registry.fill(HIST("hBdtScorePrompt"), bdtScorePrompt);
registry.fill(HIST("hBdtScoreBkg"), bdtScoreBkg);
} else {
Expand All @@ -607,7 +608,7 @@ struct HfTaskCorrelationLcHadrons {
}
registry.fill(HIST("hMassLcVsPt"), massLc, ptLc, efficiencyWeightLc);
registry.fill(HIST("hMassLcVsPtWoEff"), massLc, ptLc);
registry.fill(HIST("hMassNonPromptLcVsPt"), massLc, ptLc, efficiencyWeightLc);
registry.fill(HIST("hMassNonPromptLcVsPt"), massLc, ptLc, poolBin, efficiencyWeightLc);
registry.fill(HIST("hBdtScorePrompt"), bdtScorePrompt);
registry.fill(HIST("hBdtScoreBkg"), bdtScoreBkg);
}
Expand Down
Loading