|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
SwitchingModel (decisions.md [switching-models], [imm]): a Markov chain on a discrete mode space and the process model each mode follows, one per mode, one per value of a mode axis through switchingModel(), or one shared, and over a fixed step when every model is a FixedStepModel [fixed-step-models]. More...
#include <algorithm>#include <array>#include <cstddef>#include <tuple>#include <type_traits>#include <utility>#include <EmrysFilter/Core/Macros.h>#include <EmrysFilter/Core/Math.h>#include <EmrysFilter/Distributions/Categorical.h>#include <EmrysFilter/Models/MeasurementModel.h>#include <EmrysFilter/Models/ProcessModel.h>#include <EmrysFilter/Spaces/Discrete.h>#include <EmrysFilter/Spaces/Space.h>#include <EmrysFilter/Spaces/Subspace.h>Go to the source code of this file.
Classes | |
| class | Emrys::ModelWithMethod< Model_, Method_ > |
| A process model and the prediction method that one mode of a SwitchingModel predicts it by, in place of the filter's [switching-models]. More... | |
| class | Emrys::SwitchingModel< ModeSpace_, Scalar_, Path_, Models > |
| A process model that switches between modes: a Markov chain on a discrete mode space, and the process model each mode follows [switching-models]. More... | |
| class | Emrys::SwitchingMeasurement< Path_, Measurements > |
| A measurement that switches between modes: one Measurement per value of a mode axis, so that a filter over a Hybrid updates each mode by the measurement that its value in that axis names [imm]. More... | |
Functions | |
| template<typename Model, TransformMethod Method> | |
| ModelWithMethod< Model, Method > | Emrys::withMethod (Model model, Method method) |
| template<typename P, typename ModeSpace, typename Scalar, typename... Models> | |
| SwitchingModel< ModeSpace, Scalar, P, Models... > | Emrys::switchingModel (MarkovChain< ModeSpace, Scalar > chain, Models... models) |
| template<typename P, Measurement... Measurements> | |
| SwitchingMeasurement< P, Measurements... > | Emrys::switchingMeasurement (Measurements... measurements) |
Variables | |
| template<typename ModeSpace_, typename Scalar_, typename Path_, typename... Models> | |
| constexpr bool | Emrys::isFixedStep< SwitchingModel< ModeSpace_, Scalar_, Path_, Models... > > {(isFixedStep<Models> && ...)} |
| A SwitchingModel whose process models are all FixedStepModel is fixed-step too. | |
SwitchingModel (decisions.md [switching-models], [imm]): a Markov chain on a discrete mode space and the process model each mode follows, one per mode, one per value of a mode axis through switchingModel(), or one shared, and over a fixed step when every model is a FixedStepModel [fixed-step-models].
The interacting multiple model filter's process model. withMethod() gives one mode's model a prediction method of its own, ModelWithMethod. SwitchingMeasurement is the model's counterpart for an update: one measurement per value of a mode axis, through switchingMeasurement(). Read Reduction.h next; the design review is docs/guide/imm-filter.md.