LTISDEModel¶
-
class
probnum.filtsmooth.
LTISDEModel
(driftmatrix, force, dispmatrix, diffmatrix)[source]¶ Bases:
probnum.filtsmooth.LinearSDEModel
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. dispersionmatrix
driftmatrix
force
ndim
Spatial dimension (utility attribute). Methods Summary
chapmankolmogorov
(start, stop, step, …)Solves Chapman-Kolmogorov equation from start to stop via step. 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) sample
(start, stop, step, initstate, **kwargs)Samples from initstate
atstart
tostop
with stepsizestep
.Attributes Documentation
-
diffusionmatrix
¶ Evaluates Q.
-
dispersionmatrix
¶
-
driftmatrix
¶
-
force
¶
-
ndim
¶ Spatial dimension (utility attribute).
Methods Documentation
-
chapmankolmogorov
(start, stop, step, randvar, **kwargs)[source]¶ Solves Chapman-Kolmogorov equation from start to stop via step.
For LTISDEs, there is a closed form solutions to the ODE for mean and kernels (see super().chapmankolmogorov(…)). We exploit this for [(stop - start)/step] steps.
References
Eq. (8) in http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.390.380&rep=rep1&type=pdf and Eq. 6.41 and Eq. 6.42 in Applied SDEs.
-
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)
-
sample
(start, stop, step, initstate, **kwargs)¶ Samples from
initstate
atstart
tostop
with stepsizestep
.Start, stop and step lead to a np.arange-like interface. Returns a single element at the end of the time, not the entire array!