主要内容

将模型转换为可变系统

您可以使用Model Transformer工具来改进模型组件化,方法是用变异来源变种子系统,变种模型块。Model Transformer报告合格的建模模式。您可以选择工具用变异来源块或不同的子系统块。

Model Transformer可以执行这些转换:

  • 如果一个如果块连接到一个或多个如果行动子系统S和每个都有一个输出,用一个子系统和一个变异来源块。

  • 如果一个如果块连接到如果行动子系统如果没有输出或有两个或更多的输出,则将此建模模式替换为不同的子系统块。

  • 如果一个开关情况块连接到一个或多个开关箱动作子系统S和每个都有一个输出,用一个子系统和一个变异来源块。

  • 如果一个开关情况块连接到开关箱动作子系统如果没有输出或有两个或更多的输出,则将此建模模式替换为不同的子系统块。

  • 替换一个开关块和一个变异来源块。

  • 替换一个多端口切换一个具有两个或多个数据端口的数据块变异来源块。

对于Model Transformer工具执行转换,控制输入多端口切换开关块和输入如果开关情况block必须是以下任意一个:

  • 一个常数块,其中恒定值参数是一个金宝app仿真软件。参数标量类型的对象。

  • 常数块中恒定值参数是金宝app仿真软件。参数标量类型的对象和一些其他块的组合,形成一个受支持的MATLAB表达式。金宝app中的MATLAB表达式变量条件表达式中的操作符除位操作金宝app外,均支持。

示例模型

这个示例展示了如何使用Model Transformer将一个模型转换为一个变体系统。示例使用了该模型rtwdemo_controlflow_opt。这个型号有三个开关块。控制输入到这些开关块是金宝app仿真软件。参数气孔导度。模型转换器对话框和这个例子参考气孔导度作为一个系统常数。

  1. 打开模型。在命令窗口中,输入rtwdemo_controlflow_opt

  2. 打开Switch1“块参数”对话框。改变阈值参数0。的阈值参数必须是整数,因为在变量转换之后,它是变异来源块。

  3. 重复步骤2开关Switch1Switch2,Switch3

  4. 将模型保存到工作文件夹中。

在示例模型上执行变量转换

  1. 应用程序选项卡,通过选择打开模型转换器模型变压器。或者,在命令窗口中,输入:
    mdltransformer(“rtwdemo_controlflow_opt”)

  2. 选择检查用变体块替换建模模式

  3. 指定系统常量单元阵列字段,可以指定字符向量组成的单元格数组金宝app仿真软件。参数s。基本工作区必须包含它们的定义。

  4. 转换模型名称的前缀字段,指定模型名称的前缀。如果不指定前缀,则默认为gen0

  5. 选择运行这个检查。中的模型转换器列出了符合条件表达式的系统常量和块变异来源不同的子系统块。要使Model Transformer列出一个系统常量,它必须是金宝app仿真软件。参数标量类型的对象。对于这个示例,气孔导度限定条件表达式的一部分。

  6. 如果不希望发生其中一个转换,可以清除它旁边的复选框。

  7. 选择重构模型。Model Transformer提供到已转换模型的超链接,并提供到原始模型和已转换模型中相应块的超链接。

    转换后的模型位于具有前缀的文件夹中m2m加上原始的型号名称。对于本例,文件夹名称为m2m_rtwdemo_controlflow_opt

  8. 在原始模型中rtwdemo_controlflow_opt,右键单击其中一个开关块。在菜单中,选择模型变压器>转换块的可追溯性。在转换后的模型中gen0_rtwdemo_controlflow_opt,相应的变异来源块突出显示。

  9. 在转换后的模型中gen0_rtwdemo_controlflow_opt,右键单击其中一个开关块。在菜单中,选择模型变压器>可追溯至原始区块。在原始模型中rtwdemo_controlflow_opt,相应的开关块突出显示。

模型转换的限制

Model Transformer工具有以下限制:

  • 为了在模型上运行Model Transformer,您必须能够模拟该模型。

  • 如果一个如果行动子系统块硬盘合并块,合并块有另一个导入,该导入要么是未连接的,要么是由另一个条件子系统驱动的,因此Model Transformer不会添加变异来源块。此建模模式产生一个警告和一个排除的候选消息。

  • Model Transformer不能为每个建模模式执行变体转换。这个列表包含一些例外情况:

    • 模型包含模型引用受保护模型的块。

    • 模型包含变异来源块的变体激活时间参数设置为更新图

  • 运行一个或多个任务后,不能重新运行任务,因为运行这个检查运行所有按钮是无效的。如果您想要重新运行一个任务,请通过右键单击重置Model Transformer模型变压器并选择重置

  • 不要在转换过程中更改模型。如果您想更改模型,请关闭模型变压器,修改模型,然后重新打开模型变压器

  • 要使Model Transformer中的超链接工作,您必须拥有链接要打开的模型。

相关的话题