主要内容

本页采用了机器翻译。点击此处可查看英文原文。

Advisor.authoring.CompositeConstraint 类

命名空间: Advisor.authoring

创建一个模型顾问约束,用于检查多个约束

描述

Advisor.authoring.CompositeConstraint 类的实例包含多个约束。根据实例定义,如果模型不满足一个或所有约束,模型顾问会报告违规。

构造

cc = Advisor.authoring.CompositeConstraint() 创建此类的一个实例。

属性

全部展开

构成 Advisor.authoring.CompositeConstraint 对象的约束 ID。此属性是只读的。使用 addConstraintID 方法创建 CompositeConstraint

使用 and 运算符指定模型顾问在模型不满足所有检查约束报告违规。使用 or 运算符指定,如果模型不满足至少一个检查约束,模型顾问报告违规。此属性是可读取/写入的。

方法

addConstraintID 向复合约束添加约束

示例

全部折叠

这些命令为 Multiport Switch 块指定复合约束。

创建三个 PositiveBlockParameter 约束对象。

c1 = Advisor.authoring.PositiveBlockParameterConstraint(); 
c1.ID = 'ID_A2'; 
c1.BlockType = 'MultiPortSwitch'; 
c1.ParameterName = 'DataPortOrder'; 
c1.SupportedParameterValues = {'Specify indices'}; 
c1.ValueOperator = 'eq'; 

c2 = Advisor.authoring.PositiveBlockParameterConstraint(); 
c2.ID = 'ID_A3'; 
c2.BlockType = 'MultiPortSwitch'; 
c2.ParameterName = 'DataPortForDefault'; 
c2.SupportedParameterValues = {'Additional data port'}; 
c2.ValueOperator = 'eq'; 

c3 = Advisor.authoring.PositiveBlockParameterConstraint(); 
c3.ID = 'ID_A4'; 
c3.BlockType = 'MultiPortSwitch'; 
c3.ParameterName = 'DiagnosticForDefault'; 
c3.SupportedParameterValues = {'None'}; 
c3.ValueOperator = 'eq'; 

使用 addPreRequisiteConstraintID 方法使 c1 成为检查约束 c2c3 的前提条件。

c2.addPreRequisiteConstraintID('ID_A2'); 
c3.addPreRequisiteConstraintID('ID_A2'); 

创建一个复合约束,规定如果 Rate Transition 模块不满足约束 c2c3,则该模块违反此检查。

CC = Advisor.authoring.CompositeConstraint(); 
CC.addConstraintID('ID_A3');
CC.addConstraintID('ID_A4'); 
CC.CompositeOperator = 'and'; 

版本历史记录

在 R2018a 中推出