From cd0e8602a20cbd703846ff62131acbbc0a8e53c4 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Tue, 10 Mar 2026 22:33:58 +0100 Subject: [PATCH 1/5] PWGEM/Dilepton: update mft ref bit --- .../TableProducer/skimmerPrimaryMFTTrack.cxx | 15 +++++++++------ PWGEM/Dilepton/Utils/EMTrackUtilities.h | 17 +++++++++-------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx index 28055a15057..5eb1d8c8b61 100644 --- a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx +++ b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx @@ -198,13 +198,16 @@ struct skimmerPrimaryMFTTrack { // As minimal cuts, following cuts are applied. The cut values are hardcoded on the purpose for consistent bit operation. // Ncls MFT >= 5 - // chi2/ndf MFT < 5 - // |dcaXY| < 0.06 cm + // chi2/ndf MFT < 4 + // |dcaXY| < 0.05 cm - if (mfttrack.nClusters() < 6 || mfttrack.chi2() / ndf > 5.f || std::fabs(dcaXY) > 0.05) { + if (mfttrack.nClusters() < 5 || mfttrack.chi2() / ndf > 4.f || std::fabs(dcaXY) > 0.05) { return; } + if (mfttrack.nClusters() >= 6) { + trackBit |= static_cast(RefMFTTrackBit::kNclsMFT6); + } if (mfttrack.nClusters() >= 7) { trackBit |= static_cast(RefMFTTrackBit::kNclsMFT7); } @@ -212,12 +215,12 @@ struct skimmerPrimaryMFTTrack { trackBit |= static_cast(RefMFTTrackBit::kNclsMFT8); } - if (mfttrack.chi2() / ndf < 4.f) { - trackBit |= static_cast(RefMFTTrackBit::kChi2MFT4); - } if (mfttrack.chi2() / ndf < 3.f) { trackBit |= static_cast(RefMFTTrackBit::kChi2MFT3); } + if (mfttrack.chi2() / ndf < 2.f) { + trackBit |= static_cast(RefMFTTrackBit::kChi2MFT2); + } if (std::fabs(dcaXY) < 0.04) { trackBit |= static_cast(RefMFTTrackBit::kDCAxy004cm); diff --git a/PWGEM/Dilepton/Utils/EMTrackUtilities.h b/PWGEM/Dilepton/Utils/EMTrackUtilities.h index 54bc28eb012..8b81d18c015 100644 --- a/PWGEM/Dilepton/Utils/EMTrackUtilities.h +++ b/PWGEM/Dilepton/Utils/EMTrackUtilities.h @@ -47,14 +47,15 @@ enum class RefTrackBit : uint16_t { // This is not for leptons, but charged trac }; enum class RefMFTTrackBit : uint16_t { // This is not for leptons, but charged tracks for reference flow. - kNclsMFT7 = 1, // default is 6 - kNclsMFT8 = 2, - kChi2MFT4 = 4, // default is 5 - kChi2MFT3 = 8, - kDCAxy004cm = 16, // default is 0.05 cm - kDCAxy003cm = 32, - kDCAxy002cm = 64, - kDCAxy001cm = 128, + kNclsMFT6 = 1, // default is 5 + kNclsMFT7 = 2, + kNclsMFT8 = 4, + kChi2MFT3 = 8, // default is 4 + kChi2MFT2 = 16, + kDCAxy004cm = 32, // default is 0.05 cm + kDCAxy003cm = 64, + kDCAxy002cm = 128, + kDCAxy001cm = 256, }; //_______________________________________________________________________ From 56ff8357988142fdb36c2be168eef3e556457ac2 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Tue, 10 Mar 2026 22:43:31 +0100 Subject: [PATCH 2/5] Modify DCA cut-off and add new track bit condition Updated DCA cut-off from 0.05 cm to 0.06 cm and added a new track bit for DCA < 0.05 cm. --- PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx index 5eb1d8c8b61..f49f1a483ae 100644 --- a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx +++ b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx @@ -201,7 +201,7 @@ struct skimmerPrimaryMFTTrack { // chi2/ndf MFT < 4 // |dcaXY| < 0.05 cm - if (mfttrack.nClusters() < 5 || mfttrack.chi2() / ndf > 4.f || std::fabs(dcaXY) > 0.05) { + if (mfttrack.nClusters() < 5 || mfttrack.chi2() / ndf > 4.f || std::fabs(dcaXY) > 0.06) { return; } @@ -222,6 +222,9 @@ struct skimmerPrimaryMFTTrack { trackBit |= static_cast(RefMFTTrackBit::kChi2MFT2); } + if (std::fabs(dcaXY) < 0.05) { + trackBit |= static_cast(RefMFTTrackBit::kDCAxy005cm); + } if (std::fabs(dcaXY) < 0.04) { trackBit |= static_cast(RefMFTTrackBit::kDCAxy004cm); } From b841040efe8c191d5fbb7c7f924c6a0eadf70b5e Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Tue, 10 Mar 2026 22:44:25 +0100 Subject: [PATCH 3/5] Update DCAxy constants in EMTrackUtilities.h --- PWGEM/Dilepton/Utils/EMTrackUtilities.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/PWGEM/Dilepton/Utils/EMTrackUtilities.h b/PWGEM/Dilepton/Utils/EMTrackUtilities.h index 8b81d18c015..5d54394b447 100644 --- a/PWGEM/Dilepton/Utils/EMTrackUtilities.h +++ b/PWGEM/Dilepton/Utils/EMTrackUtilities.h @@ -52,10 +52,11 @@ enum class RefMFTTrackBit : uint16_t { // This is not for leptons, but charged t kNclsMFT8 = 4, kChi2MFT3 = 8, // default is 4 kChi2MFT2 = 16, - kDCAxy004cm = 32, // default is 0.05 cm - kDCAxy003cm = 64, - kDCAxy002cm = 128, - kDCAxy001cm = 256, + kDCAxy005cm = 32, // default is 0.06 cm + kDCAxy004cm = 64, + kDCAxy003cm = 128, + kDCAxy002cm = 256, + kDCAxy001cm = 512, }; //_______________________________________________________________________ From c42fae4e19d88f279486d8d1963f480a6976dab3 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 10 Mar 2026 21:45:00 +0000 Subject: [PATCH 4/5] Please consider the following formatting changes --- PWGEM/Dilepton/Utils/EMTrackUtilities.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/Utils/EMTrackUtilities.h b/PWGEM/Dilepton/Utils/EMTrackUtilities.h index 5d54394b447..88daecccb62 100644 --- a/PWGEM/Dilepton/Utils/EMTrackUtilities.h +++ b/PWGEM/Dilepton/Utils/EMTrackUtilities.h @@ -52,7 +52,7 @@ enum class RefMFTTrackBit : uint16_t { // This is not for leptons, but charged t kNclsMFT8 = 4, kChi2MFT3 = 8, // default is 4 kChi2MFT2 = 16, - kDCAxy005cm = 32, // default is 0.06 cm + kDCAxy005cm = 32, // default is 0.06 cm kDCAxy004cm = 64, kDCAxy003cm = 128, kDCAxy002cm = 256, From c633a730331909c2ca170f8a8d6fd8d7002294e8 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Tue, 10 Mar 2026 22:45:39 +0100 Subject: [PATCH 5/5] Update dcaXY cut value from 0.05 to 0.06 cm --- PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx index f49f1a483ae..977061cee75 100644 --- a/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx +++ b/PWGEM/Dilepton/TableProducer/skimmerPrimaryMFTTrack.cxx @@ -199,7 +199,7 @@ struct skimmerPrimaryMFTTrack { // As minimal cuts, following cuts are applied. The cut values are hardcoded on the purpose for consistent bit operation. // Ncls MFT >= 5 // chi2/ndf MFT < 4 - // |dcaXY| < 0.05 cm + // |dcaXY| < 0.06 cm if (mfttrack.nClusters() < 5 || mfttrack.chi2() / ndf > 4.f || std::fabs(dcaXY) > 0.06) { return;