From 1289fcddfcc6ad36dbddf0343ac00ea0f8f20899 Mon Sep 17 00:00:00 2001 From: "se.gorbunov" <se.gorbunov@gsi.de> Date: Tue, 23 Aug 2022 11:46:12 +0000 Subject: [PATCH] L1: bugfix in filtration --- reco/L1/L1Algo/L1Filtration.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/reco/L1/L1Algo/L1Filtration.h b/reco/L1/L1Algo/L1Filtration.h index 6e1a095e47..08229ffb8e 100644 --- a/reco/L1/L1Algo/L1Filtration.h +++ b/reco/L1/L1Algo/L1Filtration.h @@ -42,7 +42,7 @@ inline void FilterTime(L1TrackPar& T, fvec t, fvec dt, fvec timeInfo = 1., fvec fvec wi = w / (dt2 + 1.0000001f * HCH); fvec zeta = T.t - t; - fvec zetawi = zeta / ((maskDoFilter & dt2) + HCH); + fvec zetawi = w * zeta / ((maskDoFilter & dt2) + HCH); //T.chi2 += maskDoFilter & (zeta * zetawi); T.chi2 += zeta * zeta * wi; @@ -106,14 +106,14 @@ inline void L1Filter(L1TrackPar& T, const L1UMeasurementInfo& info, fvec u, fvec // it helps to keep the initial track errors reasonably small // the calculations in the covariance matrix are not affected - //const fvec maskDoFilter = (HCH < info.sigma2 * 16.f); - const fvec maskDoFilter = _f32vec4_true; + const fvec maskDoFilter = (HCH < info.sigma2 * 16.f); + //const fvec maskDoFilter = _f32vec4_true; // correction to HCH is needed for the case when sigma2 is so small // with respect to HCH that it disappears due to the roundoff error // fvec wi = w / (info.sigma2 + 1.0000001f * HCH); - fvec zetawi = zeta / ((maskDoFilter & info.sigma2) + HCH); + fvec zetawi = w * zeta / ((maskDoFilter & info.sigma2) + HCH); // T.chi2 += maskDoFilter & (zeta * zetawi); T.chi2 += zeta * zeta * wi; -- GitLab