DiscreteRiccatiSolve

DiscreteRiccatiSolve[{a, b}, {q, r}]
離散代数リッカチ(Riccati)方程式 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}]
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を解く.

詳細とオプション詳細とオプション

  • 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における「」は共役転置を表す.
  • が安定しておりが検出可能で かつ のときのみ,方程式 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 には一意的で対称な半正定値解がある.したがって,行列 の固有値はすべて単位円内にあり解は安定している.
  • が可制御でが可観測であれば解は正定値である.
  • シンプレクティック行列 (a+b.r^(-1).b.TemplateBox[{{(, TemplateBox[{a}, ConjugateTranspose], )}}, Inverse].q -b .r^(-1).b.TemplateBox[{{(, TemplateBox[{a}, ConjugateTranspose], )}}, Inverse]; -TemplateBox[{{(, TemplateBox[{a}, ConjugateTranspose], )}}, Inverse].q TemplateBox[{{(, TemplateBox[{a}, ConjugateTranspose], )}}, Inverse])の固有値は記号式を含んでいてはならない.
  • DiscreteRiccatiSolveMethodオプションをサポートする.次の明示的な設定値が指定できる.
  • "Eigensystem"固有値分解を使う
    "Schur"シューア(Schur)分解を使う
  • デフォルト設定のMethod->Automaticでは,厳密値の行列にはが,実数値行列の主メソッドしてはが選ばれる.
  • Method->"Schur"は実数行列にしか使うことができない.
バージョン 8 の新機能
New to Mathematica? Find your learning path »
Have a question? Ask support »