主要内容

源和汇变异条件下传播与变体

变异条件下传播是如何运作的吗

当你指定条件变体模型包含变异来源变体水槽块,仿真软件金宝app®评估不同变体上指定的控制块和自动传播条件变体模型的连接块,以确定哪些组件是活跃在模拟。金宝app仿真软件然后失效与活动相关联的模型组件的选择和可视化活动连接。金宝app仿真软件使用变体激活时间块参数来确定时间的时候选择了活跃的变体的选择。变体激活时间的更多信息,请参阅激活变体在不同阶段的模拟和代码生成工作流

请注意

变异条件注释显示在模型组件帮助您可视化传播条件。

查看变异条件注释,调试选项卡上,选择信息覆盖>变体的传说

如果变体的传说不可用,对吗调试选项卡上,选择信息覆盖>变异的条件

交叉耦合的输入和输出

在这个模型中,变异来源块有两个输入变量条件Var = = 1Var = = 2,分别。第一个输入变异来源块分支到它的第二个输入连接块之前。第二个输入条件与变体Var = = 2是默认的变体的选择。

在仿真中,这个模型展示三种操作模式:

变异条件 积极的选择
Var = = 1

第一次输入的变异来源

Var = = 1 | | Var = = 2 第二次输入的变异来源和第一个输入的分支。
Var = = 2 第二次输入的变异来源

级联模块和复合条件

在这个模型中,变异来源一个变异来源B是两个变异来源块,每个由两个输入端口,连接在一个级联的方式。的输入变异来源一个是活跃的时瓦拉= = 1瓦拉= = 2。的输出变异来源一个分支机构的输入之一变体SourceB。的输入变体SourceB是活跃的时VarB = = 1VarB = = 2

在仿真中,这个模型展览8模式操作:

变异条件 积极的选择
瓦拉= = 1 & & VarB = = 1

第一次输入的变异来源一个变异来源B

瓦拉= = 1 & & VarB = = 2 第一次输入的变异来源一个和第二输入变异来源B
瓦拉= = 2 & & VarB = = 1 第二次输入的变异来源一个第一个输入的变异来源B
瓦拉= = 2 & & VarB = = 2 第二次输入的变异来源一个变异来源B
瓦拉= = 1 & & VarB ! = (1、2) 第一次输入的变异来源一个
瓦拉= = 2 & & VarB ! = (1、2) 第二次输入的变异来源B
瓦拉! = (1、2)& & VarB = = 1 没有一个
瓦拉! = (1、2)& & VarB = = 2 第二次输入的变异来源B
瓦拉! = (1、2)& & VarB ! = (1、2) 没有一个

层次嵌套的源或汇

在这个模型中,多个变异来源块用于创建层次嵌套的变量选择和提供变化对传感器输入。多个传感器的选择是由系列:分组一个系列,B系列,C系列。的变异来源块,设备模型从一个系列的,选择一个传感器。的供应商然后选择提供的传感器的选择设备模型XSensor

金宝app仿真软件传播复杂的变异控制条件来确定哪个模型组件在编译过程中十分活跃。

有关更多信息,请参见源和变体汇层次嵌套的变体

净变异条件

的净变异条件总当地条件及其祖先的条件。

在这个模型中,变异来源变体Source1对于两个单输入/变异来源块与变异的条件V = = 1W = = 1,分别。的允许控制零活跃的变体参数设置为块的变体。当这个选项被选中,没有活跃的变体的选择,仿真软件禁用所有的块连接的输入和输出流金宝app变异来源块。

这个模型模拟时,变体Source1块和其他街区内子系统块接收当地条件W = = 1传播的变体Source1块。祖先的条件V = = 1从传播变异来源块上子系统块。因此,净变异的条件变体Source1块和其他街区内子系统V = = 1 & & W = = 1。如果允许控制零活跃的变体参数设置为变异来源块,然后条件子系统W = = 1

传播与条件子系统

条件可以激活或禁用一个变体子系统块,但变异条件不能传播到子系统。一个子系统块可以从它的输出端口传播条件变体如果变异条件是源自一个港口内部子系统。

