Main Content

imp2exp

陰的な線形関係を陽的な入力と出力の関係に変換

説明

B = imp2exp(A,yidx,uidx) は、変数 yu の間の形式 A(:,[yidx;uidx])*[y;u] = 0 の線形制約を陽的な入力/出力関係 y = B*u に変換します。ベクトル yidx および uidx は、B の陽的な関係で参照される A の列 (入力) を参照します。

B = imp2exp(A,yidx,uidx,'min') は、余分な状態を取り除き、A と同じ数の状態をもつモデル B を取得します。この構文は A(:,yidx) にプロパーな逆数がある場合に使用します。スパース モデルではこのオプションは無視されます。通常、スパース性が破棄されるためです。ssgenss、および uss モデルの場合、既定では陰的な形式で B が返されます。isproper または ss(sys,'explicit') を使用して、必要に応じて陽的なモデルを抽出します。

すべて折りたたむ

4 つの変数 [VITW] 間でモーター/発電機の 2 つの不確かな制約 [1-R0-K0-K10]*[VITW]=0 について考えます。不確かさをもつ 2 行 2 列の行列 B[VT]=B*[WI] として求めます。

R = ureal('R',1,'Percentage',[-10 40]); 
K = ureal('K',2e-3,'Percentage',[-30 30]); 
A = [1 -R 0 -K;0 -K 1 0]; 
Yidx = [1 3]; 
Uidx = [4 2]; 
B = imp2exp(A,Yidx,Uidx) 
B =

  Uncertain matrix with 2 rows and 2 columns.
  The uncertainty consists of the following blocks:
    K: Uncertain real, nominal = 0.002, variability = [-30,30]%, 2 occurrences
    R: Uncertain real, nominal = 1, variability = [-10,40]%, 1 occurrences

Type "B.NominalValue" to see the nominal value, "get(B)" to see all properties, and "B.Uncertainty" to interact with the uncertain elements.

コントローラー C と不確かなプラント P の標準的な単一ループ フィードバック接続について考えます。これは、方程式 e = r-y; u = Ce; f = d+u; y = Pf で表されます。

P = tf([1],[1 0]); 
C = tf([2*.707*1 1^2],[1 0]); 
A = [1 -1 0 0 0 -1;0 -C 1 0 0 0;0 0 -1 -1 1 0;0 0 0 0 -P 1]; 
OutputIndex = [6;3;2;5];  % [y;u;e;f] 
InputIndex = [1;4];       % [r;d] 
Sys = imp2exp(A,OutputIndex,InputIndex); 
Sys.InputName = {'r';'d'}; 
Sys.OutputName = {'y';'u';'e';'f'};
pole(Sys)
ans = 16×1 complex

  -0.7070 + 0.7072i
  -0.7070 - 0.7072i
  -0.7070 + 0.7072i
  -0.7070 - 0.7072i
  -0.7070 + 0.7072i
  -0.7070 - 0.7072i
  -0.7070 + 0.7072i
  -0.7070 - 0.7072i
  -0.7070 + 0.7072i
  -0.7070 - 0.7072i
      ⋮

stepplot(Sys)

Figure contains 8 axes objects. Axes object 1 with title From: r contains an object of type line. This object represents Sys. Axes object 2 contains an object of type line. This object represents Sys. Axes object 3 contains an object of type line. This object represents Sys. Axes object 4 contains an object of type line. This object represents Sys. Axes object 5 with title From: d contains an object of type line. This object represents Sys. Axes object 6 contains an object of type line. This object represents Sys. Axes object 7 contains an object of type line. This object represents Sys. Axes object 8 contains an object of type line. This object represents Sys.

入力引数

すべて折りたたむ

陰的なシステム。静的または動的な入力/出力モデルとして指定します。A は次のいずれかになります。

  • tfzpkssfrd オブジェクトなどの数値 LTI モデル

  • umat (Robust Control Toolbox)uss (Robust Control Toolbox)ufrd (Robust Control Toolbox) オブジェクトなどの不確かさをもつモデル

モデル A の行数はインデックス ベクトル yidx の長さと等しくなければなりません。

モデルのチャネルを出力信号に分割するインデックス。ベクトルとして指定します。インデックス ベクトル yidx および uidx は、A の入力チャネルを信号 y および u に分割する方法をそれぞれ指定します。

[yidx,uidx]A のすべての入力が含まれていない場合、imp2exp は不足している y のチャネルを出力モデル B から除外します。そのような場合、imp2expB の出力/行のサブセット B(I,:) のみを保持し、陽的なモデル B の計算には影響しません。

モデルのチャネルを入力信号に分割するインデックス。ベクトルとして指定します。インデックス ベクトル yidx および uidx は、A の入力チャネルを信号 y および u に分割する方法をそれぞれ指定します。

出力引数

すべて折りたたむ

陽的なシステム。静的または動的な入力/出力モデルとして返されます。出力される陽的なモデル B のサブクラスはモデル A と同じです。たとえば、Ass モデルとして指定されている場合、imp2expBss モデルとして返します。

バージョン履歴

R2011b で導入

参考

|