主要内容

变体子系统,变体模型

模板包含子系统,子系统模型,或子系统参考块变体的选择

  • 库:
  • 金宝app模型/港口和子系统

    高密度脂蛋白编码器/港口和子系统

  • 变体子系统,变体模型块

描述

不同的子系统块可以包括多个组件的实现在一个单独的层次结构。

例如,假设你想模拟模型,代表了汽车发动机的三种可能的参数:四缸气体,6缸气体,8-cylinder气体。你可以实现每个引擎模型作为一个独立的子系统中不同的子系统然后子系统基于之间切换控制模式变体块类型的变体你选择。有关更多信息,请参见介绍了版本控制

请注意

只有一个实现的不同的子系统在模拟是活跃的。

多个模型发动机内部子系统块一个变体

不同的子系统块模板预配置包含两个或多个块作为变异的选择。这些选择代表多个实现的一个系统。只有一个孩子块活动期间模型执行。活跃的孩子被称为块活跃的变体

在每一个变体的选择不同的子系统块与一个关联变量控制方式和一个变体激活时间。变量控制方式决定如何选择活动的变体。变体激活时间决定一次激活的选择和决定是否只包括主动选择或两个活跃的和不活跃的选择在生成的代码中。

一个不同的子系统块可以包含的混合物子系统块,模型块,或子系统的参考块是不同的选择。一个不同的子系统块与模型块称为选择变体模型块。在这些街区的更多信息,请参阅创建子系统,模型,子系统的参考

除了变体的选择,你可以包括轮廓尺寸,外港,连接端口(Simscape)块内不同的子系统块。没有内部的块之间的联系不同的子系统块。金宝app动态仿真模块®自动连接积极变体轮廓尺寸外港块的不同的子系统在编译模型。块代表变量的选择可以有输入和输出端口不同数量的输入和输出端口的父母不同的子系统块。有关更多信息,港口和外港地图子系统变体选择的变体

使用不同的子系统块可以:

  • 混合子系统,模型,子系统的参考块是不同的选择。

  • 没有类似的接口的模型组件。你可以有不同数量的选择在一个港口和外港多个变体不同的子系统

  • 建立层次结构框图,不同的子系统块在一层和变量选择是在另一个层。

  • 保持相关功能块在一起。

  • 减少你的模型的复杂性。

  • 在模型编译、仿真软件消除无效块在整个模型,提高模型的金宝app运行时性能。

变体徽章的颜色和图标的图标变化取决于的值变体激活时间,变量控制方式,传播条件子系统之外的变体参数设置。有关更多信息,请参见变体徽章

港口

在仿真中,仿真软件禁用的不活跃的港口金宝app不同的子系统块。

输入

全部展开

每一个子系统,模型,或子系统的参考块包含在一个不同的子系统代表一个不同的选择。变量的选择可以有相同或港口的一个子集不同的子系统容器。

输出

全部展开

每一个子系统,模型,或子系统的参考块包含在一个不同的子系统代表一个不同的选择。变量的选择可以有相同或输出港的一个子集不同的子系统容器块或它可以在集装箱港口的一个子集。

请注意

独立输出港(不活跃的外港)不同的子系统输出值。除了地面,输出值选择指定输出当源无关参数的外港块,并指定一个值。

参数

全部展开

变量控制,确定活动的变异的选择可以是任何这些类型。

  • 表达式——在表达式模式,模型选金宝app择积极的变异基于变异条件的评估。当一个表达式计算条件真正的选择变得活跃,相应的变体。当一个表达式计算条件选择变得不活跃,相应的变体。看到块之间切换选择使用条件表达式的变体

  • 标签——在标签模式,模型选金宝app择积极的变异基于名称的变体。版本控制是一个字符串,并且不需要创建任何工作空间变量。看到选择在变体使用标签之间切换

  • sim codegen切换——自动切换变异模拟和代码生成工作流没有创建任何工作空间变量,使用sim codegen切换模式。当你模拟模型,模型自动选择金宝appsim卡分支的主动选择。同样的,当你做一个software-in-the-loop (SIL)或processor-In-Loop(公益诉讼)模拟,生成代码,或使用外部模式,模型自动选择金宝appcodegen分支。看到仿真和代码生成工作流之间切换选择不使用控制变量变异块

