Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

gram

可制御グラミアンおよび可観測グラミアン

構文

Wc = gram(sys,'c')
Wc = gram(sys,'o')
Wc = gram(___,opt)

説明

Wc = gram(sys,'c') は、状態空間 (ss) モデル sys の可制御グラミアンを計算します。

Wc = gram(sys,'o') は、ss モデル sys の可観測グラミアンを計算します。

Wc = gram(___,opt) は、時間または周波数を制限したグラミアンを計算します。opt は、計算用の時間間隔または周波数範囲を指定するオプション セットです。optgramOptions コマンドを使用して作成します。

グラミアンを使用して、状態空間モデルの可制御、可観測の特性、モデル低次元化を調べることができます。[1]グラミアンには、ctrbobsv によって作成される可制御行列および可観測行列よりも優れた数値プロパティがあります。

以下の連続時間状態空間モデルを想定します。

x˙=Ax+Buy=Cx+Du

可制御グラミアンは次によって定義されます。

Wc=0eAτBBTeATτdτ

可制御グラミアンは、(A, B) が可制御な場合に限り、正定値です。

可観測グラミアンは次によって定義されます。

Wo=0eATτCTCeAτdτ

可観測グラミアンは、(A, C) が可観測な場合に限り、正定値です。

可制御および可観測グラミアンの離散時間の等価物はそれぞれ次のようになります。

Wc=k=0AkBBT(AT)k,Wo=k=0(AT)kCTCAk

時間または周波数を制限したグラミアンを使用して、特定の時間間隔または周波数範囲内の状態の可制御性または可観測性を調べます。これらのグラミアンの定義については、[2]を参照してください。

周波数を制限したグラミアンの計算

次の状態空間モデルの可制御グラミアンを計算します。最大のエネルギーを含む周波数範囲に計算を絞り込みます。

sys = ss([-.1 -1;1 0],[1;0],[0 1],0);

このモデルは 1 rad/s でピークに達します。gramOptions を使用して、その周波数の周囲に範囲を指定します。

opt = gramOptions('FreqIntervals',[0.8 1.2]);
gc = gram(sys,'c',opt)
gc = 2×2

    4.2132   -0.0000
   -0.0000    4.2433

制限

行列 A は安定でなければなりません (すべての固有値は連続時間で負の実数部をもち、大きさは離散時間で厳密に 1 未満です)。

アルゴリズム

可制御グラミアン Wc は連続時間リアプノフ方程式を解くことで得られます。

AWc+WcAT+BBT=0

またはその離散時間の等価物を解くことで得られます。

AWcATWc+BBT=0

同様に、可観測グラミアン Wo はリアプノフ方程式

ATWo+WoA+CTC=0

を連続時間で解き、リアプノフ方程式

ATWoAWo+CTC=0

を離散時間で解きます。

時間および周波数を制限したグラミアンの計算の詳細については、[2]を参照してください。

参考文献

[1] Kailath, T., Linear Systems, Prentice-Hall, 1980.

[2] Gawronski, W. and J.N. Juang. “Model Reduction in Limited Time and Frequency Intervals.” International Journal of Systems Science. Vol. 21, Number 2, 1990, pp. 349–376.

R2006a より前に導入