probnum.filtsmooth

Bayesian Filtering and Smoothing.

This package provides different kinds of Bayesian filters and smoothers which estimate the distribution over observed and hidden variables in a sequential model. The two operations differ by what information they use. Filtering considers all observations up to a given point, while smoothing takes the entire set of observations into account.

Functions

generate(dynmod, measmod, initrv, times[, …])

Samples true states and observations at pre-determined timesteps “times” for a state space model.

matrix_fraction_decomposition(F, L, h)

Matrix fraction decomposition.

linear_sde_statistics(rv, start, stop, step, …)

Computes mean and covariance of SDE solution.

Classes

Kalman(dynamic_model, measurement_model, initrv)

Gaussian filtering and smoothing, i.e. Kalman-like filters and smoothers.

IteratedKalman(kalman[, stoppingcriterion])

Iterated filter/smoother based on posterior linearisation.

ContinuousEKFComponent(non_linear_sde, num_steps)

Continuous extended Kalman filter transition.

ContinuousUKFComponent(non_linear_sde, dimension)

Continuous unscented Kalman filter transition.

DiscreteEKFComponent(disc_model)

Discrete extended Kalman filter transition.

DiscreteUKFComponent(disc_model, dimension)

Discrete extended Kalman filter transition.

UnscentedTransform(dimension[, spread, …])

Used for unscented Kalman filter.

Transition()

Markov transition rules in discrete or continuous time.

SDE(driftfun, dispmatrixfun, jacobfun)

Stochastic differential equation.

LinearSDE(driftmatrixfun, forcevecfun, …)

Linear stochastic differential equation (SDE),

LTISDE(driftmatrix, forcevec, dispmatrix)

Linear time-invariant continuous Markov models of the form dx = [F x(t) + u] dt + L dBt.

DiscreteGaussian(dynamicsfun, diffmatfun[, …])

Random variable transitions with additive Gaussian noise.

DiscreteLinearGaussian(dynamatfct, forcefct, …)

Discrete, linear Gaussian transition models of the form.

DiscreteLTIGaussian(dynamat, forcevec, diffmat)

Discrete, linear, time-invariant Gaussian transition models of the form.

FiltSmoothPosterior()

Posterior Distribution over States after Filtering/Smoothing.

KalmanPosterior(locations, state_rvs, …)

Posterior Distribution after (Extended/Unscented) Kalman Filtering/Smoothing.

StoppingCriterion([…])

Stopping criteria for iterated filters/smoothers.

FixedPointStopping([atol, rtol, …])

Keep updating until the filter recursion arrives at a fixed-point.

Class Inheritance Diagram

Inheritance diagram of probnum.filtsmooth.gaussfiltsmooth.kalman.Kalman, probnum.filtsmooth.gaussfiltsmooth.iterated_kalman.IteratedKalman, probnum.filtsmooth.gaussfiltsmooth.extendedkalman.ContinuousEKFComponent, probnum.filtsmooth.gaussfiltsmooth.unscentedkalman.ContinuousUKFComponent, probnum.filtsmooth.gaussfiltsmooth.extendedkalman.DiscreteEKFComponent, probnum.filtsmooth.gaussfiltsmooth.unscentedkalman.DiscreteUKFComponent, probnum.filtsmooth.gaussfiltsmooth.unscentedtransform.UnscentedTransform, probnum.filtsmooth.statespace.Transition, probnum.filtsmooth.statespace.SDE, probnum.filtsmooth.statespace.LinearSDE, probnum.filtsmooth.statespace.sde.LTISDE, probnum.filtsmooth.statespace.DiscreteGaussian, probnum.filtsmooth.statespace.DiscreteLinearGaussian, probnum.filtsmooth.statespace.discrete_transition.DiscreteLTIGaussian, probnum.filtsmooth.filtsmoothposterior.FiltSmoothPosterior, probnum.filtsmooth.KalmanPosterior, probnum.filtsmooth.gaussfiltsmooth.stoppingcriterion.StoppingCriterion, probnum.filtsmooth.gaussfiltsmooth.stoppingcriterion.FixedPointStopping