主要内容

初始化函数

初始化函数(InitFcn)是一种执行回调或初评估模型编译。您可以使用InitFcn在一个模型(模型InitFcn)或一块(块InitFcn)。

请注意

版本控制可以定义模型InitFcn回调。

模型InitFcn

该模型InitFcn回调函数用于初始化参数和环境设置特定于所使用的模型。

请注意

不推荐使用模型InitFcn回调的模拟状态。如果你模拟模型slbuild、SIL (software-in-the-loop)或快速加速器模式,模型InitFcn回调状态显示“停止”。该模型InitFcn回调函数必须只用于初始化参数和环境设置特定于所使用的模型。

使用InitFcn模型的最佳实践

  • 使用模型InitFcn初始化数据所需的模型。例如,初始化:

    • 变量用于模型参数

    • 许可检查所需的软件

  • 不使用模型InitFcn除了自我修改模型。这也意味着InitFcn模型块不能修改参数(结构)的参考模型。

  • 不使用模型InitFcn在模型顶部覆盖任何变量引用中使用的模型。例如,如果顶部和被引用的模型使用的变量k”,该模型InitFcn顶级模特不能修改的k的参考模型。在这种建模模式,建议您使用不同的变量名。或者,您可以使用数据字典。

  • 不使用模拟命令模式吗InitFcn。例如,使用命令,set_param (ModelName‘SimulationCommand’,‘开始’)set_param (ModelName“SimulationCommand”,“更新”)在模型中InitFcn不推荐。

  • 不使用模型InitFcn函数编辑模型的结构add_line,或delete_line如果模型引用的模型。

如果你使用InitFcn回调为模型,编辑时间检查丢失块中的变量参数对整个模型是禁用的。

变异与模型InitFcn

您可以使用模型属性定义的回调函数模型。例如,PreLoadFcn,PostLoadFcn,InitFcn回调。模型属性用于视图模型信息,描述,历史和回调函数。您可以使用属性检查器查看和编辑模型版本属性,描述历史,和回调函数。模型属性的更多信息,请参阅管理模型属性

考虑一个模型不同的子系统变异来源块。例如,变体——InitFcn

在这个模型中,模型InitFcn用于初始化参数模型。

同样,这些参数也可以定义在PreLoadFcnPostLoadFcn

然而,当参数中定义InitFcn回调,如果MATLAB®工作区清除使用清晰的命令,工作区中的项目时清除并重新创建模拟模型。物品清理时不会重新创建参数中定义PreLoadFcnPostLoadFcn

块InitFcn

InitFcn回调函数用于初始化块具体的参数和设置。

使用块InitFcn的最佳实践

  • 不要使用块InitFcn修改参数(或变量)的自我以外的街区。

  • 不要使用块InitFcn对孩子块修改父子系统的参数块或其他子模块。不过,您可以使用块InitFcn在父母子系统街区修改的参数直接子块。

  • 不要使用块InitFcn使结构变化像添加或删除块(add_blockdelete_block)。

  • 不要使用块InitFcn模型块修改参数(结构)的参考模型。

如果你使用一个InitFcn一块回调,编辑时间检查丢失块中的变量参数块是禁用的。

相关的话题