acts-project / acts

Experiment-independent toolkit for (charged) particle track reconstruction in (high energy) physics experiments implemented in modern C++
https://acts.readthedocs.io
Mozilla Public License 2.0
104 stars 167 forks source link

FPE: RootTrajectoryStatesWriter #2348

Open paulgessinger opened 1 year ago

github-actions[bot] commented 1 year ago

This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs.

AJPfleger commented 1 month ago

Description

Some of the diagonal elements of the parameter covariance happen to be negative sometimes.

// track parameters error
// MARK: fpeMaskBegin(FLTINV, 1, #2348)
m_err_eLOC0[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundLoc0, Acts::eBoundLoc0)));
m_err_eLOC1[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundLoc1, Acts::eBoundLoc1)));
m_err_ePHI[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundPhi, Acts::eBoundPhi)));
m_err_eTHETA[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundTheta, Acts::eBoundTheta)));
m_err_eQOP[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundQOverP, Acts::eBoundQOverP)));
m_err_eT[ipar].push_back(
    std::sqrt(covariance(Acts::eBoundTime, Acts::eBoundTime)));
// MARK: fpeMaskEnd(FLTINV)

Justification

The root-writers are only part of the Examples. To check the validity of the returned track (including covariances) lies in the responsibility of the user, so we do not need to handle it. Fixing the erroneous behaviour is desired, but not at cost of computational performance.

Reproduce

The FPE does only occur in gitlab CI jobs.

CI Bridge / linux_physmon

CI Bridge / linux_test_examples:

github-actions[bot] commented 3 weeks ago

This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs.