integrated#
This subpackage implements the Kalman filter and RTS smoother for an augmented
state space model which includes an integral state as a
IntegratedStateSpaceSolver. This is intended to be used with
smolgp.kernels.integrated state space models to properly account
for integrated (e.g. exposure-averaged) measurements.
See Integrated Measurements for a tutorial on using the integrated solvers.
Submodules#
Classes#
A solver that uses |
|
A solver that uses |
Package Contents#
- class smolgp.solvers.integrated.IntegratedStateSpaceSolver(kernel: smolgp.kernels.base.StateSpaceModel, X: tinygp.helpers.JAXArray, noise: tinygp.helpers.JAXArray)[source]#
Bases:
equinox.ModuleA solver that uses
jax.lax.scanto implement Kalman filtering and RTS smoothing for integrated measurements- X: tinygp.helpers.JAXArray#
- noise: tinygp.helpers.JAXArray#
- state_coords: tinygp.helpers.JAXArray#
- condition(y, return_v_S=False) tinygp.helpers.JAXArray[source]#
Compute the Kalman predicted, filtered, and RTS smoothed means and covariances at each of the input coordinates
- predict(X_test, conditioned_results) tinygp.helpers.JAXArray[source]#
Algorithm for making predictions at arbitrary coordinates X_test
- Parameters:
X_test – The test coordinates.
conditioned_results – The output of self.condition()
- Returns:
Predicted means of the states at X_test pred_var : Predicted variances of the states at X_test
- Return type:
pred_mean
- There are three cases:
- Retrodictionsmoothing from the first data point
using the prior as the prediction
- Interpolationfiltering from most recent data point
and smoothing from next future point
Extrapolation : predicting from final filtered point
- class smolgp.solvers.integrated.ParallelIntegratedStateSpaceSolver(kernel: smolgp.kernels.base.StateSpaceModel, X: tinygp.helpers.JAXArray, noise: tinygp.helpers.JAXArray)[source]#
Bases:
equinox.ModuleA solver that uses
jax.lax.associative_scanto implement parallel Kalman filtering and RTS smoothing for integrated measurements- X: tinygp.helpers.JAXArray#
- noise: tinygp.helpers.JAXArray#
- state_coords: tinygp.helpers.JAXArray#
- _state_coords: tinygp.helpers.JAXArray#
- condition(y, return_v_S=True) tinygp.helpers.JAXArray[source]#
Compute the Kalman predicted, filtered, and RTS smoothed means and covariances at each of the input coordinates
- predict(X_test, conditioned_results) tinygp.helpers.JAXArray[source]#
Algorithm for making predictions at arbitrary coordinates X_test
- Parameters:
X_test – The test coordinates.
conditioned_results – The output of self.condition()
observation_model – (optional) H for the test points should be a function just like self.kernel.observation_model
- There are three cases:
- Retrodictionsmoothing from the first data point
using the prior as the prediction
- Interpolationfiltering from most recent data point
and smoothing from next future point
Extrapolation : predicting from final filtered point