ドキュメンテーション センター

  • 評価版
  • 製品アップデート

目次

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

linoptions

線形化と操作点の検索のオプションの設定

    メモ:   関数 linoptions は、将来のバージョンでは削除される予定です。代わりに以下を使用してください。

    • linearizeOptionslinearizeslTunablelinlft など、線形化を実行するコマンドのオプションを作成します。

    • findopOptionsfindop を使用して操作点の検索のオプションを作成します。

構文

opt=linoptions
opt=linoptions('Property1','Value1','Property2','Value2',...)

代替方法

関数 linoptions を使用する代わりに、Simulink® Control Design™ の GUI を使用して、線形化と操作点の検索のオプションを設定することもできます。

説明

opt=linoptions では、既定の設定を使用して線形化オプション オブジェクトが作成されます。変数 opt は、操作点の検索と線形化のオプションを指定するために、関数 findop および関数 linearize に渡されます。

opt=linoptions('Property1','Value1','Property2','Value2',...) では、線形化オプション オブジェクトの opt が作成されます。このオブジェクトでは、Property1 に指定されたオプションは Value1 の値に、Property2 に指定されたオプションは Value2 の値に、というように順に設定されます。変数 opt は、操作点の検索と線形化のオプションを指定するために、関数 findop および関数 linearize に渡されます。

次のオプションは関数 linoptions を使用して設定できます。

LinearizationAlgorithm

'numericalpert' にセットし、数値摂動法線形化を有効にします (Simulink 3.0 ソフトウェアと同様)。この方法では、ルート レベルの Inport と状態に数値摂動が与えられます。線形化の注釈は無視され、代わりにルート レベルの Inport と Outport を使用します。

既定の設定は 'blockbyblock' です。

SampleTime

信号がサンプリングされた時刻。離散システムの場合は非ゼロ、連続システムの場合は 0、線形化モデルに関与する最長サンプル時間を使用する場合は -1 (既定)。

UseFullBlockNameLabels

'off' (既定) に設定すると、線形化されたモデルの線形化 I/O および状態に、切り捨てられた名前が使用されます。'on' にセットすると、線形化されたモデルの線形化 I/O および状態に、ブロックの絶対パス名が使用されます。

UseBusSignalLabels

'off' (既定) にセットすると、バス信号チャンネル番号を使用して、線形化された結果のバス信号の I/O にラベルが付けられます。'on' にセットすると、バス信号名を使用して、線形化された結果のバス信号の I/O にラベルが付けられます。I/O ポイントが次に示すブロックの出力ポイントに位置している場合、バス信号名が結果に表示されます。
  • バス オブジェクトを含んでいる、ルートレベルの Inport ブロック

  • Bus Creator ブロック

  • 次のいずれかの場所までソースを遡って追跡するサブシステム ブロック:

    • Bus Creator ブロックの出力

    • バーチャルまたは非バーチャル サブシステムの境界のみのパス スルーによる、ルートレベルの Inport

    メモ:   モデルが mux/バス混在の場合は、このオプションを使用できません。Mux 信号として使用されるバスを避ける方法については、Simulink ドキュメンテーションの「バスと Mux の混在の防止」を参照してください。

BlockReduction

'on' (既定) にセットすると、線形化されたモデルから、線形化のパスにないブロックが除外されます。ブロック削除を行うと、無効な線形化パスにあるブロックの状態が、線形化結果から消去されます。無効な線形化パスの例には、次のパスがあります。

  • ゼロに線形化するブロック

  • パスに沿ってアクティブではない Switch ブロック

  • 無効なサブシステム

  • 開ループ線形化ポイントとしてマークされた信号

次の図に示すモデルの線形化結果には、2 つの状態のみが含まれます。ここには、線形化パス外にある 2 つのブロックの状態は含まれません。これらのブロックは、0 に線形化するブロック (零ゲイン ブロック) を含む無効な線形化パスに存在するため、それらの状態は表示されません。

'off' にセットすると、線形化されたモデルが、そのモデルのすべての状態を含めて返されます。

IgnoreDiscreteStates

連続して線形化を実行する場合は、'on' にセットし (SampleTime を 0 にセット)、離散状態を線形化から削除し、離散状態のすべてのブロックについて D 値を受け入れます。'off' (既定) にセットすると、離散状態も含まれます。

