kalman
======

.. py:module:: smolgp.solvers.integrated.kalman


Functions
---------

.. autoapisummary::

   smolgp.solvers.integrated.kalman.IntegratedKalmanFilter
   smolgp.solvers.integrated.kalman.integrated_kalman_filter


Module Contents
---------------

.. py:function:: IntegratedKalmanFilter(kernel, X, y, t_states, obsid, instid, stateid, R, return_v_S=False)

   Wrapper for integrated_kalman_filter function

   :param kernel: IntegratedStateSpaceModel kernel
   :param X: Array of size N, data coordinates (e.g. (time, texp, instid))
   :param y: Array of size (N, D), measurements at the data coordinates
   :param t_states: Array of size K, sorted time coordinate of all states (exposure starts and ends)
   :param obsid: Array of size N, which observation (0,...,N-1) is being made at each state k
   :param instid: Array of size N, which instrument (0,...,Ninst-1) recorded observation n
   :param stateid: Array of size K, 0 for exposure-start, 1 for exposure-end
   :param R: Observation noise covariance, shape (N, D, D)
   :param return_v_S: Whether to return innovation and its covariance (for likelihood computation)

   :returns: filtered means
             P_filtered : filtered covariances
             m_predicted: predicted means
             P_predicted: predicted covariances
   :rtype: m_filtered


.. py:function:: integrated_kalman_filter(A_aug, Q_aug, H_aug, R, RESET, X, y, t_states, obsid, instid, stateid, m0, P0)

   Jax implementation of the integrated Kalman filter algorithm

   See Section 3.2.1 in Rubenzahl & Hattori et al. (in prep)
   for detailed description of the algorithm and notation.


