Main Content

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

passiveplot

受動性インデックスの周波数の関数としての計算またはプロット

説明

passiveplot(G) は、動的システム G の相対受動性インデックスを周波数の関数としてプロットします。I + G が最小位相の場合、相対受動性インデックスは (I - G)(I + G)^-1 の特異値です。最大特異値で、各周波数の相対的な超過 (R < 1) または不足 (R > 1) を測定します。受動性インデックスの意味の詳細については、getPassiveIndex を参照してください。

passiveplot は周波数範囲と、G のダイナミクスに基づくプロットのポイント数を自動的に選択します。

passiveplot(G,type) は、type の値によって入力、出力または I/O 受動性インデックスをそれぞれ 'input''output' または 'io' にプロットします。

passiveplot(___,w)w によって指定される周波数の受動性インデックスをプロットします。

  • w が形式 {wmin,wmax} の cell 配列の場合、passiveplot は受動性インデックスを wmin から wmax の範囲の周波数でプロットします。

  • w が周波数のベクトルである場合、passiveplot はそれぞれの指定された周波数で受動性インデックスをプロットします。

この構文では、前述の任意の入力引数の組み合わせで使用できます。

passiveplot(G1,G2,...,GN,___) は、同じプロット上で複数の動的システム G1,G2,...,GN の受動性インデックスをプロットします。プロットする周波数を指定するために、この構文を type 入力引数または w、もしくは両方とともに使用することもできます。

passiveplot(G1,LineSpec1,...,GN,LineSpecN,___) はプロット内の各システムの色、ライン スタイルおよびマーカーを指定します。

[index,wout] = passiveplot(G) および [index,wout] = passiveplot(G,type) は、各周波数での受動性インデックスをベクトル wout で返します。出力 index は行列です。値 index(:,k) は受動性インデックスを周波数 w(k) で降順で返します。この構文はプロットを描画しません。

index = passiveplot(G,w) および index = passiveplot(G,type,w) は、w によって指定された周波数での受動性インデックスを返します。

すべて折りたたむ

相対受動性インデックスを、システム G=(s+2)/(s+1) の周波数の関数としてプロットします。

G = tf([1 2],[1 1]); 
passiveplot(G)

Figure contains an axes. The axes contains an object of type line. This object represents G.

このプロットは、相対受動性インデックスがすべての周波数で 1 未満であることを示します。したがって、システム G は受動的です。

同じシステムの入力受動性インデックスをプロットします。

passiveplot(G,'input')

Figure contains an axes. The axes contains an object of type line. This object represents G.

入力受動性インデックスはすべての周波数で正の値です。したがって、システムは入力で厳密に受動的です。

2 つの動的システムおよびそれらの直列相互接続の入力受動性インデックスをプロットします。

G1 = tf([5 3 1],[1 2 1]);
G2 = tf([1 1 5 0.1],[1 2 3 4]);
H = G2*G1;

passiveplot(G1,'r',G2,'b--',H,'gx','input')
legend('G1','G2','G2*G1')

Figure contains an axes. The axes contains 3 objects of type line. These objects represent G1, G2, G2*G1.

相互接続されているシステムの入力受動性インデックスは、1 rad/s 付近で 0 未満に減少します。このプロットは、2 つの受動システムの直列相互接続は必ずしも受動的ではないことを示します。ただし、受動性は受動システムの並列相互接続またはフィードバック相互接続用に保持されます。

入力引数

すべて折りたたむ

受動性について解析するモデル。tf モデル、ss モデル、genss モデルなどの動的システム モデルとして指定します。入力数と出力数が等しい場合、G は MIMO にすることができます。G は連続または離散のどちらにすることもできます。G が調整可能なブロックまたは不確かさをもつブロックを含む一般化モデルの場合、passiveplot は現在の G のノミナル値の受動性を評価します。

G がモデル配列の場合、passiveplot は同じプロット内の配列にあるすべてのモデルの受動性インデックスをプロットします。出力引数を使用して受動性データを取得する場合、G は単一モデルでなければなりません。

受動性インデックスのタイプ。次のいずれかとして指定します。

  • 'input' —入力受動性インデックス (入力フィードフォワード受動性)。この値は、連続時間では s = jω、離散時間では s = e についての (G(s)+G(s)H)/2 の最小の固有値です。

  • 'output' —出力受動性インデックス (出力フィードバック受動性)。G が最小位相の場合、この値は、連続時間では s = jω、離散時間では s = e についての (G(s)1+G(s)H)/2 の最小の固有値です。

  • 'io' — 組み合わされた I/O 受動性インデックス。I + G が最小位相の場合、この値は以下のように最大の τ(ω) となります。

    G(s)+G(s)H>2τ(ω)(I+G(s)HG(s)),

    これは、連続時間では s = jω、離散時間では s = e の場合です。

これらのインデックスの詳細については、受動性および受動性インデックスについてを参照してください。

インデックスを計算およびプロットする周波数。cell 配列 {wmin,wmax} または周波数値のベクトルとして指定します。

  • w が形式 {wmin,wmax} の cell 配列の場合、関数は wmin から wmax の範囲の周波数でインデックスを計算します。

  • w が周波数のベクトルの場合、関数は指定された各周波数でインデックスを計算します。たとえば、logspace を使用すると、対数的に等間隔な周波数値の行ベクトルを生成できます。

周波数はラジアン/TimeUnit 単位で指定します。ここで TimeUnit はモデルの TimeUnit プロパティです。

ライン スタイル、マーカー、色。1、2、または 3 文字の string または文字ベクトルとして指定します。文字が表示される順序は任意です。3 つの特性 (ライン スタイル、マーカーおよび色) をすべて指定する必要はありません。たとえば、ライン スタイルを省略してマーカーを指定した場合、プロットはラインなしでマーカーのみを表示します。この引数の設定の詳細については、関数 plot の入力引数 LineSpec を参照してください。

例: 'r--' は赤い破線を指定します。

例: '*b' は青いアスタリスク マーカーを指定します。

例: 'y' は黄色いラインを指定します。

出力引数

すべて折りたたむ

周波数の関数としての受動性インデックス。行列として返されます。index には、指定した受動性インデックスのタイプか、周波数を指定した場合は w の周波数、指定しない場合は wout の周波数で計算された受動性インデックスのタイプが含まれます。index には w または wout にある値と同数の列と、以下が含まれます。

  • 入力、出力または組み合わされた I/O 受動性インデックスの 1 つの行。

  • 相対受動性インデックスについて、G にある入力または出力と同じ数の行。

たとえば、G は 3 入力、3 出力システムであり、w は 1 行 30 列の周波数のベクトルであるとします。すると、次の構文は 3 行 30 列の行列 index を返します。

index = passiveplot(G,w);

エントリ index(:,k) には G の相対受動性インデックスが周波数 w(k) で降順で含まれます。

インデックスが計算される周波数。ベクトルとして返されます。関数は、周波数範囲と点数をモデルのダイナミクスに基づいて自動的に選択します。

R2016a で導入