From 409e4b2ab717fd24899e63dfad2bb2ad76c3ffce Mon Sep 17 00:00:00 2001 From: Meiyi Chen Date: Wed, 12 Aug 2026 15:55:20 +0800 Subject: [PATCH 1/2] fix configurable --- .../FemtoNuclei/Tasks/piDeFemtoSystematics.cxx | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx b/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx index c12af02d7d2..93d1c6040ca 100644 --- a/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx +++ b/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx @@ -144,7 +144,9 @@ struct PiDeFemtoSystematics { Configurable sharedTPCFractionMax{"sharedTPCFractionMax", 1.f, "Maximum deuteron shared TPC-cluster fraction"}; Configurable tpcInnerParamMin{"tpcInnerParamMin", 0.f, "Minimum deuteron TPC inner parameter"}; Configurable tofMomentumMin{"tofMomentumMin", 1.2f, "TPC inner parameter above which combined TPC+TOF PID is required"}; - Configurable nsigmaMax{"nsigmaMax", 2.5f, "Common deuteron TPC, ITS and combined PID threshold"}; + Configurable CombnsigmaMax{"CombnsigmaMax", 2.5f, "Maximum deuteron combined TPC+TOF n-sigma"}; + Configurable TPCnsigmaMax{"TPCnsigmaMax", 2.5f, "Maximum absolute deuteron TPC n-sigma"}; + Configurable ITSnsigmaMax{"ITSnsigmaMax", 2.5f, "Maximum absolute deuteron ITS n-sigma"}; Configurable requireIndividualNsigma{"requireIndividualNsigma", false, "Also apply individual TPC and TOF cuts in the combined PID branch"}; Configurable dcaXYOffset{"dcaXYOffset", 0.004f, "Deuteron DCAxy cut offset"}; Configurable dcaXYPtCoefficient{"dcaXYPtCoefficient", 0.013f, "Deuteron DCAxy inverse-pT coefficient"}; @@ -358,7 +360,9 @@ struct PiDeFemtoSystematics { {"deuteronSharedTPCFractionMax", deuteronCuts.sharedTPCFractionMax.value}, {"deuteronTPCInnerParamMin", deuteronCuts.tpcInnerParamMin.value}, {"deuteronTOFMomentumMin", deuteronCuts.tofMomentumMin.value}, - {"deuteronNsigmaMax", deuteronCuts.nsigmaMax.value}, + {"deuteronCombNsigmaMax", deuteronCuts.CombnsigmaMax.value}, + {"deuteronTPCNsigmaMax", deuteronCuts.TPCnsigmaMax.value}, + {"deuteronITSNsigmaMax", deuteronCuts.ITSnsigmaMax.value}, {"requireIndividualNsigma", deuteronCuts.requireIndividualNsigma.value}, {"deuteronDCAxyOffset", deuteronCuts.dcaXYOffset.value}, {"deuteronDCAxyPtCoefficient", deuteronCuts.dcaXYPtCoefficient.value}, @@ -536,22 +540,22 @@ struct PiDeFemtoSystematics { if (track.hasTOF() && tpcInnerParam > deuteronCuts.tofMomentumMin.value) { const float tofNsigma = track.tofNSigmaDe(); - if (std::hypot(tpcNsigma, tofNsigma) > deuteronCuts.nsigmaMax.value) { + if (std::hypot(tpcNsigma, tofNsigma) > deuteronCuts.CombnsigmaMax.value) { return false; } return !deuteronCuts.requireIndividualNsigma.value || - (std::abs(tpcNsigma) <= deuteronCuts.nsigmaMax.value && - std::abs(tofNsigma) <= deuteronCuts.nsigmaMax.value); + (std::abs(tpcNsigma) <= deuteronCuts.CombnsigmaMax.value && + std::abs(tofNsigma) <= deuteronCuts.CombnsigmaMax.value); } if (tpcInnerParam <= deuteronCuts.tofMomentumMin.value) { - if (std::abs(tpcNsigma) > deuteronCuts.nsigmaMax.value) { + if (std::abs(tpcNsigma) > deuteronCuts.TPCnsigmaMax.value) { return false; } o2::aod::ITSResponse itsResponse; const float itsNsigma = itsResponse.nSigmaITS( track.itsClusterSizes(), track.p(), track.eta()); - return std::abs(itsNsigma) <= deuteronCuts.nsigmaMax.value; + return std::abs(itsNsigma) <= deuteronCuts.ITSnsigmaMax.value; } return false; } From 981c64b1d8d1e75007438ad85664f7995ff8a0e9 Mon Sep 17 00:00:00 2001 From: Meiyi Chen Date: Wed, 12 Aug 2026 16:25:16 +0800 Subject: [PATCH 2/2] Update piDeFemtoSystematics.cxx --- .../Tasks/piDeFemtoSystematics.cxx | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx b/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx index 93d1c6040ca..515dbde5ba7 100644 --- a/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx +++ b/PWGCF/Femto/FemtoNuclei/Tasks/piDeFemtoSystematics.cxx @@ -144,9 +144,9 @@ struct PiDeFemtoSystematics { Configurable sharedTPCFractionMax{"sharedTPCFractionMax", 1.f, "Maximum deuteron shared TPC-cluster fraction"}; Configurable tpcInnerParamMin{"tpcInnerParamMin", 0.f, "Minimum deuteron TPC inner parameter"}; Configurable tofMomentumMin{"tofMomentumMin", 1.2f, "TPC inner parameter above which combined TPC+TOF PID is required"}; - Configurable CombnsigmaMax{"CombnsigmaMax", 2.5f, "Maximum deuteron combined TPC+TOF n-sigma"}; - Configurable TPCnsigmaMax{"TPCnsigmaMax", 2.5f, "Maximum absolute deuteron TPC n-sigma"}; - Configurable ITSnsigmaMax{"ITSnsigmaMax", 2.5f, "Maximum absolute deuteron ITS n-sigma"}; + Configurable combinedNsigmaMax{"combinedNsigmaMax", 2.5f, "Maximum deuteron combined TPC+TOF n-sigma"}; + Configurable tpcNsigmaMax{"tpcNsigmaMax", 2.5f, "Maximum absolute deuteron TPC n-sigma"}; + Configurable itsNsigmaMax{"itsNsigmaMax", 2.5f, "Maximum absolute deuteron ITS n-sigma"}; Configurable requireIndividualNsigma{"requireIndividualNsigma", false, "Also apply individual TPC and TOF cuts in the combined PID branch"}; Configurable dcaXYOffset{"dcaXYOffset", 0.004f, "Deuteron DCAxy cut offset"}; Configurable dcaXYPtCoefficient{"dcaXYPtCoefficient", 0.013f, "Deuteron DCAxy inverse-pT coefficient"}; @@ -360,9 +360,9 @@ struct PiDeFemtoSystematics { {"deuteronSharedTPCFractionMax", deuteronCuts.sharedTPCFractionMax.value}, {"deuteronTPCInnerParamMin", deuteronCuts.tpcInnerParamMin.value}, {"deuteronTOFMomentumMin", deuteronCuts.tofMomentumMin.value}, - {"deuteronCombNsigmaMax", deuteronCuts.CombnsigmaMax.value}, - {"deuteronTPCNsigmaMax", deuteronCuts.TPCnsigmaMax.value}, - {"deuteronITSNsigmaMax", deuteronCuts.ITSnsigmaMax.value}, + {"deuteronCombNsigmaMax", deuteronCuts.combinedNsigmaMax.value}, + {"deuteronTPCNsigmaMax", deuteronCuts.tpcNsigmaMax.value}, + {"deuteronITSNsigmaMax", deuteronCuts.itsNsigmaMax.value}, {"requireIndividualNsigma", deuteronCuts.requireIndividualNsigma.value}, {"deuteronDCAxyOffset", deuteronCuts.dcaXYOffset.value}, {"deuteronDCAxyPtCoefficient", deuteronCuts.dcaXYPtCoefficient.value}, @@ -540,22 +540,22 @@ struct PiDeFemtoSystematics { if (track.hasTOF() && tpcInnerParam > deuteronCuts.tofMomentumMin.value) { const float tofNsigma = track.tofNSigmaDe(); - if (std::hypot(tpcNsigma, tofNsigma) > deuteronCuts.CombnsigmaMax.value) { + if (std::hypot(tpcNsigma, tofNsigma) > deuteronCuts.combinedNsigmaMax.value) { return false; } return !deuteronCuts.requireIndividualNsigma.value || - (std::abs(tpcNsigma) <= deuteronCuts.CombnsigmaMax.value && - std::abs(tofNsigma) <= deuteronCuts.CombnsigmaMax.value); + (std::abs(tpcNsigma) <= deuteronCuts.combinedNsigmaMax.value && + std::abs(tofNsigma) <= deuteronCuts.combinedNsigmaMax.value); } if (tpcInnerParam <= deuteronCuts.tofMomentumMin.value) { - if (std::abs(tpcNsigma) > deuteronCuts.TPCnsigmaMax.value) { + if (std::abs(tpcNsigma) > deuteronCuts.tpcNsigmaMax.value) { return false; } o2::aod::ITSResponse itsResponse; const float itsNsigma = itsResponse.nSigmaITS( track.itsClusterSizes(), track.p(), track.eta()); - return std::abs(itsNsigma) <= deuteronCuts.ITSnsigmaMax.value; + return std::abs(itsNsigma) <= deuteronCuts.itsNsigmaMax.value; } return false; }