不同控制模式的更多信息,见介绍了版本控制。比较不同类型的变体控制模式,明白了比较不同类型的变体块控制模式变体

依赖关系

不同变体激活时间的可用性取决于的类型变量控制方式你指定。的变体激活时间参数确定模型集的时候主动选择。金宝app参数也决定了哪些变化包括在生成的代码中。这个表解释了变体激活时间控制方式由每个变体。金宝app

变体激活时间
变量控制方式 更新图 更新图分析所有的选择 代码编译 启动
表达式
标签 x x x
sim codegen切换 x x

这个参数决定了哪些变化模拟和代码生成中包含工作流。有关更多信息,请参见激活变体在不同阶段的模拟和代码生成工作流

你可以设置变体激活时间参数为:

  • 更新图——当您执行模型,只有主动选择包括在模拟和代码生成工作流。生成的代码只包含积极的选择。

  • 更新图分析所有的选择——当你执行模式,活跃的和不活跃的选择对模型的一致性进行了分析。然而,只有积极的选择包括在模拟和代码生成工作流。生成的代码只包含积极的选择。

  • 代码编译——当你执行模式,活跃的和不活跃的选择进行了分析模型的一致性,和所有的选择都是包含在模拟和代码生成工作流。生成的代码同时包含活跃的和不活跃的选择封闭预处理条件#如果# elif。然而,执行由生成的代码只包含积极的选择。

  • 启动——当你执行模式,活跃的和不活跃的选择进行了分析模型的一致性,和所有的选择都是包含在模拟和代码生成工作流。使用这个选项,可以改善迭代模拟使用快速启动的速度。有关更多信息,请参见运行迭代模拟不重新编译模型变体使用快速重启系统。代码生成自模型包含两个活跃的和不活跃的选择是用普通的如果条件。可执行由生成的代码还包含两个活跃的和不活跃的选择。

依赖关系

不同变体激活时间的可用性取决于类型的变量控制方式指定。的变体激活时间参数确定时,仿真软件设置当前的选择。金宝app参数也决定了哪些变化包括在生成的代码中。这个表解释了变体激活时间控制方式由每个变体。金宝app

变体激活时间
变量控制方式 更新图 更新图分析所有的选择 代码编译 启动
表达式
标签 x x x
sim codegen切换 x x

编程使用

块参数:VariantActivationTime
类型:特征向量
价值观:更新图|更新图分析所有的选择|代码编译|启动
默认值:更新图

每个变体选择的表有一行中包含的子系统。如果没有变异的选择,桌子上是空的。

您可以使用按钮的左边变量的选择表来修改表中的元素。

…… 点击…
创建和添加一个新的子系统的选择:创建一个新的子系统块作为一个变体的选择和添加新表中选择一个条目。 创建和添加一个新的子系统的选择按钮
创建和添加一个新的模型变量的选择:创建一个新的模型块作为一个变体的选择和添加新表中选择一个条目。 创建并添加一个新的模型变量的选择按钮

创建/编辑选定的变量对象:创建或编辑金宝appSimulink.Variant全球工作区并指定对象变异条件使用金宝appSimulink.Variant对象参数对话框。

请注意

模型使用工作区底部,此操作创建金宝appSimulink.Variant对象基本工作空间和对象仅为当前可用MATLAB会话。永久存储数据,保存对象在垫子上文件或MATLAB脚本。

