このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
モデル次数の低次元化
説明
[モデル次数の低次元化] タスクにより、アプリケーションにとって重要なモデル特性を保持したまま、高次元モデルの低次元化近似を対話的に計算できます。このタスクは、ライブ スクリプト用の MATLAB® コードを自動生成します。ライブ エディター タスク一般に関する詳細については、ライブ スクリプトへの対話型タスクの追加を参照してください。
低次元化されたモデルを使用すると、解析および制御設計を簡略化できます。簡略化されたモデルでは、理解や操作もより容易です。プラントのコントローラーを設計する前に関連するダイナミクスに焦点を置くためにプラント モデルを低次元化できます。モデルの低次元化を使用して、最大次数のコントローラーを簡略化することもできます。モデルの低次元化およびそれが役立つ状況の詳細については、モデルの低次元化の基礎を参照してください。
まず、低次元化するモデルと、モデルの低次元化の方法を選択します。それぞれの方法ごとに、タスクには、アプリケーションにとって重要なダイナミクスを低次元化されたモデルで確実に保持するためのコントロールとプロットが用意されています。
平衡化打ち切り
— エネルギーの寄与が比較的小さい状態を削除することにより、モデルの低次元近似を計算します。モードの選択
— 対象とする周波数範囲を指定することによりモードを選択します。極-零点の簡略化
— 相殺またはほぼ相殺となる極-零点のペアを除去します。