一个子系统可以是虚拟(分组或未归类)或一个原子子系统根据其块参数对话框中所做的选择。

  • 虚拟分组:选择治疗时分组传播变异条件复选框。一个分组的虚拟子系统有一个连续的线。

  • 未分组的虚拟:清除治疗时分组传播变异条件复选框。一个未归类的虚拟子系统有虚线。

  • 原子:选择治疗作为原子单元复选框。一个原子的虚拟子系统有一个实线。

金宝app这些子系统仿真软件传播条件不同的变体类型。

在这个模型中,三种类型的子系统提供作为块的输入变体Source2

  • 分组虚拟子系统时被激活V = = 1。金宝app仿真软件传播变体激活条件中的所有模块子系统。

  • 未分组的虚拟子系统时被激活V = = 2。金宝app仿真软件传播的变异激活条件块中可用虚拟子系统,同时标志着子系统。

  • 原子子系统时被激活V = = 3。金宝app仿真软件不传播变体激活条件子系统。

有关更多信息,请参见传播条件变体从变异源块子系统模块

条件与其他传播金宝app

变异条件下传播模型

金宝app仿真软件编译引用模型之前传播变异条件。条件可以激活或禁用一个变体模型块,但变异条件不能传播到参考模型。一个模型块可以从界面传播条件变体(输入、输出或控制端口),如果变异条件是源自一个港口内部的模型。

在这个例子中,变异状况V = = 1激活模型iv_20_model_reference_sub。然而,情况并不传播到模型引用的。模型iv_20_model_reference_sub2从其输出端口传播相同的变异情况。

变异条件下传播金宝app仿真软件的功能

参数尺寸。参数输出港块与金宝app仿真软件的功能不能连接到模块变异来源变体水槽块。条件必须控制整个一个变体金宝app仿真软件的功能

考虑到模型slexVariant金宝appSimulinkFunctionInherit

在这个例子中,函数调用块内港金宝app仿真软件的功能块的使不同条件选项选中。的(继承)关键字用于指定的值版本控制参数。结果,金宝app仿真软件的功能从相应的块继承了变异条件函数调用者在模型中。的生成预处理条件参数值也继承了。

请注意

使用C阶跃函数接口配置对话框来定制生成的C入口点模型的阶跃函数接口。如果输入和输出端口共享一个参数名称和变异传播条件,不支持这种级别的接口控制。金宝app

变异条件与初始化传播,重置,并终止

初始化,重置,终止功能块预配置子系统模块执行模型初始化期间,重置,并终止事件。类似于金宝app仿真软件的功能阻止这些块支持变异传播条件。金宝app你可以传播条件变体模型块有重置事件港口。这导致优化存在的块连接到端口重置事件。重置事件函数模型与不活跃的变体(参考模型)也支持变异传播条件。金宝app

请注意

  • 初始化终止事件港口总是无条件的,因为他们控制模型的默认和屏蔽一些初始化和终止事件的参考模型。如果你定义一个初始化函数终止函数块在参考模型中,它对应于一个显式的初始化或终止活动。

  • 如果您启用变异和定义条件的一个变体初始化函数终止函数块在参考模型中,变异条件下不会导致的变异情况模型块实例。

在这个例子中,事件监听器块内初始化,重置,术语块有使不同条件选项选中。的版本控制参数的事件监听器块被指定为V = = 0。如果你改变的价值V以外的任何值0,初始化,重置,术语块变得不活跃。

变异条件下传播公共汽车

一个变异来源块可以接受虚拟或nonvirtual总线输入。当与预处理条件生成代码时,所有总线的总线类型和层次结构的输入必须相同。

然而,所有的元素Mux,多路分配器,或者一个向量连接块信号必须有相同的变异情况。

有关更多信息,请参见变异条件下传播与公共汽车

变异条件下传播不同的连接器

一个不同的连接器块传播条件变体物理网络内所有连接组件。看到的,不同的连接器(Simscape)

限制

  • 从模型函数内部变异条件下传播金宝appStateflow不支持块。金宝app

  • 变体连接器块不传播之间的跨边界条件变体Simscape™物理网络和仿真软件模块连接到它。金宝app

相关的例子

更多关于