EmrysFilter 0.1.0
State estimation utilities in C++23 using Eigen
Loading...
Searching...
No Matches
Concepts
Here is a list of all documented concepts with brief descriptions:
 NEmrys
  RAxesAxes: 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])
  RComponentThe 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
  RCovarianceExpressionA 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()
  RCovarianceUpdateOne of the covariance updates: updates::Standard, updates::Symmetric, or updates::Joseph
  RDiagonalExpressionA 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
  RDiscreteSpaceA type usable as a discrete space: a finite set of values
  REmissionModelA measurement of a value in the discrete space Space: one log-likelihood per value
  RExecutionPolicyAn 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)
  RFixedSizeSpaceA 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])
  RGaussianFormA 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]
  RHasLogDensityA density: a type that evaluates its log-density at a value in its space, such as a Gaussian, a KernelDensity, or a Uniform
  RJacobianMarkWhether T is a mark of the Jacobians a batched function writes, made by a factory in Emrys::jacobians (decisions.md [batched-functions])
  RKalmanStateWhat 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
  RMatrixExpressionA dense matrix or matrix expression, possibly cv- or reference-qualified: what a const Eigen::MatrixBase<Derived>& parameter accepts
  RMeasurementA 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])
  RMeasurementModelA measurement model: what measurementModel() returns, or a composition of such models (decisions.md [model-policies])
  RMixtureReductionPolicyA 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
  RPathValueA 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
  RPointSetA 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
  RProcessModelA process model: what processModel() returns, a built-in model, or a composition of process models (decisions.md [model-policies])
  RProductFactorWhat 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
  RRealScalarA type usable as the scalar of a distribution: a real number type such as float, double, or an automatic-differentiation scalar
  RRecursionA recursion: a filter without its state, acting in place on a state passed in (decisions.md [filters-and-recursions])
  RRecursionOverA Recursion whose steps act on the parameters of the component Component_, the constraint a filter over that component puts on its recursion
  RReductionPolicyA 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])
  RRepairA repair: what turns a covariance whose root failed into one to retry (decisions.md [sigma-point-axes])
  RResamplerRequirements on a resampler for scalar type Scalar and random generator G
  RResamplerUnderA Resampler that also runs under the execution policy P, called as r(policy, weights, ancestors, rng)
  RResamplerWithScratchA 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
  RSpaceA type usable as the space of a distribution
  RTimeStepA 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
  RTransformMethodA 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
  RUncertainInputAn 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
  RUnscentedRuleA 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 \)
  RUpkeepOperationAn 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])