快速重新启动方法
Simulation Modes
You can use fast restart in Normal and Accelerator simulation modes.
在模拟之间调整参数
当模型以快速重新启动初始化时,除了块值和基本工作区变量之外,您还可以在该模型中调整参数Data Import/ExportandSolverpanes in theSimulation>Model Configuration Parameters对话框。
仅当模型以快速重新启动初始化时,仅在模拟之间进行某些参数。它们包括:
初始值参数我知道了堵塞
初始输出参数合并堵塞
Data参数从工作区堵塞
信号参数和信号组信号构建器堵塞。
快速重新启动中的模型方法和回调
快速重新启动时,Simulink万博1manbetx®调用模型和块方法和回调如下:
通话模型
initfcn
打回来。通话模型
SetupRuntimeResources
method.称呼
mdlsetupruntimeresources
S功能方法。
通话模型
开始
method.称呼
mdlstart
S功能方法。
通话模型
初始化
method.称呼
mdlinitializeconditions
S功能方法。笔记
使用
ssIsFirstInitCond
标志到仅在任何模拟的初始化阶段,包括快速重新启动中的第一个和后续初始化,该标志应运行。
通话模型and block
开始Fcn
回调。笔记
步骤1–5适用于Simulink中的所有仿真(有或没有快速重新启动)。万博1manbetx
对于快速重新启动中的第一个模拟,请捕获模拟快照。模拟快照包含仿真状态(
simstate
) and information related to logged data and visualization blocks. As part of the snapshot capture, callmdlgetsimstate
S功能方法。这是任何模拟的标准执行阶段,无论有无快速重新启动。
通话模型
输出
。通话模型
Update
。通话模型
衍生物
。在循环中重复这些步骤,直到停止时间或请求停止。
通话模型
终止
method.称呼
mdlTerminate
S功能方法。
模拟结束后,致电模型和块
StopFCN
回调。这是任何模拟的标准阶段,有或没有快速重新启动。还原用于快速重新启动的模拟快照。作为还原的一部分,请致电
mdlSetSimState
S功能方法。等待初始化状态,直到其中的一个ctions:
要在快速重新启动中运行另一个模拟(以编程方式或使用Simulink编辑器),请返回步骤3。万博1manbetx
结束快速重新启动模式并解开模型:
调用模型方法
CleanupRuntimeResources
和mdlecleanupruntimeresources
S功能方法。不要打电话
StopFCN
此时再次回调。
在某些情况下。这开始
and终止
方法仅调用一次,而不适用于每个连续的快速重新启动模拟。在这些情况下,这些方法调用与调用SetupRuntimeResources
andCleanupRuntimeResources
, 分别。这些情况如下:
当s功能包含自定义时
simstate
save and restore methods.当一个n S-function sets the flag
ss_option_call_terminate_on_exit
。当将S功能放置在引用模型的加速模式内时。
有关模型回调的更多信息,请参阅定制模型行为的回调。
simstate和初始状态值
您可以更改初始状态值,包括simstate
,在快速重新启动模拟之间。
当一个simstate
初始状态的对象在快速重新启动中使用,每个新仿真将重置为模型的开始时间,而不是每个模型的快照时间simstate
目的。此后,在向前的第一步中,Simulink检查一下是否是万博1manbetxsimstate
已指定。如果是,请在计算万博1manbetx下一步之前对其进行恢复。因此,第一个模拟步骤有效地快进到指定的快照时间simstate
目的。
使用仿真数据检查器分析数据
快速重新启动使用仿真数据检万博1manbetx查器支持数据记录。快速重新启动中的每个模拟都会创建一个名称的SDI对象数字
increments for each simulation.
初始化函数中的自定义代码
当您将自定义代码放在配置参数>Simulation Target>自定义代码>初始化函数pane in theModel Configuration Parametersdialog box, this gets called only during the first simulation in fast restart.