From 6fb46a19cc42a240c01de592640bc0c14df7f0e4 Mon Sep 17 00:00:00 2001
From: Goetz Gaycken <goetz.gaycken@cern.ch>
Date: Fri, 1 Nov 2024 14:17:18 +0100
Subject: [PATCH] Set outlier chi2 cutoff also for the Acts measurement
 selector.

---
 Tracking/Acts/ActsConfig/python/ActsTrackFindingConfig.py     | 4 ++--
 Tracking/Acts/ActsTrackReconstruction/src/TrackFindingAlg.cxx | 2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/Tracking/Acts/ActsConfig/python/ActsTrackFindingConfig.py b/Tracking/Acts/ActsConfig/python/ActsTrackFindingConfig.py
index 04da30c34a5..48b7a2dbcfb 100644
--- a/Tracking/Acts/ActsConfig/python/ActsTrackFindingConfig.py
+++ b/Tracking/Acts/ActsConfig/python/ActsTrackFindingConfig.py
@@ -86,8 +86,8 @@ def ActsMainTrackFindingAlgCfg(flags,
     # bins in |eta|, used for both MeasurementSelectorCuts and TrackSelector::EtaBinnedConfig
     if flags.Detector.GeometryITk:
         kwargs.setdefault("etaBins", flags.Tracking.ActiveConfig.etaBins)
-    if flags.Acts.useDefaultActsMeasurementSelector or flags.Acts.trackFindingTrackSelectorConfig <= 0:
-        # Only a single chi2 cut-off exists for the default Acts measurement selector.
+    if flags.Acts.trackFindingTrackSelectorConfig <= 0:
+        # clusters with chi2 above this value will be treated as outliers
         kwargs.setdefault("chi2CutOff", tolist(flags.Tracking.ActiveConfig.Xi2maxNoAdd))
     elif flags.Acts.trackFindingTrackSelectorConfig == 2:
         # clusters with chi2 above this value will be treated as outliers
diff --git a/Tracking/Acts/ActsTrackReconstruction/src/TrackFindingAlg.cxx b/Tracking/Acts/ActsTrackReconstruction/src/TrackFindingAlg.cxx
index abd8bdf9ee8..3a583811058 100644
--- a/Tracking/Acts/ActsTrackReconstruction/src/TrackFindingAlg.cxx
+++ b/Tracking/Acts/ActsTrackReconstruction/src/TrackFindingAlg.cxx
@@ -163,6 +163,8 @@ namespace ActsTrk
 
     if (!m_chi2CutOff.empty())
       measurementSelectorCuts.chi2CutOff = m_chi2CutOff;
+    if (!m_chi2OutlierCutOff.empty() && m_chi2OutlierCutOff.size() == m_chi2CutOff.size())
+      measurementSelectorCuts.chi2CutOffOutlier = m_chi2OutlierCutOff;
     if (!m_numMeasurementsCutOff.empty())
       measurementSelectorCuts.numMeasurementsCutOff = m_numMeasurementsCutOff;
 
-- 
GitLab