LinearAlgebra[CARE] - 連続時間代数リカッチ方程式の解を求める
|
使い方
|
|
CARE(A, B, Q, R, S, options, outopts)
|
|
パラメータ
|
|
A
|
-
|
行列(正方)
|
B
|
-
|
行列
|
Q
|
-
|
行列
|
R
|
-
|
(オプション)行列(正方)
|
S
|
-
|
(オプション)行列
|
options
|
-
|
(オプション) keyword = value の形式をとった、結果のオブジェクトおよび(または)方程式のコンストラクタオプションであり、 keyword は haveB または output のいずれか一方となります。
|
outopts
|
-
|
(オプション) outputoptions[o] = list の形式の方程式であり、o は X, L または G のいずれかひとつとなります。
|
|
|
|
|
モデルの説明
|
|
•
|
CARE コマンドは連続時間代数リカッチ方程式の解を求めます。
|
•
|
オプション行列の引数 R および S は、それぞれ恒等行列 および零行列のデフォルトの値となります。
|
•
|
このルーチンは実数の浮動小数点の領域内で動作します。したがって、行列の引数内での入力は必ず numeric の型である必要があります。さらに、計算はハードウェアの浮動小数点モードで実行されます。つまり、Digits の値が evalhf(Digits) を超えるときには実行することができません。
|
|
|
オプション
|
|
2 番目の行列の引数が において B (true) と解釈されるべきか、または、G (false) と解釈されるべきかを指定します。デフォルトの値は true です。
どの結果を返すかを指定するもので、value は単一の名前または名前のリストとすることができます。value の名前は次の中から選択することができます。
–
|
L - シンプレクティック行列 H の閉ループ固有値のベクトル
|
–
|
rcond - X によって解を求めた系の条件数の逆数
|
–
|
G - であるゲイン行列
|
返されるオブジェクトのデフォルトは X です。
•
|
コンストラクタ オプションは、結果を作成する行列またはベクトルコンストラクタに追加情報(読み出し専用[readonly]、形態[shape]、保存[storage]、順序[order]、データ種別[datatype]、および属性[attributes])を提供します。これらのオプションは outputoptions[o]=[...], の形式でも提供される場合があり、このとき [...] は Maple リストを表します。コンストラクタ オプションが、直接的な使い方と outputoptions[o] オプションの両方で提供される場合、(順序にかかわらず)後者が優先します。
|
|
|
アプリケーションと例題
|
|
>
|
a := Matrix([[-3,2],[1,1]]):
|
>
|
b := Matrix([[0],[1]]):
|
>
|
CARE(a, b, c^+ . c, r, output=[X,L]);
|
| (5.1) |
>
|
a := Matrix([[0,1],[0,0]]):
|
>
|
q := Matrix([[1,0],[0,2]]):
|
>
|
b := Matrix([[0,0],[0,1]]):
|
| (5.2) |
| (5.3) |
>
|
CARE(a,b,q,output=[X,L,rcond]);
|
| (5.4) |
|
|