Library
Linear systems
Kalman.LinearObservation
— Type.LinearObservation(P, H, R)
Observe the LinearEvolution P
using y = Hx + v
where $v \sim N(0, R)$.
Examples
O = LinearObservation(LinearEvolution(Φ, Gaussian(b, Q)), H, R)
Kalman.LinearEvolution
— Type.LinearEvolution(Φ, b, Q) <: Evolution
Evolution of the law of x -> Φ x + w
where $w \sim N(0, Q)$.
Examples
evolve(LinearEvolution(Φ, b, Q), 0 => Gaussian(x, P))
Kalman.LinearStateSpaceModel
— Type.LinearStateSpaceModel <: StateSpaceModel
LinearStateSpaceModel(sys, obs)
Combines a linear system sys
and an observations model obs
and to a linear statespace model in a modular way.
Evolves StateObs
objects.
Filtering
Kalman.kalmanfilter
— Function.kalmanfilter(M, t => x0) -> kf
kf(iter)
is an iterator over Gaussian
s or Distributions
representing the filtered distribution of x
where y
iterates over (enumerated) signal values.
Example
kf = kalmanfilter(M, 0 => prior) #
est1 = collect(kf(Y1))
est2 = collect(kf(Y2))
Kalman.Filtered
— Type.filter(Y, P)
"Filter" data Y
with iterator P
calling (handling of nothing
s omitted)
(t, y), state = iterate(Y, state)
(s => x) = dyniterate(P, s => x, (observation = t => y,))
Smoothing
Iterators
DynamicIterators.dyniterate