|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
Axes: a way of taking a root \( S \) of a covariance \( P \), \( S S^T = P \), whose columns carry a sigma-point rule's unit points into the input (decisions.md [sigma-point-axes]). More...
#include <EmrysFilter/Distributions/Roots.h>
Axes: a way of taking a root \( S \) of a covariance \( P \), \( S S^T = P \), whose columns carry a sigma-point rule's unit points into the input (decisions.md [sigma-point-axes]).
Every root is \( L Q \), with \( L \) the lower Cholesky factor and \( Q \) orthogonal, so the axes are the choice of \( Q \), and a rule's moments of a function it does not integrate exactly depend on it.
roots::cholesky(), roots::pivoted(), roots::principal(), roots::symmetric(), and roots::along() are the library's, and a list of fallbacks after axes that can fail is axes too. Axes of the user's own are any type with the members below (decisions.md [user-extension-points]); usage.md, "Writing axes", writes one.
const member template taking any square Eigen matrix and reading only its lower triangle: the root, square with cov's rows and its bounds (a fixed or bounded size allocates nothing), or, when canFail, a std::expected of it with a GaussianError.Optional: