# LTISDEModel¶

class probnum.filtsmooth.LTISDEModel(driftmatrix, force, dispmatrix, diffmatrix)[source]

Linear time-invariant continuous Markov models of the form dx = [F x(t) + u] dt + L dBt. In the language of dynamic models, x(t) : state process F : drift matrix u : forcing term L : dispersion matrix. Bt : Brownian motion with constant diffusion matrix Q.

Parameters: driftmatrix (np.ndarray, shape=(n, n)) – This is F. It is the drift matrix of the SDE. force (np.ndarray, shape=(n,)) – This is U. It is the force vector of the SDE. dispmatrix (np.ndarray, shape(n, s)) – This is L. It is the dispersion matrix of the SDE. diffmatrix (np.ndarray, shape=(s, s)) – This is the diffusion matrix Q of the Brownian motion driving the SDE.

Notes

It assumes Gaussian initial conditions (otherwise it is no Gauss-Markov process).

Attributes Summary

 diffusionmatrix Evaluates Q. dimension Spatial dimension (utility attribute). dispersionmatrix driftmatrix force

Methods Summary

 __call__(arr_or_rv, RandomVariable], start, …) Transition a random variable or a realization of one. dispersion(time, state, **kwargs) Evaluates l(t, x(t)) = L(t). drift(time, state, **kwargs) Evaluates f(t, x(t)) = F(t) x(t) + u(t). jacobian(time, state, **kwargs) maps t -> F(t) 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

Evaluates Q.

dimension

Spatial dimension (utility attribute).

dispersionmatrix
driftmatrix
force

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)

Evaluates l(t, x(t)) = L(t).

drift(time, state, **kwargs)

Evaluates f(t, x(t)) = F(t) x(t) + u(t).

jacobian(time, state, **kwargs)

maps t -> F(t)

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$$. 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.

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$$. 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.

transition_realization()