kalman#
Functions#
|
Wrapper for the parallel Kalman filter. |
|
Generate the associative parameters needed for parallel Kalman |
|
See Eqn. 13 & 14 of Sarkka & Garcia-Fernandez (2020) for |
|
Jax implementation of the parallel Kalman filter algorithm |
|
Module Contents#
- smolgp.solvers.parallel.kalman.ParallelKalmanFilter(kernel, X, y, R, return_v_S=False)[source]#
Wrapper for the parallel Kalman filter.
- Parameters:
kernel – StateSpaceModel kernel
X – data coordinates, e.g. time or (time, texp, instid)
y – observations, shape (N, D)
R – observation noise covariance, shape (N, D, D)
- Returns:
b: filtered means C: filtered covariances eta: J:
- Return type:
A
- smolgp.solvers.parallel.kalman.make_associative_params(Phi, H, Q, R, t, y, m0, P0)[source]#
Generate the associative parameters needed for parallel Kalman
See Eqns. 10, 11, 12 from Sarkka & Garcia-Fernandez (2020)
- smolgp.solvers.parallel.kalman._combine_per_pair(left, right)[source]#
See Eqn. 13 & 14 of Sarkka & Garcia-Fernandez (2020) for a the algorithm and notation.
- smolgp.solvers.parallel.kalman.parallel_kalman_filter(asso_params)[source]#
Jax implementation of the parallel Kalman filter algorithm
See Section 4A of Sarkka & Garcia-Fernandez (2020) for a detailed description of the algorithm and notation.
Total runtime (span) complexity is ~O(logN) where N is the number of time steps.