主要内容

s函数回调方法

回调方法概述

每个函数都必须实现的一组方法,称为回调方法的仿真软件金宝app®引擎调用包含s函数当模拟模型。

在每个仿真所需的s函数回调方法执行任务阶段。在模拟模型,模拟在每个阶段仿真软件引擎调用适当的方法在模型中每个功能块。金宝app

s函数回调方法执行的任务包括:

  • 初始化——第一个模拟循环之前,引擎初始化功能,包括:

    • 初始化SimStruct,模拟结构,其中包含的信息功能

    • 设置输入和输出端口的数量和尺寸

    • 设置块样品时间

    • 分配存储区域

  • 计算下一个样品——如果您创建了一个变量样本时间块,计算下一个样品的时间达到这个阶段;也就是说,它计算下一个步长。

  • 计算输出的主要时间步——这个调用完成后,所有的块输出端口为当前时间步是有效的。

  • 离散状态的更新主要的时间步——在这叫,块执行once-per-time-step活动,如更新离散状态。

  • 集成——这适用于模型连续状态和/或nonsampled零交叉。如果你的s函数连续,引擎调用你的s函数的输出和导数部分小时间步。这是解决所以可以计算功能的状态。如果你的s函数nonsampled零交叉,发动机也称你的s函数的输出和零交叉部分较小的时间步长,以便它可以定位零交叉。

    请注意

    看到在动态系统仿真阶段解释的主要和次要的时间步骤。

一些回调方法是可选的。该引擎调用一个可选的回调只有s函数定义了回调。

回调方法对C墨西哥人S-Functions

需要回调方法

C墨西哥人S-functions必须实现回调方法如下:

  • mdlInitializeSizes——指定大小的各种参数SimStruct,如输出端口的数量。

  • mdlInitializeSampleTimes——指定块的采样时间(s)。

  • mdlOutputs——计算块的输出。

  • mdlTerminate——执行所需的任何操作的终止模拟。如果没有行动是必需的,这个函数可以实现为一个存根。

可选的回调方法

下面的回调方法是可选的。该引擎调用一个可选的回调只有s函数定义了回调。

回调方法的MATLAB S-Functions 2级

需要回调方法

2级MATLAB S-functions必须实现回调方法如下:

  • 设置——指定大小的各种参数SimStruct,如输出端口的数量。

  • 输出——计算块的输出。

  • 终止——执行所需的任何操作的终止模拟。如果没有行动是必需的,这个函数可以实现为一个存根。

编写回调方法的信息,请参阅写2级MATLAB S-Functions

可选的回调方法

下面的回调方法是可选的。该引擎调用一个可选的回调只有s函数定义了回调。

另请参阅

|||

相关的话题