变条件传播概述
使用变条件传播自动识别变区域
动态仿真模块®通过变条件传播过程确定仿真过程中活动的模型组件。该过程计算变量块上指定的变量控件,并自动将变量条件传播到连接的块。不同的条件可以通过信号线、总线和函数调用传播,到达模型中的其他块。该过程使与非激活选择相关的模型组件失效,并且它们不包括在模拟中。您可以控制条件传播来定义模型中的不同区域。
使用变量条件图例可视化传播的变量条件
您可以使用变量条件图例来可视化激活每个变量选择的传播变量条件。如果模型组件上有变化的条件,那么Simulink就会对其进行注释,并且变化条件图例显示与每个注释对应的条件。
考虑这个包含多个变量选择的模型变异来源块。一个特定的变量条件激活每个变量的选择。
要查看变量条件图例,请在调试选项卡上,选择信息覆盖>变体的传说.
请注意
如果变体的传说是不可用的,上调试选项卡上,选择信息覆盖>变异的条件.
出现“变量条件传说”对话框。默认情况下,变量条件图例显示变量条件注释、模拟期间的变量条件,以及变量条件变量的来源。要查看生成代码中的变量条件,请选择显示生成的代码条件.
块上的变量条件注释为v: C
,在那里v
变体是语义指标和吗C
表示可变条件索引。您可以单击超链接的变量注释,以观察条件对应于模型的哪些部分。例如,如果您单击v: 3
,模型中具有条件的部分V = = 3
如图所示高亮显示。
当您在具有可变条件的块上暂停时,工具提示将显示该块的可变注释和相关的可变条件。要查看变量条件注释工具提示,可以使用变异条件选项必须选中。
在图例中,还显示了变量条件变量的来源。变量可以来自掩码、模型或基本工作区。一个块中使用的所有变量必须来自同一个源。在模型中,来自不同掩码工作区的变量可以具有相同的名称和不同的值。要观察变量的来源,请单击超链接的工作区。
请注意
与变体激活时间参数设置为更新图
,为非活动选择显示的变量来源可能不正确。非激活选择在信号属性传播之前被删除,因此不进行计算。
查看变异条件传奇通过编程,使用variantLegend
函数在MATLAB中的应用®命令窗口。
变量条件注释具有以下属性:
无条件块上没有注释。
为了减少混乱,图例只显示最终计算条件。例如,如果您在变异来源块,该条件仅在应用更改时出现在注释中。
图例中的条件在显示期间进行排序。
在图例中,条件设置为
假
如果与该条件相关的块从不活动。例如,
Inport4
块连接到变体Source1
Block,其条件为V = = 1
.变体Source1
连接到变体Source2
块,激活变体Source1
只有当V = = 4
.因此,Inport4
只能活跃在什么时候V = = 1 & & V = = 4
,一个条件,总是假
.在传说中
(默认)
关键字显示为否定的条件。
传播条件的场景
此表列出了解释条件传播如何与不同模型组件一起工作的主题。
块 | 场景 | 主题 |
---|---|---|
不同的子系统块 | 在外部传播条件不同的子系统块。 自适应接口能力不同的子系统块。 |
将变量条件传播到变量子系统之外 |
将条件传播到有条件执行的子系统块,例如启用,触发,重置,函数调用子系统当它们用作类中的变量选择时不同的子系统块。 使用不同的子系统块来创建导出函数模型。 |
使用可变子系统块和有条件执行的子系统 | |
的输出端口输出变量函数调用信号不同的子系统. | 变量子系统输出端口上的变量函数调用信号 | |
变异来源而且变体水槽块 | 从传播条件变异来源而且变体水槽块。 | 用不同的源和汇传播不同的条件 |
变异来源块 | 将条件传播到有条件执行的子系统块,例如启用,触发,重置,函数调用子系统. | 将变量条件从变量源块传播到有条件执行的子系统 |
的输出端口输出变量函数调用信号变异来源. | 使用可变源块来接收或输出函数调用信号,用于模拟和代码生成 | |
将条件传播到虚拟和非虚拟子系统。 | 将变量条件从变量源块传播到子系统块 | |
传播条件模型块。 | 用模型块传播变量条件 | |
将条件传播到总线元素块。 | 用总线传播变量条件 | |
不同的连接器块 | 将条件传播到物理网络中的组件。 | 不同的连接器(Simscape) |
仿真软件的功能块 | 指定或继承的变量条件仿真软件的功能块。 | 用Simulink函数块进行变量条件传播 |
初始化,重置,终止块 | 传播条件初始化,重置,终止块。 | 带有初始化、重置和终止块的变量条件传播 |
变体模型 | 停止模型中变量条件的传播。 | 控制变条件传播 |