EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
Loading...
Searching...
No Matches
Emrys::Repair Concept Reference

A repair: what turns a covariance whose root failed into one to retry (decisions.md [sigma-point-axes]). More...

#include <EmrysFilter/Distributions/Roots.h>

Concept definition

template<typename T>
concept Repair = requires(T const & repair, Eigen::Matrix3d const & cov) {
{ repair.repaired(cov) } -> std::same_as<std::expected<Eigen::Matrix3d, GaussianError>>;
}
A repair: what turns a covariance whose root failed into one to retry (decisions.md [sigma-point-axes...
Definition Roots.h:321

Detailed Description

A repair: what turns a covariance whose root failed into one to retry (decisions.md [sigma-point-axes]).

roots::ridge() is the library's. A repair of the user's own, such as an eigenvalue floor or Higham's nearest positive definite matrix, is any type with the member below (decisions.md [user-extension-points]).

  • repaired(cov), a const member template taking any square Eigen matrix and reading only its lower triangle: the matrix to retry, of cov's plain type, or a GaussianError, as a std::expected.

Optional, as for Axes: repaired(cov, sink), which calls sink with a report of the type Report<Scalar> the repair names, such as the ridge added.