Main Content

モデル配列

モデル配列とは

多くのアプリケーションにおいて、複数のモデル オブジェクトの集合を考慮すると便利です。たとえば、次のような一定範囲の値で変化するパラメーターを含むモデルについて考えます。

sys1 = tf(1, [1 1 1]);
sys2 = tf(1, [1 1 2]);
sys3 = tf(1, [1 1 3]);

モデル配列は、集合などの格納と解析を行う便利な方法です。モデル配列は、単一の MATLAB® 配列に要素として格納される複数の線形モデルの集合です。

単一のモデル配列で収集されるすべてのモデルでは、次の属性を同じにしなければなりません。

  • 入力数と出力数

  • サンプル時間 Ts

  • 時間単位 TimeUnit

モデル配列の用途

モデル配列の用途には次のものがあります。

  • パラメーターの変化に対する感度の表現と解析

  • 複数のプラント モデルに対するコントローラー設計の検証

  • 複数の操作点で、非線形システムを線形化した線形モデルの表現

  • 1 つのプラントに適用された複数のシステム同定実験から取得したモデルの格納

モデル配列を使用して、単一モデル オブジェクトに適用するほぼすべてのモデル演算を、モデルの集合全体に一度に適用できます。関数は、モデルごとの配列に機能するので、ベクトル化されたモデル全体の操作や解析ができます。また、bodenyquiststep などの解析関数を使用して、複数のモデルを同時に解析するために配列をモデル化することもできます。MATLAB 配列のインデックス付けによって集合内の個別のモデルにアクセスできます。

モデル配列の可視化

モデル配列の概念を可視化するため、次に示す 5 つの伝達関数モデルについて考えます。この例では、各モデルには 2 入力 2 出力があります。これらは、個々のモデル コンポーネントのパラメーターが異なります。

2 行 2 列の行列をまとめて多次元配列を作成するのと同様に、5 つの伝達関数モデルを 1 変数、ここでは sys という名前のモデル配列内に存在する 1 つのリストとしてまとめられます。モデル配列の各要素は、1 つのモデル オブジェクトです。

モデル配列からのモデル選択の可視化

次の図は、インデックス付けが 1 次元モデル配列からモデルを選択する方法を示しています。図は、2 入力 2 出力伝達関数の 1 行 5 列の配列 sysa を示しています。

次の図は、2 次元モデル配列 m2d からのモデルの選択を示しています。

関連するトピック