Skip to content

[ALICE3] Protect LUT smearing against negative eigenvalues - #18726

Merged
mario-krueger merged 1 commit into
AliceO2Group:masterfrom
mario-krueger:alice3-smearer-nan-guard
Nov 13, 2026
Merged

mario-krueger merged 1 commit into
AliceO2Group:masterfrom
mario-krueger:alice3-smearer-nan-guard

Conversation

@mario-krueger

Copy link
Copy Markdown
Member

A LUT covariance matrix close to singular (strongly correlated track parameters at low pT) can carry a tiny negative eigenvalue (~ -1e-7) from numerical precision. std::sqrt of it gives NaN, the smeared track gets NaN parameters and is dropped by the on-the-fly tracker (hNaNBookkeeping). This shows up as holes in the tracking efficiency in single pT bins and eta halves, e.g. for e, pi, K, p between 0.09 and 0.25 GeV/c with 0.5 T LUTs.

Clamp the eigenvalue at zero before taking the square root: such a mode has practically zero width, so it is simply not smeared.

A LUT covariance matrix close to singular (strongly correlated track
parameters at low pT) can carry a tiny negative eigenvalue (~ -1e-7) from
numerical precision. std::sqrt of it gives NaN, the smeared track gets NaN
parameters and is dropped by the on-the-fly tracker (hNaNBookkeeping).
This shows up as holes in the tracking efficiency in single pT bins and eta
halves, e.g. for e, pi, K, p between 0.09 and 0.25 GeV/c with 0.5 T LUTs.

Clamp the eigenvalue at zero before taking the square root: such a mode has
practically zero width, so it is simply not smeared.
@github-actions

Copy link
Copy Markdown

O2 linter results: ❌ 0 errors, ⚠️ 10 warnings, 🔕 0 disabled

@mario-krueger
mario-krueger enabled auto-merge (squash) November 13, 2026 10:20
@mario-krueger
mario-krueger merged commit 0b2823e into AliceO2Group:master Nov 13, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants