Main Content

propagatedInputSize

クラス: matlab.System

Simulink の伝播時の入力のサイズ

構文

size = propagatedInputSize(obj,index)

説明

size = propagatedInputSize(obj,index) は、指定された System object™ の入力サイズをベクトルとして返します。index には、サイズ情報を返す対象の入力が指定されます (objindex にカウントされません。最初の入力は常に obj です)。

propagatedInputSize は、クラス定義ファイルの getOutputSizeImpl メソッド内からのみ使用できます。getOutputSizeImpl は次の場合に使用します。

  • System object の入力または出力が複数ある場合

  • 入力のサイズによって出力のサイズが決定される場合

  • 出力のサイズが入力のサイズと異なっていなければならない場合

メモ

可変サイズの入力の場合、propagatedInputSize から伝播された入力サイズは環境によって異なります。

  • MATLAB — propagatedInputSize は、オブジェクトを最初に実行するときに使用される入力のサイズを返します。

  • Simulink — propagatedInputSize は、入力サイズの上限を返します。

既定で、Simulink® では MATLAB System (Simulink) ブロックは 1 次元の入力信号を認識し、1 次元の出力信号を 2 次元として伝播します。1 次元の入力および出力がそれぞれ 1 次元信号として認識および伝播されるようにするには、supports1DVectorsImpl メソッドを使用します。

入力引数

すべて展開する

オブジェクト固有のプロパティ、状態、およびメソッドへのアクセスに使用される System object ハンドル。propagatedInputSize メソッドがこのオブジェクトを使用しない場合、この入力を ~ に置き換えることができます。

指定された入力のインデックス。

出力引数

すべて展開する

指定された入力のサイズ。ベクトルとして返されます。

すべて展開する

2 番目の入力のサイズを取得します。2 番目の入力の最初の次元が 1 より大きいサイズである場合、出力サイズを 1 行 2 列のベクトルに設定します。それ以外の場合はすべて、出力は 2 行 1 列の行列です。最初の入力は出力のサイズに影響しないと仮定します。

methods (Access = protected)
   function outsize = getOutputSizeImpl(obj)
       size = propagatedInputSize(obj,2);
       if size(1) == 1
           outsize = [1,2];
       else
           outsize = [2,1];
       end
   end 
end

バージョン履歴

R2014a で導入

参考

トピック