inistate
離散時間システムの状態量初期値を推定
呼び出し手順
X0 = inistate(SYS,Y,U,TOL,PRINTW) X0 = inistate(A,B,C,Y,U); X0 = inistate(A,C,Y); [x0,V,rcnd] = inistate(SYS,Y,U,TOL,PRINTW)
パラメータ
- SYS
指定するシステム, syslin(dt,A,B,C,D)
- Y
システムの出力
- U
システムの入力
- TOL
TOL は行列のランクを推定する際に使用される許容誤差です. TOL > 0 の場合,TOLで指定した値が 条件数の逆数の下界として使用されます.
デフォルト: prod(size(matrix))*epsilon_machine ただし epsilon_machine は相対機械精度です.
- PRINTW
PRINTW は警告メッセージの出力に関するスイッチです.
- =
1: 警告メッセージを出力;
- =
0: 警告メッセージを出力しない.
デフォルト: PRINTW = 0.
- X0
状態量の初期値の推定値
- V
システム状態行列Aを実数Schur形式に縮減する直交行列
- rcnd
解く最小二乗問題の係数行列の条件数の逆数の推定値.
説明
inistate は, (推定された)システム行列, 一連の入力/出力データを指定すると, 離散時間システムの状態量の初期値を推定します.
X0 = inistate(SYS,Y,U,TOL,PRINTW) は, 出力データ Y および 入力データ U を用いて, 離散時間システム SYS = (A,B,C,D) の状態量の初期値 X0 を 推定します. モデルの構造は以下のようになります :
x(k+1) = Ax(k) + Bu(k), k >= 1, y(k) = Cx(k) + Du(k),
ベクトル y(k) および u(k) はそれぞれ Y および U のk行目の 転置です.
最初の入力パラメータ SYS (syslinオブジェクト)の替わりに, 等価な情報を, X0 = inistate(A,B,C,Y,U); または X0 = inistate(A,C,Y);のように 行列パラメータを用いて指定することが可能です.
[x0,V,rcnd] = inistate(SYS,Y,U,TOL,PRINTW) は, x0 以外に, システム状態行列 A を実数 Schur 形式に縮減する 直交行列 V, 解く最小二乗問題の係数行列の条件数の逆数の推定値 も返します.
Report an issue | ||
<< imrep2ss | Identification | lin >> |