Main Content

propagatedInputSize

类: matlab.System

Simulink 传播期间的输入大小

语法

size = propagatedInputSize(obj,index)

说明

size = propagatedInputSize(obj,index) 以向量形式返回指定的 System object™ 的输入大小。index 指定要为其返回大小信息的输入。(不要将 obj 计入 index。第一个输入始终是 obj。)

您只能在类定义文件的 getOutputSizeImpl 方法内使用 propagatedInputSize。在以下情况下使用 getOutputSizeImpl

  • 您的 System object 有多个输入或输出。

  • 输入大小决定输出大小。

  • 输出大小不能与输入大小相同。

注意

对于可变大小输入,propagatedInputSize 传播的输入大小将因环境而异。

  • MATLAB - propagatedInputSize 返回在您第一次运行对象时使用的输入大小。

  • Simulink - propagatedInputSize 返回输入大小的上限。

默认情况下,在 Simulink® 中,MATLAB System (Simulink) 模块识别一维输入信号,并将一维输出信号作为二维信号传播。使用 supports1DVectorsImpl 方法使一维输入和输出能够分别作为一维信号识别和传播。

输入参数

全部展开

System object 句柄,用于访问特定于该对象的属性、状态和方法。如果您的 propagatedInputSize 方法不使用该对象,您可以用 ~ 替换此输入。

指定输入的索引

输出参量

全部展开

指定输入的大小,以向量形式返回

示例

全部展开

获取第二个输入的大小。如果第二个输入的第一个维度的大小大于 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 中推出

另请参阅

主题