ContinuousModel

class probnum.filtsmooth.ContinuousModel

Bases: probnum.filtsmooth.Transition

Markov transition rules in continuous time.

Such a rule is described by a stochastic differential equation (SDE),

\[d x_t = f(t, x_t) d t + d w_t\]

driven by a Wiener process \(w\).

Todo

This should be initializable similarly to DiscreteGaussianModel (where transition_realization() and transition_rv() simply raise NotImplementedError). This would change a bit of code, though. See Issue #219.

Attributes Summary

diffusionmatrix
dimension Dimension of the transition model.

Methods Summary

__call__(arr_or_rv, RandomVariable], start, …) Transition a random variable or a realization of one.
dispersion(time, state, **kwargs)
drift(time, state, **kwargs)
jacobian(time, state, **kwargs)
transition_realization(real, start, stop, …) Transition a realization of a random variable from time \(t\) to time \(t+\Delta t\).
transition_rv(rv, start, stop, **kwargs) Transition a random variable from time \(t\) to time \(t+\Delta t\).

Attributes Documentation

diffusionmatrix
dimension

Dimension of the transition model.

Methods Documentation

__call__(arr_or_rv: Union[numpy.ndarray, RandomVariable], start: float = None, stop: float = None, **kwargs) -> ('RandomVariable', typing.Dict)

Transition a random variable or a realization of one.

The input is either interpreted as a random variable or as a realization. Accordingly, the respective methods are called: transition_realization() or transition_rv().

dispersion(time, state, **kwargs)[source]
drift(time, state, **kwargs)[source]
jacobian(time, state, **kwargs)[source]
transition_realization(real, start, stop, **kwargs)[source]

Transition a realization of a random variable from time \(t\) to time \(t+\Delta t\).

For random variable \(x_t\), it returns the random variable defined by

\[x_{t + \Delta t} \sim p(x_{t + \Delta t} | x_t = r) .\]

This is different to transition_rv() which computes the parametrization of \(x_{t + \Delta t}\) based on the parametrization of \(x_t\).

Nb: Think of transition as a verb, i.e. this method “transitions” a realization of a random variable.

Parameters:
  • real – Realization of the random variable.
  • start – Starting point \(t\).
  • stop – End point \(t + \Delta t\).
Returns:

  • RandomVariable – Random variable, describing the state at time \(t + \Delta t\) based on realization at time \(t\).
  • dict – Additional information in form of a dictionary, for instance the cross-covariance in the prediction step, access to which is useful in smoothing.

See also

transition_rv()
Apply transition to a random variable.
transition_rv(rv, start, stop, **kwargs)[source]

Transition a random variable from time \(t\) to time \(t+\Delta t\).

For random variable \(x_t\), it returns the random variable defined by

\[x_{t + \Delta t} \sim p(x_{t + \Delta t} | x_t) .\]

This returns a random variable where the parametrization depends on the paramtrization of \(x_t\). This is different to transition_rv() which computes the parametrization of \(x_{t + \Delta t}\) based on a realization of \(x_t\).

Nb: Think of transition as a verb, i.e. this method “transitions” a random variable.

Parameters:
  • rv – Realization of the random variable.
  • start – Starting point \(t\).
  • stop – End point \(t + \Delta t\).
Returns:

  • RandomVariable – Random variable, describing the state at time \(t + \Delta t\) based on realization at time \(t\).
  • dict – Additional information in form of a dictionary, for instance the cross-covariance in the prediction step, access to which is useful in smoothing.

See also

transition_realization()
Apply transition to a realization of a random variable.