|
EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
|
| NEmrys | |
| RAxes | 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]) |
| RComponent | The distribution that a container of several holds one of per element (decisions.md [component-first], [params-and-density]): a Mixture's component, a Hybrid's conditional given a mode |
| RCovarianceExpression | A covariance as a function that stores one takes it: a MatrixExpression, or a DiagonalExpression, whose diagonal holds the variances and whose other entries are zero, so that GaussianParams<State>{mean, variances.asDiagonal()} needs no toDenseMatrix() |
| RCovarianceUpdate | One of the covariance updates: updates::Standard, updates::Symmetric, or updates::Joseph |
| RDiagonalExpression | A diagonal matrix or diagonal expression, possibly cv- or reference-qualified, such as v.asDiagonal() or an Eigen::DiagonalMatrix: what a const Eigen::DiagonalBase<Derived>& parameter accepts |
| RDiscreteSpace | A type usable as a discrete space: a finite set of values |
| REmissionModel | A measurement of a value in the discrete space Space: one log-likelihood per value |
| RExecutionPolicy | An execution policy: execution::sequential, a policy of the standard library such as std::execution::par, or a policy of the user's own with a const forEachIndex(count, f) (see Execution policies) |
| RFixedSizeSpace | A space whose instance holds nothing, so that S{} is the only one there is: a space of fixed size, continuous or discrete, which is an empty type (decisions.md [space-storage]) |
| RGaussianForm | A Gaussian in any of its four forms (decisions.md [gaussian-forms]): GaussianParams, SqrtGaussianParams, InfoGaussianParams, or SqrtInfoGaussianParams, or a GaussianMarginal, the covariance form's marginal, so that a marginal of any form's density is a GaussianForm [form-densities] |
| RHasLogDensity | A density: a type that evaluates its log-density at a value in its space, such as a Gaussian, a KernelDensity, or a Uniform |
| RJacobianMark | Whether T is a mark of the Jacobians a batched function writes, made by a factory in Emrys::jacobians (decisions.md [batched-functions]) |
| RKalmanState | What a KalmanFilter holds and a KalmanRecursion acts on: a Component, such as a Gaussian, or a square-root or information form of the Gaussian (see GaussianForm, decisions.md [gaussian-forms]), whose steps FormSteps.h supplies |
| RMatrixExpression | A dense matrix or matrix expression, possibly cv- or reference-qualified: what a const Eigen::MatrixBase<Derived>& parameter accepts |
| RMeasurement | A measurement: an observed value with its model and the call's inputs, and the method a Kalman update pushes the state through, as observe() makes it; what update() and every filter's update() take (decisions.md [templated-measurements]) |
| RMeasurementModel | A measurement model: what measurementModel() returns, or a composition of such models (decisions.md [model-policies]) |
| RMixtureReductionPolicy | A reduction policy a MixtureFilter over Component_ takes for Update: one that reduces the branches into an output that holds several components (see ReductionPolicy), so that one prior component becomes several, as Keep makes it |
| RPathValue | A path given as a value: a TagPath, such as path<Ownship, Position>, or a tag's own value, such as Position{}, which is a path of one tag |
| RPointSet | A set of sigma points other than Unscented's: a method that evaluates a function at weighted points given in the coordinates of a root of the covariance, with one weight per point for the mean and the covariance alike |
| RProcessModel | A process model: what processModel() returns, a built-in model, or a composition of process models (decisions.md [model-policies]) |
| RProductFactor | What a Product takes as a factor: a density (HasLogDensity), or parameters that toDensity() checks, such as a GaussianParams, which the product holds and checks itself |
| RRealScalar | A type usable as the scalar of a distribution: a real number type such as float, double, or an automatic-differentiation scalar |
| RRecursion | A recursion: a filter without its state, acting in place on a state passed in (decisions.md [filters-and-recursions]) |
| RRecursionOver | A Recursion whose steps act on the parameters of the component Component_, the constraint a filter over that component puts on its recursion |
| RReductionPolicy | A reduction policy for a filter that keeps a State per update: it reduces an update's branches to at most one State (decisions.md [reduction-policies]) |
| RRepair | A repair: what turns a covariance whose root failed into one to retry (decisions.md [sigma-point-axes]) |
| RResampler | Requirements on a resampler for scalar type Scalar and random generator G |
| RResamplerUnder | A Resampler that also runs under the execution policy P, called as r(policy, weights, ancestors, rng) |
| RResamplerWithScratch | A Resampler that also takes scratch, called as r(weights, ancestors, rng, scratch) with scratch a std::span<Scalar> of at least weights.size() + ancestors.size() elements |
| RSpace | A type usable as the space of a distribution |
| RTimeStep | A step of time that converts to Scalar: Scalar itself, or any type with a TimeTraits, such as a floating-point number or a std::chrono::duration |
| RTransformMethod | A method observe() can take: Linearized, an UnscentedRule (Unscented, FourthMomentUnscented, or one of the user's own), a PointSet (Cubature, SphericalSimplex, GaussHermite, or one of the user's own), or an Iterated one of them |
| RUncertainInput | An argument of transform() that is uncertain: something with a mean, a space, and either a covariance, whose lower triangle covarianceLower() gives, or a lower-triangular root \( S \) of it, \( S S^T = \Sigma \), which root() gives |
| RUnscentedRule | A rule for the scaled unscented transform's parameters by the number of coordinates it spreads its points over: a method that places Unscented's \( 2L + 1 \) points with Unscented's weights, at the \( \alpha \), \( \beta \), and \( \kappa \) it gives for each \( L \) |
| RUpkeepOperation | An upkeep operation on a State: an action or a trigger, the library's or the caller's own, a function object called as operation(state) that returns whether it changed the state, or the NumericError that stopped it, a WeightError or a GaussianError (decisions.md [upkeep], [user-extension-points]) |