Open beomki-yeo opened 1 year ago
While testing the kalman filtering in acts-project/traccc#264, I found that the smoothing results into non-positive-definite covariance matrix for single precision. It looks like we can correct the covariance matrix to be positive definite using the Singular Value Decomposition method as implemented in: https://github.com/acts-project/acts/blob/e1b8ebbf0511c4636df84eb77509efff5501d384/Core/include/Acts/EventData/detail/covariance_helper.hpp#L29-L49
Since Eigen and SMatrix already have the SVD functions, we only need to add it to cmath plugin
While testing the kalman filtering in acts-project/traccc#264, I found that the smoothing results into non-positive-definite covariance matrix for single precision. It looks like we can correct the covariance matrix to be positive definite using the Singular Value Decomposition method as implemented in: https://github.com/acts-project/acts/blob/e1b8ebbf0511c4636df84eb77509efff5501d384/Core/include/Acts/EventData/detail/covariance_helper.hpp#L29-L49
Since Eigen and SMatrix already have the SVD functions, we only need to add it to cmath plugin