From 575419953eb200236f91a7f8b96fe8244e2641b5 Mon Sep 17 00:00:00 2001 From: hero-seo Date: Tue, 3 Nov 2026 20:19:18 +0900 Subject: [PATCH 1/4] fixing qa histo units, cm to micrometer --- PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx index b3b72f70883..98e8d450ad2 100644 --- a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx +++ b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx @@ -541,12 +541,12 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixSV[3]); registry.fill(HIST("hCovSVZZ"), covMatrixSV[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY()); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY()); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY()); - registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ()); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ()); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ()); + registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY()*10000); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY()*10000); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY()*10000); + registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ()*10000); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ()*10000); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ()*10000); } //---------------------------------fill candidate table rows------------------------------------------------------------------------------------------- From ff811d98940e2cb508fa7907e0b9d31a6353122c Mon Sep 17 00:00:00 2001 From: hero-seo Date: Wed, 4 Nov 2026 13:35:46 +0900 Subject: [PATCH 2/4] fix the unit missmatch in QA histogram filling --- .../candidateCreatorXicToXiPiPi.cxx | 22 +++++++++---------- .../candidateSelectorXicToXiPiPi.cxx | 4 ++-- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx index 98e8d450ad2..7ff495b9938 100644 --- a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx +++ b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx @@ -541,12 +541,12 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixSV[3]); registry.fill(HIST("hCovSVZZ"), covMatrixSV[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY()*10000); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY()*10000); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY()*10000); - registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ()*10000); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ()*10000); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ()*10000); + registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY()*10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY()*10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY()*10000.f); + registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ()*10000.f); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ()*10000.f); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ()*10000.f); } //---------------------------------fill candidate table rows------------------------------------------------------------------------------------------- @@ -873,9 +873,9 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixXicPlus[3]); registry.fill(HIST("hCovSVZZ"), covMatrixXicPlus[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY); + registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY*10000.f); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY*10000.f); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY*10000.f); } //------------------------------fill candidate table rows-------------------------------------- @@ -1093,7 +1093,7 @@ struct HfCandidateCreatorXicToXiPiPiExpressions { registry.add("hDecayedPions", "hDecayedPions", {HistType::kTH1F, {{5, -0.5, 4.5}}}); registry.add("hInteractionsWithMaterial", "hInteractionsWithMaterial", {HistType::kTH1F, {{6, -0.5, 5.5}}}); registry.add("hDebugRec", "hDebugRec", {HistType::kTH1F, {{4, -0.5, 3.5}}}); - registry.add("hy_pt_gen", "Generated MC", {HistType::kTH2F, {{20, -1.0, 1.0}, {200, 0, 20}}}); + registry.add("hYPtGen", "Generated MC", {HistType::kTH2F, {{20, -1.0, 1.0}, {200, 0, 20}}}); registry.get(HIST("hDebugRec"))->GetXaxis()->SetBinLabel(1 + TotalRec, "total"); registry.get(HIST("hDebugRec"))->GetXaxis()->SetBinLabel(1 + XicToFinalState, "#Xi^{+}_{c} #rightarrow #pi^{#plus} #pi^{#plus} #pi^{#minus} p #pi^{#minus}"); registry.get(HIST("hDebugRec"))->GetXaxis()->SetBinLabel(1 + XiToPiPPi, "#Xi^{#minus} #rightarrow #pi^{#minus} p #pi^{#minus}"); @@ -1348,7 +1348,7 @@ struct HfCandidateCreatorXicToXiPiPiExpressions { // Check whether the charm baryon is non-prompt (from a b quark). if (flag != 0) { // fill inclusive generated Xic+ - registry.fill(HIST("hy_pt_gen"), particle.y(), particle.pt()); + registry.fill(HIST("hYPtGen"), particle.y(), particle.pt()); origin = RecoDecay::getCharmHadronOrigin(mcParticles, particle, false, &idxBhadMothers); // Calculate the decay length of the generated particle diff --git a/PWGHF/TableProducer/candidateSelectorXicToXiPiPi.cxx b/PWGHF/TableProducer/candidateSelectorXicToXiPiPi.cxx index 8972554209a..5cea9752f1e 100644 --- a/PWGHF/TableProducer/candidateSelectorXicToXiPiPi.cxx +++ b/PWGHF/TableProducer/candidateSelectorXicToXiPiPi.cxx @@ -246,7 +246,7 @@ struct HfCandidateSelectorXicToXiPiPi { registry.add("hNCrossedRowsTpcV0PosDauRecBkg", "Reconstructed background;#it{N}_{rows}^{TPC} (V0 pos. dau.);entries", {HistType::kTH1F, {{103, 49.5, 152.5}}}); registry.add("hNCrossedRowsTpcV0NegDauRecBkg", "Reconstructed background;#it{N}_{rows}^{TPC} (V0 neg. dau.);entries", {HistType::kTH1F, {{103, 49.5, 152.5}}}); /// reconstructed MC - registry.add("hmass_pt_reco_truth", "Reconstructed truth matching MC;inv.mass(#Xi#pi#pi) [GeV/c^{2}];p_{T} [GeV/c]", {HistType::kTH2F, {{40, 2.3, 2.7}, {200, 0, 20}}}); + registry.add("hMassPtRecSig", "Reconstructed truth matching MC;inv.mass(#Xi#pi#pi) [GeV/c^{2}];p_{T} [GeV/c]", {HistType::kTH2F, {{40, 2.3, 2.7}, {200, 0, 20}}}); } } @@ -643,7 +643,7 @@ struct HfCandidateSelectorXicToXiPiPi { if constexpr (IsMc) { if (isMatchedSignal) { registry.fill(HIST("hSelCandidatesRecSig"), PidSelected); - registry.fill(HIST("hmass_pt_reco_truth"), hfCandXic.invMassXicPlus(), hfCandXic.pt()); + registry.fill(HIST("hMassPtRecSig"), hfCandXic.invMassXicPlus(), hfCandXic.pt()); } else { registry.fill(HIST("hSelCandidatesRecBkg"), PidSelected); } From ff01f4b1255befa5fbc12c67001d883037894aae Mon Sep 17 00:00:00 2001 From: hero-seo Date: Wed, 4 Nov 2026 14:00:16 +0900 Subject: [PATCH 3/4] clang-format fix --- .../candidateCreatorXicToXiPiPi.cxx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx index 7ff495b9938..00512dd073a 100644 --- a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx +++ b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx @@ -541,12 +541,12 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixSV[3]); registry.fill(HIST("hCovSVZZ"), covMatrixSV[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY()*10000.f); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY()*10000.f); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY()*10000.f); - registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ()*10000.f); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ()*10000.f); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ()*10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY() * 10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY() * 10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY() * 10000.f); + registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ() * 10000.f); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ() * 10000.f); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ() * 10000.f); } //---------------------------------fill candidate table rows------------------------------------------------------------------------------------------- @@ -873,9 +873,9 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixXicPlus[3]); registry.fill(HIST("hCovSVZZ"), covMatrixXicPlus[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY*10000.f); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY*10000.f); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY*10000.f); + registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY * 10000.f); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY * 10000.f); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY * 10000.f); } //------------------------------fill candidate table rows-------------------------------------- From eea1ea3d129ac4a6f1745184e2f7de551dc7ed09 Mon Sep 17 00:00:00 2001 From: hero-seo Date: Fri, 6 Nov 2026 17:02:54 +0900 Subject: [PATCH 4/4] Make DCA QA unit conversion explicit --- .../candidateCreatorXicToXiPiPi.cxx | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx index 00512dd073a..73667ffe7b8 100644 --- a/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx +++ b/PWGHF/TableProducer/candidateCreatorXicToXiPiPi.cxx @@ -151,6 +151,8 @@ struct HfCandidateCreatorXicToXiPiPi { HistogramRegistry registry{"registry"}; OutputObj zorroSummary{"zorroSummary"}; + static constexpr float cmToMicrometer{10000.}; + void init(InitContext const&) { if ((doprocessNoCentXicplusWithDcaFitter + doprocessCentFT0CXicplusWithDcaFitter + doprocessCentFT0MXicplusWithDcaFitter + doprocessNoCentXicplusWithKFParticle + doprocessCentFT0CXicplusWithKFParticle + doprocessCentFT0MXicplusWithKFParticle) != 1) { @@ -541,12 +543,12 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixSV[3]); registry.fill(HIST("hCovSVZZ"), covMatrixSV[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY() * 10000.f); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY() * 10000.f); - registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY() * 10000.f); - registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ() * 10000.f); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ() * 10000.f); - registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ() * 10000.f); + registry.fill(HIST("hDcaXYProngs"), trackCasc.getPt(), impactParameterCasc.getY() * cmToMicrometer); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor0.pt(), impactParameter0.getY() * cmToMicrometer); + registry.fill(HIST("hDcaXYProngs"), trackCharmBachelor1.pt(), impactParameter1.getY() * cmToMicrometer); + registry.fill(HIST("hDcaZProngs"), trackCasc.getPt(), impactParameterCasc.getZ() * cmToMicrometer); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor0.pt(), impactParameter0.getZ() * cmToMicrometer); + registry.fill(HIST("hDcaZProngs"), trackCharmBachelor1.pt(), impactParameter1.getZ() * cmToMicrometer); } //---------------------------------fill candidate table rows------------------------------------------------------------------------------------------- @@ -873,9 +875,9 @@ struct HfCandidateCreatorXicToXiPiPi { registry.fill(HIST("hCovSVXZ"), covMatrixXicPlus[3]); registry.fill(HIST("hCovSVZZ"), covMatrixXicPlus[5]); // DCAs of prongs - registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY * 10000.f); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY * 10000.f); - registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY * 10000.f); + registry.fill(HIST("hDcaXYProngs"), kfXi.GetPt(), impactParameterXiXY * cmToMicrometer); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor0.GetPt(), impactParameterPi0XY * cmToMicrometer); + registry.fill(HIST("hDcaXYProngs"), kfCharmBachelor1.GetPt(), impactParameterPi1XY * cmToMicrometer); } //------------------------------fill candidate table rows--------------------------------------