|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
What a filter's update did: the branches of the update before reduction, with their weights and innovations but not their posteriors (decisions.md [innovation-statistics]), and whether the reduction policy accepted the measurement. More...
#include <EmrysFilter/Models/MeasurementUpdate.h>
Public Types | |
| using | Scalar = Scalar_ |
| the scalar type | |
| using | MeasurementSpaceType = MeasurementSpace |
| the measurement space | |
| using | BranchType = FilterBranch<MeasurementSpace, Scalar> |
| one branch | |
| using | allocator_type = Allocator |
| where a run-time number of branches comes from | |
| using | Container |
| The branches' container: an array when their number is known at compile time, and otherwise a buffer from Allocator. | |
Public Member Functions | |
| FilterUpdate ()=default | |
| no branches, not accepted | |
| FilterUpdate (Container branches, Scalar mixtureLogLikelihood=0, bool accepted=false) | |
| The branches branches, as MeasurementUpdate(branches, mixtureLogLikelihood), and whether the policy accepted the measurement, accepted. | |
| Scalar | logLikelihood () const |
| Eigen::Index | innovationSize () const |
| Allocator | get_allocator () const |
Public Attributes | |
| Container | branches |
| one per noise component, weights summing to one | |
| bool | accepted = false |
| whether the policy accepted the measurement | |
Static Public Attributes | |
| static constexpr std::size_t | BranchCount = Count |
| the number of branches, or std::dynamic_extent | |
What a filter's update did: the branches of the update before reduction, with their weights and innovations but not their posteriors (decisions.md [innovation-statistics]), and whether the reduction policy accepted the measurement.
The log-likelihood and each branch's NIS are computed from the innovations when first asked for, unless the filter had them already. When accepted is false, the policy (such as a Gate) rejected the measurement and the state kept its prior. Pass it to a NisMonitor as any update.
| MeasurementSpace | the measurement space |
| Count | number of branches if known at compile time, otherwise std::dynamic_extent |
| Scalar_ | the scalar type |
| Allocator | where a run-time number of branches comes from (see Allocation) |
| using Emrys::FilterUpdate< MeasurementSpace, Count, Scalar_, Allocator >::Container |
The branches' container: an array when their number is known at compile time, and otherwise a buffer from Allocator.
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |