|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
Consistency checks (decisions.md [composed-features]): NisMonitor, a windowed chi-squared test on the normalized innovation squared of a filter's updates, and nees() with NeesMonitor, the same test on the normalized estimation error squared against a true state, which a simulation knows (see simulate()). More...
#include <algorithm>#include <array>#include <cstddef>#include <expected>#include <limits>#include <type_traits>#include <utility>#include <EmrysFilter/Core/Allocation.h>#include <EmrysFilter/Core/ChiSquared.h>#include <EmrysFilter/Core/Macros.h>#include <EmrysFilter/Core/Math.h>#include <EmrysFilter/Core/NumericError.h>#include <EmrysFilter/Spaces/TagPath.h>#include <EmrysFilter/Distributions/GaussianForm.h>#include <EmrysFilter/Models/Measurement.h>Go to the source code of this file.
Classes | |
| class | Emrys::NisMonitor< Window, MaxWindow, Scalar, Allocator > |
| A chi-squared consistency check over a window of updates. More... | |
| class | Emrys::NeesMonitor< Window, MaxWindow, Scalar, Allocator > |
| A chi-squared consistency check of a filter's estimates against the true states, over a window of them. More... | |
Enumerations | |
| enum class | Emrys::Consistency { Consistency::Consistent , Consistency::Overconfident , Consistency::Underconfident } |
| The verdict of a NisMonitor's or NeesMonitor's verdict(): where the sum of the window's statistics lies against the two-sided bounds() at a probability \( p \), which split \( 1 - p \) equally between the two tails. More... | |
Functions | |
| template<GaussianForm Estimate, typename Derived> | |
| std::expected< typename Estimate::Scalar, GaussianError > | Emrys::nees (Eigen::MatrixBase< Derived > const &truth, Estimate const &estimate) |
| template<typename Path, GaussianForm Estimate, typename Derived> requires requires(Estimate const & estimate) { estimate.template marginal<Path>(); } | |
| std::expected< typename Estimate::Scalar, GaussianError > | Emrys::nees (Eigen::MatrixBase< Derived > const &truth, Estimate const &estimate) |
Variables | |
| constexpr int | Emrys::Cumulative = -2 |
| The window of a NisMonitor or NeesMonitor that drops nothing: its test runs over every statistic added since construction or reset(), and it keeps only their sum and their total degrees of freedom. | |
Consistency checks (decisions.md [composed-features]): NisMonitor, a windowed chi-squared test on the normalized innovation squared of a filter's updates, and nees() with NeesMonitor, the same test on the normalized estimation error squared against a true state, which a simulation knows (see simulate()).
Both are fed by the caller. Read Filters next.