control.dlqe
- control.dlqe(A, G, C, QN, RN[, N])[source]
Discrete-time linear quadratic estimator (Kalman filter).
Given the system
with unbiased process noise w and measurement noise v with covariances
The dlqe() function computes the observer gain matrix L such that the stationary (non-time-varying) Kalman filter
produces a state estimate x_e[n] that minimizes the expected squared error using the sensor measurements y. The noise cross-correlation
NN
is set to zero when omitted.- Parameters
- A, G, C2D array_like
Dynamics, process noise (disturbance), and output matrices.
- QN, RN2D array_like
Process and sensor noise covariance matrices.
- NN2D array, optional
Cross covariance matrix (not yet supported).
- methodstr, optional
Set the method used for computing the result. Current methods are ‘slycot’ and ‘scipy’. If set to None (default), try ‘slycot’ first and then ‘scipy’.
- Returns
- L2D array
Kalman estimator gain.
- P2D array
Solution to Riccati equation.
- E1D array
Eigenvalues of estimator poles eig(A - L C).
Examples
>>> L, P, E = dlqe(A, G, C, QN, RN) >>> L, P, E = dlqe(A, G, C, QN, RN, NN)