创建或编辑选定的变量对象按钮
打开选定的变量选择:打开子系统为选中的行块。 打开选定的变体的选择按钮
从变体刷新对话框信息子系统的内容:更新变量的选择表根据变量控制的变体的选择和价值观在全球工作区。 从变体刷新对话框信息子系统内容按钮

这个只读字段显示块的名称中包含的子系统。

选择一个名称,指定为一个字符串。

依赖

要启用该参数,设置变量控制方式标签

指定条件表达式来确定积极的选择。当一个表达式计算条件真正的选择金宝app,仿真软件激活相应的变体。当一个表达式计算条件仿真金宝app软件失效,选择相应的变体。

版本控制可以:

在这里,一个B是操作数称为不同的控制变量= =,~ =,& &运营商在条件表达式。条件表达式可以包含一个或多个这样的变异控制变量和运营商。支持的类型和信息存储位置的变异控制变量金宝app,看看控制变量类型的变体(操作数)的变体存储位置变异控制变量(操作数)的变体。运营商的信息,请参阅类型的运营商不同活化时间的变体块

有关更多信息,请参见块之间切换选择使用条件表达式的变体

编程使用

结构:由只读variant.Name字段变体参数结构
类型:特征向量
值:版本控制与变体的选择有关
默认值:“变异”

这个只读字段显示指定的条件表达式金宝appSimulink.Variant对象。改变或编辑条件表达式,使用金宝appSimulink.Variant参数对话框出现在工作区中双击对象时。

请注意

你指定一个条件表达式的操作数类型金宝appSimulink.Variant必须定义在基工作区或一个数据字典。指定操作数中定义的面具不支持或模型的工作区。金宝app

这个列表包含所有变体选择的标签。树立一个积极的选择,从列表中选择一个标签。相应的选择变得活跃。或者,您可以遵循所描述的方法设置主动选择使用变异控制标签改变标签的积极的选择模式。

依赖关系

要启用该参数,设置变量控制方式参数标签

编程使用

参数:LabelModeActivechoice
类型:特征向量
值:如果没有指定标签模式主动选择,值是空的。如果指定标签模式积极的选择,该值的名称标签模式积极的选择。
默认值:
  • ——金宝app仿真软件生成一个错误当没有活跃的变体的选择。

  • ——当你选择这个选项,如果没有积极的变体的选择,仿真软件模拟该模型没有任何活跃的变体的选择金宝app不同的子系统。金宝app动态仿真模块断开所有的块连接到输入和输出流不同的子系统块,从而消除变异区域完全从模型。不活跃的外港的子系统输出值。除了地面,输出值选择指定输出当源无关参数的外港您所选择的块并指定一个值。

依赖关系

该参数只提供如果没有默认的变体选择的不同的子系统如果你设置变量控制方式表达式

编程使用

参数:AllowZeroVariantControls
类型:特征向量
值:“关闭”|“上”
默认值:“关闭”

当您选择传播条件子系统之外的变体参数,仿真软件传播的变金宝app异条件的底层块不同的子系统容器块子系统可以调整其接口底层模块的状态。端口映射到活跃的港口选择变得活跃。港口不映射到港口不活跃的选择变得不活跃。选择这个选项确保组件之外的不同的子系统都知道街区内的活跃的和不活跃的状态吗不同的子系统块。有关更多信息,请参见传播变异条件变体以外的子系统使用变体子系统模块,有条件地执行子系统

请注意

变异条件外不传播不同的子系统块如果块内的所有变体的选择有相同的接口。

编程使用

参数:PropagateVariantConditions
类型:特征向量
值:“关闭”|“上”
默认值:“关闭”

块特征

数据类型

布尔一个|公共汽车一个|一个|枚举一个|不动点一个|一半一个|整数一个|一个|字符串一个

直接引线

没有

多维信号

有限的一个

适应信号

有限的一个

讨论二阶导数过零检测

没有

一个实际数据类型或能力取决于块实现的支持。金宝app

扩展功能

版本历史

介绍了R2010b