Main Content

伝播メソッドの追加と実装

伝播メソッドを使用する状況

伝播メソッドは出力の仕様を定義します。伝播メソッドは、Simulink® モデルのコンパイル中に入力から出力仕様を直接推測できない場合に使用します。

以下の場合には、System object™ で伝播メソッドを使用することを検討してください。

  • System object が、コード生成をサポートしない (つまり、シミュレーション用のコードを生成できない) すべての MATLAB® 関数へのアクセスを必要とする場合。この場合は、伝播メソッドとシミュレーションのインタープリター型実行モードを使用しなければなりません。コード生成モードはサポートされなくなります。

  • 可変サイズの信号を使用する場合。

  • コードが生成されるかどうかは問題ではないが、起動のパフォーマンスを向上させたい場合。伝播メソッドを使用して入力と出力の情報を指定し、起動時間を短縮できるようにします。

起動時に、Simulink ソフトウェアは、信号属性の伝播のために、モデル ブロックの入力および出力端子を評価しようとします。MATLAB System ブロックの場合、ソフトウェアがこの評価を実行できないときには、伝播メソッドを System object に追加するように求めるメッセージが表示されます。

伝播メソッドの実装

Simulink ソフトウェアは、伝播メソッドの使用を評価し、起動のために MATLAB System ブロックの入力および出力端子を評価します。

各メソッドには、「既定の実装で十分な場合」列に表示される既定の実装があります。System object で既定の実装を使用しない場合は、特定のバージョンの伝播メソッドを System object に実装しなければなりません。

説明伝播メソッド既定の実装で十分な場合

出力端子の次元を取得します。関連メソッドは getOutputSize です。

getOutputSizeImpl

  • 1 つの入力のみ

  • 1 つの出力のみ

  • 入力サイズが出力サイズと同じ

出力端子のデータ型を取得します。関連メソッドは getOutputDataType です。

getOutputDataTypeImpl

  • 1 つの入力のみ

  • 1 つの出力のみ

  • 出力のデータ型が常に入力のデータ型と同じ

出力端子が複素数かどうかを示します。関連メソッドは isOutputComplex です。

isOutputComplexImpl

  • 1 つの入力のみ

  • 1 つの出力のみ

  • 出力の実数/複素数が常に入力の実数/複素数と同じ

出力端子が固定サイズかどうか。関連メソッドは isOutputFixedSize です。

isOutputFixedSizeImpl

  • 1 つの入力のみ

  • 1 つの出力のみ

  • 入力と出力が固定サイズ

関連するトピック