This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


(Not recommended) Generalized solver for discrete-time algebraic Riccati equation

gdare is not recommended. Use idare instead. For more information, see Compatibility Considerations.


[X,L,report] = gdare(H,J,ns)
[X1,X2,D,L] = gdare(H,J,NS,'factor')


[X,L,report] = gdare(H,J,ns) computes the unique stabilizing solution X of the discrete-time algebraic Riccati equation associated with a Symplectic pencil of the form


The third input ns is the row size of the A matrix.

Optionally, gdare returns the vector L of closed-loop eigenvalues and a diagnosis report with value:

  • -1 if the Symplectic pencil has eigenvalues on the unit circle

  • -2 if there is no finite stabilizing solution X

  • 0 if a finite stabilizing solution X exists

This syntax does not issue any error message when X fails to exist.

[X1,X2,D,L] = gdare(H,J,NS,'factor') returns two matrices X1, X2 and a diagonal scaling matrix D such that X = D*(X2/X1)*D. The vector L contains the closed-loop eigenvalues. All outputs are empty when the Symplectic pencil has eigenvalues on the unit circle.

Compatibility Considerations

expand all

Not recommended starting in R2019a

See Also


Introduced before R2006a