最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

nblocks

一般化行列または一般化 LTI モデルのブロック数

構文

N = nblocks(M)

説明

N = nblocks(M) は、一般化 LTI モデルまたは一般化行列 M制御設計ブロックの数を返します。

入力引数

M

一般化 LTI モデル (genss または genfrd モデル)、一般化行列 (genmat)、またはそのようなモデルの配列。

出力引数

N

M 単位の制御設計ブロックの数。M に 1 つのブロックが複数回現れる場合、N が出現の合計数を反映します。

M がモデル配列である場合、NM と同じ次元の配列になります。N のそれぞれのエントリが、対応する M のエントリの制御設計ブロックの数になります。

2 次フィルター モデルにある制御設計ブロックの数

この例では、2 次フィルターのモデルのパラメーター化について 2 つの異なる方法を検討するために nblocks を使用する方法を示しています。

  1. 2 次フィルターの調整可能な (パラメトリック) モデルを作成します。

    F(s)=ωn2s2+2ζωn+ωn2,

    ここで、減衰 ζ と固有振動数 ωn は調整可能なパラメーターです。

    wn = realp('wn',3);
    zeta = realp('zeta',0.8);
    F = tf(wn^2,[1 2*zeta*wn wn^2]);

    F は、2 つの調整可能な制御設計ブロックである、realp ブロックの wn および zeta をもつ genss モデルです。ブロック wn および zeta には、それぞれ 3 および 0.8 の初期値があります。

  2. nblocks を使用してモデルの調整可能なブロックの数を調べます。

    nblocks(F)

    このコマンドは次の結果を返します。

    ans =
    
         6

    F には 2 つの調整可能なパラメーターがありますが、パラメーター wn は 5 回出現します。そのうち 2 回は分子、3 回は分母です。

  3. F を書き直して wn の出現を少なくします。

    2 次フィルター伝達関数は、次のように表現できます。

    F(s)=1(sωn)2+2ζ(sωn)+1.

    次の式を使用して調整可能なフィルターを作成します。

    F = tf(1,[(1/wn)^2 2*zeta*(1/wn) 1])
  4. 新しいフィルター モデルで調整可能なブロックの数を調べます。

    nblocks(F)

    このコマンドは次の結果を返します。

    ans =
    
         4

    新しい定式化では、調整可能なパラメーター wn の発生は 3 回だけです。モデルでブロックの出現数を減らすことによって、モデルを含む計算回数のパフォーマンスを向上できます。ただし、出現数はモデルの調整やパラメーター調査のためのサンプリングの結果には影響しません。

R2011a で導入