Robust Control Toolbox    
daresolv

Generalized discrete algebraic Riccati solver.

Syntax

Description
Daresolv solves the discrete algebraic Riccati equation

where P = P2/P1 is the solution for which the eigenvalues of A - RP are inside the unit disk. This solution exists and is unique provided that the associated discrete Hamiltonian matrix

has no eigenvalues on the unit circle; otherwise, the flag wellposed is set to the string value 'FALSE'.

The input variables and output variables are otherwise identical to the continuous time case--see aresolv. If Type = 1 the eigenvector approach is used. If Type = 2 the Schur vector approach is used. The eigenvector approach is selected by default when no Type is specified, unless the Hamiltonian matrix is defective in which case the algorithm defaults to the Schur approach. The residual and closed loop eigenvalues are returned in variables perr and lamp.

Algorithm
The algorithm is essentially the same as that employed for the continuous version of this function, save for the difference in the discrete Hamiltonian. The matrices P1 and P2 are computed such that the columns of

form a basis for the stable eigenspace of the discrete Hamiltonian, i.e., the space spanned by the eigenvectors corresponding to eigenvalues in the unit disk. See aresolv.

Limitations
The Riccati equation is ill-posed if the Hamiltonian H has eigenvalues on the unit circle. In cases in which , it suffices for the system (A,R,Q) to be both stabilizable and detectable to avoid eigenvalues on the unit circle; in this case, the unique stabilizing Riccati solution will be positive semidefinite.

See Also
are, cschur, aresolv, lqrc, reig, driccond

References

   [1]
A. J. Laub, "A Schur Method for Solving Algebraic Riccati Equations," IEEE Trans. Autom. Control, AC-24, pp. 913-921, 1979.


cgloci, dcgloci des2ss