Kalman Filter
SpatiotemporalGPs.KalmanFilter.KFState
— TypeKFState{V, M}
A type for the Kalman Filter State, which is parameterized by the types of the mean estimate and the upper triangular cholesky component of the covariance matrix.
SpatiotemporalGPs.KalmanFilter.KFState
— MethodKFState(; μ, Σ, make_symmetric=true)
A constructor for the Kalman Filter State, which is parameterized by the mean estimate and the covariance matrix. If make_symmetric
is true, the covariance matrix is made symmetric internally. This is useful for numerical stability.
LinearAlgebra.diag
— Methoddiag(M::Cholesky)
is a fast method for getting the diagonal of a cholesky matrix.
This will eventually be included into the Julia standard library. https://github.com/JuliaLang/julia/pull/53767
SpatiotemporalGPs.KalmanFilter.chol_sqrt
— MethodU = chol_sqrt(A)
returns an upper-triangular matrix $U$ such that $A = U^T U$.
SpatiotemporalGPs.KalmanFilter.correct
— Methods_{k+1|k+1} = correct(s_{k+1|k}, y_{k+1}, C, V)
Uses the system model
\[y_{k+1} = C x_{k+1} + v\]
where $v \sim \mathcal{N}(0, V)$ to correct the predicted state.
SpatiotemporalGPs.KalmanFilter.kalman_filter
— Methods_{k+1} = kalman_filter(s_k, y_{k+1}, u_k, A, B, C, V, W)
Runs both the prediction and the correction steps. Assumes a system model
\[ \begin{align} +
Kalman Filter
SpatiotemporalGPs.KalmanFilter.KFState
— TypeKFState{V, MU}
A type for the Kalman Filter State, which is parameterized by the types of the mean estimate and the upper triangular cholesky component of the covariance matrix.
SpatiotemporalGPs.KalmanFilter.KFState
— MethodKFState(; μ, Σ, make_symmetric=true)
A constructor for the Kalman Filter State, which is parameterized by the mean estimate and the covariance matrix. If make_symmetric
is true, the covariance matrix is made symmetric internally. This is useful for numerical stability.
LinearAlgebra.cholesky
— MethodM = cholesky(M::Cholesky)
This is a dummy method to allow for the cholesky
method to be called on a cholesky decomposition.
SpatiotemporalGPs.KalmanFilter.chol_sqrt
— MethodU = chol_sqrt(A)
returns an upper-triangular matrix $U$ such that $A = U^T U$.
SpatiotemporalGPs.KalmanFilter.correct
— Methods_{k+1|k+1} = correct(s_{k+1|k}, y_{k+1}, C, V)
Uses the system model
\[y_{k+1} = C x_{k+1} + v\]
where $v \sim \mathcal{N}(0, V)$ to correct the predicted state.
SpatiotemporalGPs.KalmanFilter.diag
— Methoddiag(M::Cholesky)
is a fast method for getting the diagonal of a cholesky matrix.
This will eventually be included into the Julia standard library. https://github.com/JuliaLang/julia/pull/53767
SpatiotemporalGPs.KalmanFilter.filter
— Methods_{k+1} = filter(s_k, y_{k+1}, u_k, A, B, C, V, W)
Runs both the prediction and the correction steps. Assumes a system model
\[ \begin{align} x_{k+1} &= A x_k + B u_k + w, \\ y_k &= C x_k + v - \end{align}\]
where $w ∼ \mathcal{N}(0, W)$, $v ∼ \mathcal{N}(0, V)$.
SpatiotemporalGPs.KalmanFilter.predict
— Methods_{k+1|k} = predict(s_{k|k}, A, W)
Uses the system model
\[ x_{k+1} = A x_k + w\]
where $w ∼ N(0, W)$ to predict the next state.
SpatiotemporalGPs.KalmanFilter.predict
— Method s_{k+1} = predict(s_k, A, B, u_k, W)
Uses the system model
\[ x_{k+1} = A x_k + B u_k + w\]
where $w ∼ \mathcal{N}(0, W)$ to predict the next state.
SpatiotemporalGPs.KalmanFilter.qrr
— MethodR = qrr(A, B)
returns
\[R = \sqrt{A^TA + B^TB}\]
The result is an UpperTriangular
matrix.
SpatiotemporalGPs.KalmanFilter.Σ
— MethodΣ(s::S) where {S <: KFState}
Get the covariance matrix of the Kalman Filter State.
SpatiotemporalGPs.KalmanFilter.μ
— Methodμ(s::S) where {S <: KFState}
Get the mean estimate of the Kalman Filter State.
SpatiotemporalGPs.KalmanFilter.σ
— Methodσ(s::S) where {S <: KFState}
Get a vector of the standard deviation of the Kalman Filter State
Settings
This document was generated with Documenter.jl version 1.6.0 on Wednesday 21 August 2024. Using Julia version 1.10.4.
where $w ∼ \mathcal{N}(0, W)$, $v ∼ \mathcal{N}(0, V)$.
SpatiotemporalGPs.KalmanFilter.get_Σ
— Methodget_Σ(s::S) where {S <: KFState}
Get the covariance matrix of the Kalman Filter State.
SpatiotemporalGPs.KalmanFilter.get_μ
— Methodget_μ(s::S) where {S <: KFState}
Get the mean estimate of the Kalman Filter State.
SpatiotemporalGPs.KalmanFilter.get_σ
— Methodget_σ(s::S) where {S <: KFState}
Get a vector of the standard deviation of the Kalman Filter State
SpatiotemporalGPs.KalmanFilter.predict
— Methods_{k+1|k} = predict(s_{k|k}, A, W)
Uses the system model
\[ x_{k+1} = A x_k + w\]
where $w ∼ N(0, W)$ to predict the next state.
SpatiotemporalGPs.KalmanFilter.predict
— Method s_{k+1} = predict(s_k, A, B, u_k, W)
Uses the system model
\[ x_{k+1} = A x_k + B u_k + w\]
where $w ∼ \mathcal{N}(0, W)$ to predict the next state.
SpatiotemporalGPs.KalmanFilter.qrr
— MethodR = qrr(A, B)
returns
\[R = \sqrt{A^TA + B^TB}\]
The result is an UpperTriangular
matrix.