Continuous-time linear quadratic estimator (Kalman filter).
Given the continuous-time system
with unbiased process noise w and measurement noise v with covariances
The lqe() function computes the observer gain matrix L such that the stationary (non-time-varying) Kalman filter
produces a state estimate x_e that minimizes the expected squared error using the sensor measurements y. The noise cross-correlation NN
is set to zero when omitted.
The function can be called with either 3, 4, 5, or 6 arguments:
L, P, E = lqe(sys, QN, RN)
L, P, E = lqe(sys, QN, RN, NN)
L, P, E = lqe(A, G, C, QN, RN)
L, P, E = lqe(A, G, C, QN, RN, NN)
where sys
is an LTI
object, and A
, G
, C
, QN
, RN
, and NN
are 2D arrays or matrices of appropriate dimension.
Dynamics, process noise (disturbance), and output matrices.
StateSpace
or TransferFunction
Linear I/O system, with the process noise input taken as the system input.
Process and sensor noise covariance matrices.
Cross covariance matrix. Not currently implemented.
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’.
Kalman estimator gain.
Solution to Riccati equation:
Eigenvalues of estimator poles eig(A - L C).
Notes
If the first argument is an LTI object, then this object will be used to define the dynamics, noise and output matrices. Furthermore, if the LTI object corresponds to a discrete-time system, the dlqe
function will be called.
Examples
>>> L, P, E = lqe(A, G, C, QN, RN) >>> L, P, E = lqe(A, G, C, Q, RN, NN)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4