Main Content

Model Reducer アプリを使用したモデル次数の低次元化

この例では、Model Reducer アプリを使用して、重要なダイナミクスを保持しながらモデル次数を低次元化する方法を示します。この例では、システム応答に対するエネルギーの寄与に基づいて状態を排除する平衡化打ち切り方法について説明します。

ビルのモデルで Model Reducer を開く

この例では、ロサンゼルス大学病院ビルのモデルを使用します。このビルは 8 階建てで、各階には 2 つの変位と 1 つの回転という 3 つの自由度があります。これらのいずれかの変位に対する入出力関係は 48 状態モデルとして表され、各状態は変位またはその変化率 (速度) を表します。ビルのモデルを読み込み、そのモデルで Model Reducer を開きます。

load building.mat
modelReducer(G)

[平衡化打ち切り] タブを開く

Model Reducer のモデルの低次元化の方法には次の 3 つがあります。それは、平衡化打ち切り、モーダル打ち切り、および極/零点の簡略化です。この例では、[平衡化打ち切り] をクリックします。

Model Reducer[平衡化打ち切り] タブを開き、低次元化されたモデルを自動的に生成します。上部のプロットは、周波数領域で元のモデルと低次元化されたモデルを比較します。下部のプロットには各状態のエネルギーの寄与を示します。ここでは、状態は高エネルギーから低エネルギーの順に並べ替えられます。棒グラフでは、低次元化されたモデルの次元 (14) が強調表示されます。低次元化されたモデルでは、エネルギーの寄与がこれより少ないすべての状態が破棄されます。

複数の近似の計算

モデル応答の 1 番目、2 番目、3 番目のピークをそれぞれ約 5.2 rad/s、13 rad/s、25 rad/s で保持するとします。他のモデル次数を試して、この目標を低いモデル次数で取得できるかどうかを確認します。次のいずれかの方法で 5 次と 10 次の近似を計算します。

  • [低次元化されたモデル次数] テキスト ボックスに [5 10] と入力。

  • 状態寄与のプロットで、状態 5 および状態 10 のバーを Ctrl キーを押しながらクリック。

Model Reducer は低次元化された新しい 2 つのモデルを計算し、それらを元のモデル G とともに応答プロットに表示します。3 つのピークをより詳しく調べるには、関連する周波数範囲を拡大表示します。10 次モデルは 3 つのピークを正常に取得しますが、5 次モデルは最初の 2 つのピークのみを近似します (ズーム機能および解析プロットを使用したその他の相互作用の詳細については、低次元化されたモデルの Model Reducer アプリによる可視化を参照してください)。

さまざまな可視化による低次元化されたモデルの比較

3 つの全モデルの周波数応答プロットに加え、Model Reducer では元のモデルと低次元化されたモデル間の絶対許容誤差と相対許容誤差を調べることができます。ビルと低次元化されたモデルの誤差を確認するには、[比較プロット] のリストから [絶対誤差] を選択します。

5 次の低次元化モデルでは、最初の 2 つのピークの周波数範囲において、約 30 rad/s 未満で最大 -60dB の誤差があります。この誤差は高周波数で増加します。10 次の低次元化モデルでは、すべての周波数において誤差が小さくなります。

データ ブラウザーに低次元化されたモデルを作成

[低次元化されたモデルの保存] をクリックして、データ ブラウザーに低次元化されたモデルを格納します。5 次および 10 次の低次元化されたモデルが GReduced5Greduced10 という名前でデータ ブラウザーに表示されます。

引き続きモデルの低次元化パラメーターを変更して、追加の低次元化モデルを生成できます。その過程で、GReduced5Greduced10 は変更されないままデータ ブラウザーに残ります。

特定の周波数におけるダイナミクスに焦点を合わせる

既定では、Model Reducer での平衡化打ち切りは元のモデルと低次元化されたモデルの定常状態応答に一致する DC ゲインを保持します。この設定を変更するには、[オプション] をクリックします。

ダイアログで [DC ゲインの保持] チェックボックスをオフにして、高周波数のダイナミクスを正確に近似します。

[OK] をクリックして変更を適用します。

Model Reducer は低次元化された新しいモデルを計算します。高周波数領域における誤差は低周波数における誤差を若干増加させることで減少します。

特定の周波数範囲におけるモデル ダイナミクスに平衡化打ち切りの焦点を合わせることもできます。たとえば、ビルのモデルの 2 番目のピークのみを約 13 rad/s に近似します。[モデル応答] プロットを選択してモデルのボード線図を表示し、[オプション] をクリックします。

[フォーカス] セクションで、 をクリックして周波数範囲を追加します。このモデルでは、[低域カットオフ]10[高域カットオフ]22 と指定します。

[OK] をクリックします。Model Reducer は強調表示された周波数範囲のみで状態の寄与を解析します。

5 次の低次元化モデルは主要なダイナミクスを取得します。10 次モデルは、この周波数範囲内で元のビルのモデルとほとんど同じダイナミクスをもちます。

境界をドラッグして周波数範囲を対話的に変更できます。周波数範囲を変更すると、ハンケル特異値プロットは状態のエネルギーの寄与の変更を反映します。

オプションで、[低次元化されたモデルの保存] をクリックして、これらの追加モデルをデータ ブラウザーに格納します。

時間領域におけるモデルの比較

[プロット] タブで、格納された低次元化されたモデルの時間領域応答と元のモデルの時間領域応答を比較できます。データ ブラウザーで、Ctrl キーを押しながら、比較するモデル GGReduced5、および GReduced10 をクリックして選択します。次に、Step をクリックします。Model Reducer が 3 つのモデルすべてを含むステップ プロットを作成します。

このプロットの過渡動作を拡大表示すると、GReduced10 が元のモデルの時間領域動作を適切に捉えていることが示されます。ただし、GReduced5 の応答は約 3 秒後に元のモデルから逸脱します。

今後の解析のためのモデルのエクスポート

低次元化されたモデルと元のモデルの時間領域と周波数領域における比較は、GReduced10 が対象のダイナミクスを十分に捉えていることを示しています。今後の解析と設計のために、そのモデルを MATLAB® ワークスペースにエクスポートします。[Model Reducer] タブで、[モデルのエクスポート] をクリックします。G および Greduced5 のチェック ボックスをオフにし、[エクスポート] をクリックして Greduced10 をエクスポートします。

Greduced10 が状態空間 (ss) モデルとして MATLAB ワークスペースに表示されます。

参考

アプリ

ライブ エディター タスク

関連するトピック