DiscreteRiccatiSolve

DiscreteRiccatiSolve[{a,b},{q,r}]
gives the matrix that is the stabilizing solution of the discrete algebraic Riccati equation TemplateBox[{a}, ConjugateTranspose].x.a-x-TemplateBox[{a}, ConjugateTranspose].x.b.TemplateBox[{{(, {r, +, {TemplateBox[{b}, ConjugateTranspose], ., x, ., b}}, )}}, Inverse].TemplateBox[{b}, ConjugateTranspose].x.a+q=0.

DiscreteRiccatiSolve[{a,b},{q,r,p}]
solves TemplateBox[{a}, ConjugateTranspose].x.a-x-(TemplateBox[{a}, ConjugateTranspose].x.b+p).TemplateBox[{{(, {r, +, {TemplateBox[{b}, ConjugateTranspose], ., x, ., b}}, )}}, Inverse].(TemplateBox[{b}, ConjugateTranspose].x.a+TemplateBox[{p}, ConjugateTranspose])+q=0.

Details and OptionsDetails and Options

  • In TemplateBox[{a}, ConjugateTranspose].x.a-x-TemplateBox[{a}, ConjugateTranspose].x.b.TemplateBox[{{(, {r, +, {TemplateBox[{b}, ConjugateTranspose], ., x, ., b}}, )}}, Inverse].TemplateBox[{b}, ConjugateTranspose].x.a+q=0, denotes the conjugate transpose.
  • The equation TemplateBox[{a}, ConjugateTranspose].x.a-x-TemplateBox[{a}, ConjugateTranspose].x.b.TemplateBox[{{(, {r, +, {TemplateBox[{b}, ConjugateTranspose], ., x, ., b}}, )}}, Inverse].TemplateBox[{b}, ConjugateTranspose].x.a+q=0 has a unique, symmetric, positive semidefinite solution only if is stabilizable, is detectable, , and . Consequently, all the eigenvalues of the matrix lie inside the unit circle, and the solution is stabilizing.
  • The solution is positive definite when is controllable and is observable.
  • DiscreteRiccatiSolve supports a Method option. The following settings can be specified:
  • Automaticautomatically determined method
    "Eigensystem"based on eigen decomposition
    "GeneralizedEigensystem"based on generalized eigen decomposition
    "GeneralizedSchur"based on generalized Schur decomposition
    "InverseFree"a variant of
    "MatrixSign"
  • iterative method using the matrix sign function
  • "Newton"iterative Newton method
    "Schur"based on Schur decomposition
  • All methods apply to approximate numeric matrices. apply to exact and symbolic matrices.
Introduced in 2010
(8.0)
| Updated in 2014
(10.0)