RateConversionMethod

マルチレート システムを線形化するときに、このオプションを次のいずれかのレート変換メソッドに設定します。

  • ゼロ次レート変換メソッドを使用する 'zoh' (既定)

  • 双一次 (Tustin) メソッドを使用する 'tustin'

  • プリワーピング付き Tustin 近似を使用する 'prewarp'

  • 可能であれば離散状態をアップサンプリングする 'upsampling_zoh'、不可の場合は 'zoh'

  • 可能であれば離散状態をアップサンプリングする 'upsampling_tustin'、不可の場合は 'tustin'

  • 可能であれば離散状態をアップサンプリングする 'upsampling_prewarp'、不可の場合は 'prewarp'

    メモ:   'prewarp' または 'upsampling_prewarp' を選択する場合は、PreWarpFreq オプションを目的のプリワープ周波数に設定します。

    メモ:   元のシステムのサンプリング時間よりも "整数倍速い" 新しいサンプル時間に離散状態を変換した場合にのみアップサンプリングできます。

レート変換とマルチレート モデルの線形化のメソッドとアルゴリズムに関する情報と例は、次を参照してください。

PreWarpFreq

マルチレート システムを線形化する場合は、['prewarp'] オプションで臨界周波数 Wc (ラジアン/秒単位) を使用します。

UseExactDelayModel

'on' にセットすると、正確なむだ時間表現をもつ線形モデルを返します。'off' (既定) にセットすると、むだ時間を近似するモデルを返します。

NumericalPertRel

線形モデルを取得するための摂動レベルを設定します (既定値は 1e-5)。システムの状態の摂動は次の式で指定されます。

システムの入力の摂動は次の式で指定されます。

NumericalXPert

システムの状態の摂動レベルは、操作点オブジェクトを使用して個別に設定します。関数 operpoint を使用して、モデルに操作点オブジェクトを作成します。

NumericalUPert

システムの入力の摂動レベルは、操作点オブジェクトを使用して個別に設定します。関数 operpoint を使用して、モデルに操作点オブジェクトを作成します。

OptimizationOptions

最適化アルゴリズムとともに使用するオプションを設定します。これらのオプションは、optimset で設定されたオプションと同じです。これらのアルゴリズムについての詳細は、Optimization Toolbox™ のドキュメンテーションを参照してください。

OptimizerType

Optimization Toolbox ソフトウェアがインストールされている場合、TRIM 最適化を使用してオプティマイザーのタイプをセットします。使用可能なオプティマイザーのタイプは、以下のとおりです。

  • 既定のオプティマイザーの graddescent_elim では、等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt=0x(k+1)=x(k))、出力信号を指定された「既知」の値と同じにします。このオプティマイザーは、操作点の仕様で「既知」とマークされている状態 x と入力 u を固定し、残りの変数を最適化します。

  • graddescent では、等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt=0x(k+1)=x(k))、出力信号を指定された「既知」の値と同じにします。関数 findop も、操作点の仕様で「既知」とマークされている、状態 x と入力 u の間の誤差を最小化します。「既知」とマークされた入力や状態がない場合、関数 findop は、x および u の初期推定とそれらの平衡値の間の偏差を最小化しようとします。

  • 関数 lsqnonlin は、操作点の仕様で「既知」とマークされている状態 x と入力 u を固定し、残りの変数を最適化します。次に、このアルゴリズムでは、状態 (dx/dt=0x(k+1)=x(k)) の時間微分の偏差および、出力と指定された「既知」の値の偏差の両方を最小化しようとします。

 
  • 関数 simplex は、関数 lsqnonlin と同じコスト関数を使用し、関数 fminsearch で見つかる直接探索最適化ルーチンを使用します。

 

これらのアルゴリズムの詳細については、Optimization Toolbox のドキュメンテーションを参照してください。Optimization Toolbox ソフトウェアを所有していない場合は、http://www.mathworks.com/support/ でこのドキュメンテーションにアクセスできます。

DisplayReport

'on' にセットすると、関数 findop を実行したときに操作点の概要レポートが表示されます。'off' にセットすると、このレポートは表示されません。

参考

|

この情報は役に立ちましたか?