主要内容

mdlSetWorkWidths

指定工作向量的大小,并创建这个C MEX s -函数所需的运行时参数

要求

没有

语言

C, c++

语法

#定义MDL_SET_WORK_WIDTHS空白mdlSetWorkWidths (SimStruct *年代)

参数

年代

表示s -功能块的SimStruct。

描述

的仿真软金宝app件®引擎调用这个可选方法,使这个s函数能够设置状态和工作向量的大小,以便存储全局数据和创建运行时参数(参见创建和更新s -函数运行时参数).引擎在确定了输入端口宽度、输出端口宽度和s函数的采样次数之后调用这个方法。这允许s函数根据输入和输出的数量和大小以及/或样本次数来确定状态和工作向量的大小。此方法通过宏指定状态和工作向量的大小ssSetNumContStates,ssSetNumDiscStates,ssSetNumRWork,ssSetNumIWork,ssSetNumPWork,ssSetNumModes,ssSetNumNonsampledZCs

只有当C-MEX s -函数不知道引擎调用该函数时所需的所有工作向量的大小时,它才需要实现这个方法mdlInitializeSizes方法。如果这个s函数实现了mdlSetWorkWidths,它应该初始化它需要的任何工作向量的大小DYNAMICALLY_SIZEDmdlInitializeSizes,即使是对于那些它当时知道确切大小的物体。然后s函数应该指定的实际大小mdlSetWorkWidths.此方法仅对模拟有效,必须包含在#如果定义(MATLAB_MEX_FILE)声明。

例子

有关使用DWork向量的C MEX s函数的完整示例,请参阅该文件sfun_directlook.c

之前介绍过的R2006a