Control System Toolbox関数リファレンス | ![]() ![]() |
minreal
表示
sysr = minreal(sys) sysr = minreal(sys,tol)
詳細
sysr = minreal(sys)
は、状態空間モデルの中の不可制御状態または不可観測状態を削除するか、伝達関数または零点-極-ゲインモデルの極-零点の組み合わせを相殺します。出力sysr
は、最小次数になり、オリジナルモデルsys
と同じ応答特性をもっています。
sysr = minreal(sys,tol)
は、状態量の削除または極零相殺に使用するトレランスを設定します。デフォルト値は、
tol = sqrt(eps)
で、このトレランスを大きくすると、削除される状態、または極-零点の数が増えます。
例題
g = zpk([],1,1) h = tf([2 1],[1 0]) cloop = inv(1+g*h) * g
は、cloop
とタイプすることで得られる非最小の零点-極-ゲインモデルを作成します。
Zero/pole/gain: s (s-1) ------------------- (s-1) (s^2 + s + 1)
での極-零点の組合わせを相殺するには、つぎのように入力します。
cloop = minreal(cloop)
Zero/pole/gain: s ------------- (s^2 + s + 1)
アルゴリズム
極零相殺は、トレランスの範囲内で同一視できる極と零点を直接的に検索します。伝達関数は、まず零点-極-ゲイン型に変換されます。
参考
balreal
グラミアンをベースに入/出力の平衡化
modred
モデルの低次元化
sminreal
構造体のモデルの低次元化
![]() |
margin | modred | ![]() |