タスクを開く
MATLAB エディターでライブ スクリプトに [モデル次数の低次元化] タスクを追加するには、次を行います。
[ライブ エディター] タブで [タスク] 、 [モデル次数の低次元化] を選択します。
スクリプトのコード ブロック内で、
reduce
、balred
、minreal
などの関連するキーワードを入力します。コマンド補完候補から[モデル次数の低次元化]
を選択します。
パラメーター
モデル
— 低次元化するモデル
数値 LTI モデル
低次元化するモデルを選択します。利用可能なモデルのリストには、MATLAB ワークスペースのプロパーなモデル tf
、ss
、または zpk
が含まれます。モデルは、SISO、MIMO、連続、離散のいずれも許容されます。
連続時間モデルはむだ時間をもつことができません。むだ時間をもつ連続時間モデルを低次元化するには、最初に
pade
を使用して、むだ時間をモデル ダイナミクスとして近似します。離散時間モデルはむだ時間をもつことができます。
[平衡化打ち切り]
の低次元化手法の場合、タスクではabsorbDelay
を使用して遅延を z = 0 の極に変換してから、モデルを低次元化します。
メモ
[モデル次数の低次元化] では、モデルの時間単位 (モデルの TimeUnit
プロパティで指定) は秒単位であることを前提にします。[平衡化打ち切り]
と [モードの選択]
の手法で、モデルに TimeUnit = 'seconds'
が設定されていない場合、chgTimeUnit
を使用してモデルを秒に変換してください。
メソッド
— モデルを低次元化する方法
平衡化打ち切り
(既定値) | モードの選択
| 極-零点の簡略化
それぞれの方法ごとに、[モデル次数の低次元化] タスクには、アプリケーションにとって重要なダイナミクスを低次元化されたモデルで確実に保持するためのコントロールとプロットが用意されています。
平衡化打ち切り
— エネルギーの寄与が比較的小さい状態を削除することにより、モデルの低次元近似を計算します。この方法を使用するには、低次元化されたモデルの状態数 (次元) を指定します。ハンケル特異値プロットは、元のモデルにおけるそれぞれの状態の相対的なエネルギー寄与を可視化します。タスクは、このプロットで選択された状態よりもエネルギーの低い状態を破棄します。この方法はbalred
コマンドを使用するコードを生成します。むだ時間をもつ離散時間モデルの場合、[モデル次数の低次元化] はモデルを平衡化打ち切りによって低次元化する前に、
absorbDelay
を使用してむだ時間を z = 0 での極に変換します。追加の状態が応答プロットとハンケル特異値のプロットに反映されます。モードの選択
— 対象とする周波数範囲を指定することによりモードを選択します。タスクは、周波数応答プロットで指定された領域の外側にあるダイナミクスを破棄します。この方法はfreqsep
コマンドを使用するコードを生成します。極-零点の簡略化
— 相殺またはほぼ相殺となる極-零点のペアを除去します。タスクは、[許容誤差] パラメーターで指定されたしきい値を使って相殺される極-零点のペアを破棄します。さらに多くの状態を破棄するには許容誤差を大きくします。この方法はminreal
コマンドを使用するコードを生成します。
低次元化された次数
— 低次元化されたモデルの状態数
正の整数
低次元化されたモデルの状態数を指定します。モデルの不安定な状態数と元のモデルの状態数の間にある任意の値を使用できます。詳細については、平衡化打ち切りによるモデルの低次元化を参照してください。
DC ゲインの保持
— 低次元化されたモデルと元のモデルとの DC ゲインの一致
オン (既定値) | オフ
低次元化したモデルの DC ゲインを元のモデルと一致させます。モデルの DC 動作がアプリケーションにおいて重要である場合、[DC ゲインの保持] をオンにします。高周波数の動作によく一致させるには、このパラメーターをオフにします。詳細については、平衡化打ち切りによるモデルの低次元化を参照してください。
周波数範囲
— 解析を指定された周波数に制限
オフ (既定値) | オン
既定では、[モデル次数の低次元化] はすべての周波数のハンケル特異値を解析します。特定のアプリケーションにとっての関心領域の外部にあるモードがモデルにあるとわかっている場合、この解析を特定の周波数範囲に制限すると便利です。周波数極限を適用する場合、[モデル次数の低次元化] は、指定された周波数範囲内のみのエネルギーの寄与に基づいて、どの状態が打ち切るべき低エネルギーの状態であるかを判断します。
特定の周波数範囲に対する状態の寄与の解析を制限するには、[周波数範囲] をオンにします。次に、応答プロット上の縦方向のカーソルをドラッグし、対象の周波数範囲を指定します。あるいは、テキスト ボックスに周波数の最小値と最大値を入力します。単位は rad/s
です。モデルに TimeUnit = 'seconds'
が設定されていない場合は、chgTimeUnit
を使用してモデルを秒単位に変換します。
比較プロット
— 元のモデルと低次元化されたモデルを比較する方法
モデル応答
(既定値) | 絶対誤差
| 相対誤差
[モデル次数の低次元化] は、元のモデルと低次元化されたモデル間の周波数応答の比較を表示します。このプロットを使用することで、モデル低次元化のパラメーター値をさまざまに試行しながら、元のモデルと低次元化されたモデルの一致を監視できます。利用できる比較プロットは次のとおりです。
モデル応答
— 元のモデルと低次元化されたモデルの周波数応答です。SISO モデルの場合はボード線図、MIMO モデルの場合は特異値プロットとして表示されます。絶対誤差のプロット
—G-Gr
の特異値です。ここで、G
は元のモデルでGr
は現在の低次元化されたモデルです (SISO モデルの場合、特異値プロットは周波数応答の振幅です)。相対誤差のプロット
—(G-Gr)/G
の特異値です。このプロットは、アプリケーションにとって重要な領域内のモデルのゲインが非常に高いか非常に低い場合に役立ちます。そのような領域では、絶対誤差は誤りを招く可能性があります。
カットオフ周波数
— ダイナミクスを保持する周波数範囲
正のスカラー値
ダイナミクスを保持する周波数範囲の上限と下限を指定します。応答プロットの縦方向のカーソルを使用して範囲を指定することもできます。[モデル次数の低次元化] は指定された範囲外のダイナミクスを破棄します。
この方法の詳細については、モードの選択によるモデルの低次元化を参照してください。
比較プロット
— 元のモデルと低次元化されたモデルを比較する方法
モデル応答
(既定値) | 絶対誤差
| 相対誤差
[モデル次数の低次元化] は、元のモデルと低次元化されたモデル間の周波数応答の比較を表示します。このプロットを使用することで、モデル低次元化のパラメーター値をさまざまに試行しながら、元のモデルと低次元化されたモデルの一致を監視できます。利用できる比較プロットは次のとおりです。
モデル応答
— 元のモデルと低次元化されたモデルの周波数応答です。SISO モデルの場合はボード線図、MIMO モデルの場合は特異値プロットとして表示されます。絶対誤差のプロット
—G-Gr
の特異値です。ここで、G
は元のモデルでGr
は現在の低次元化されたモデルです (SISO モデルの場合、特異値プロットは周波数応答の振幅です)。相対誤差のプロット
—(G-Gr)/G
の特異値です。このプロットは、アプリケーションにとって重要な領域内のモデルのゲインが非常に高いか非常に低い場合に役立ちます。そのような領域では、絶対誤差は誤りを招く可能性があります。
許容誤差
— 極-零点相殺の余裕
正のスカラー
極-零点相殺の余裕を指定します。この許容誤差内で相殺される極-零点のペアは低次元化したモデルから削除されます。応答プロットでスライダーを使って許容誤差を変更し、結果を確認することができます。
出力プロット
— 生成する応答プロットのタイプ
なし
(既定値) | ステップ
| インパルス
| ボード線図
| ...
[モデル次数の低次元化] は、元のシステムと低次元化したシステムの応答を指定のプロット タイプに表示するコードを生成します。利用できるプロットには以下が含まれます。
ステップ応答
インパルス応答
ボード線図
特異値 (シグマ) プロット
極-零点プロット
バージョン履歴
R2019b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)