LinearSDEModel¶
-
class
probnum.filtsmooth.
LinearSDEModel
(driftmatrixfct, forcfct, dispmatrixfct, diffmatrix)¶ Bases:
probnum.filtsmooth.ContinuousModel
Linear time-continuous Markov models given by the solution of the stochastic differential equation \(dx = [F(t) x(t) + u(t)] dt + L(t) dB(t)\).
Parameters: - driftmatrixfct (callable, signature=(t, **kwargs)) – This is F = F(t). The evaluations of this function are called the drift(matrix) of the SDE. Returns np.ndarray with shape=(n, n)
- forcfct (callable, signature=(t, **kwargs)) – This is u = u(t). Evaluations of this function are called the force(vector) of the SDE. Returns np.ndarray with shape=(n,)
- dispmatrixfct (callable, signature=(t, **kwargs)) – This is L = L(t). Evaluations of this function are called the dispersion(matrix) of the SDE. Returns np.ndarray with shape=(n, s)
- diffmatrix (np.ndarray, shape=(s, s)) – This is the diffusion matrix Q of the Brownian motion. It is always a square matrix and the size of this matrix matches the number of columns of the dispersionmatrix.
Notes
If initial conditions are Gaussian, the solution is a Gauss-Markov process. We assume Gaussianity for
chapmankolmogorov()
.Attributes Summary
diffusionmatrix
Evaluates Q. ndim
Spatial dimension (utility attribute). Methods Summary
chapmankolmogorov
(start, stop, step, …)Solves differential equations for mean and kernels of the SDE solution (Eq. 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.
-
ndim
¶ Spatial dimension (utility attribute).
Methods Documentation
-
chapmankolmogorov
(start, stop, step, randvar, **kwargs)[source]¶ Solves differential equations for mean and kernels of the SDE solution (Eq. 5.50 and 5.51 or Eq. 10.73 in Applied SDEs).
By default, we assume that
randvar
is Gaussian.
-
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!