金宝appSimulink.VariantVariableclass
包:金宝app
创建一个变量参数对象
描述
的金宝appSimulink.VariantVariable
类创建一个变量参数对象。您可以指定多个值为每个对象。您还可以指定属性维度等数据类型,等等。每个值对象的变异条件表达式。设置参数值和属性的对象,然后引用对象的块。
在你创建一个新的金宝appSimulink.VariantVariable
对象,创建一个金宝appSimulink.VariantControl
对象代表了不同控制变量中使用金宝appSimulink.VariantVariable
对象。
请注意
您可以创建变体参数对象只有在基地或在数据字典。
创建
创建一个空对象变量参数。P
= 金宝appSimulink.VariantVariable
创建一个变量参数所指定的一个或多个对象P
= 金宝appSimulink.VariantVariable (名称,值
)名称,值
对参数。使用这种语法,您可以指定多个值的对象,并将每个值与变异条件表达式。您还可以指定数据类型等属性的对象,存储类,尺寸等等。
输入参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“规范”、“Pspec’,‘选择’,{V = = 1, 4.5 V = = 2, 9.5}
规范
- - - - - -变异参数对象的属性
金宝appSimulink.Parameter
对象名称
变异参数对象的属性,如数据类型,尺寸,存储类,等等,指定为金宝appSimulink.Parameter
对象。默认的存储类金宝appSimulink.Parameter
对象是汽车
。如果你指定的存储类汽车
,的值对象内联文本值在生成的代码中。如果您指定对象的存储类以外的任何东西汽车
,对象表示为可调参数在生成的代码中使用符号名称。有关更多信息,请参见选项代表变异参数生成的代码(嵌入式编码)。
例子:“规范”、“Pspec”
选择
- - - - - -变异条件和价值观
单元阵列
变异条件和值,指定为一个结构体。在模拟,当条件的求值结果为一个变体真正的
,其相关值变得活跃。当条件的求值结果为一个变体假
,其相关值变得不活跃的。没有两个相同的变量参数的值必须与条件相同的变体。
您可以指定条件变体作为布尔MATLAB®包含一个或多个操作数和运算符表达式。看到类型的变量控制变量参数(操作数)的变体和参数类型的运营商变体。
您可以指定数字的值、枚举或金宝appSimulink.Parameter
类型。看到的,数值变量控制参数值快速原型的变体,提高代码的可读性变体使用枚举类型参数,使用仿真软件重用变异参数值从手写代码。金宝app参数变量。
例子:“选择”,{V = = 1, 4.5,“V = = 2”, 9.5}
方法
公共方法
addChoice |
添加选择变异参数对象 |
getChoice |
返回变量参数的选择对象 |
setChoice |
修改现有的参数对象选择的变体 |
removeChoice |
删除从变异参数对象的选择 |
专业运营商和功能
这些方法专业标准MATLAB操作符和函数这个类的对象。
bitcmp |
对输入执行位操作的补充。 |
情商 |
比较,如果输入是相等的。 |
gt |
比较如果第一个输入大于第二个输入。 |
mrdivide |
把第一个输入第二个输入。 |
或 |
执行逻辑或输入。 |
uminus |
否定输入。 |
bitor |
执行位操作或输入。 |
通用电气 |
比较如果第一个输入大于或等于第二个输入。 |
勒 |
比较如果第一个输入小于或等于第二个输入。 |
mtimes |
繁殖的输入。 |
+ |
添加输入。 |
uplus |
返回输入的值。 |
和 |
执行逻辑输入。 |
bitshift |
转变位指定数量的地方。 |
lt |
比较如果第一个输入小于第二个输入。 |
不 |
如果输入是不平等的比较。 |
bitand |
执行位操作和输入。 |
bitxor |
对输入执行位操作XOR。 |
- |
从第一个输入减去第二个输入。 |
不 |
返回输入的逻辑不是。 |
例子
数值变量控制参数值快速原型的变体
数值允许您快速原型变量值时仍然构建模型。数值帮助你更加关注建筑变异值比发展中激活这些选择的表达式。
您可以定义数字控制中列出的值位置存储位置变异控制变量(操作数)的变体。
打开slexVariantParameters
模型。
open_system (“slexVariantParameters”)
在MATLAB编辑器中,指定变体选择最简单的形式的数值金宝appSimulink.VariantVariable
对象K1
和K2
。
K1 = 金宝appSimulink.VariantVariable (“选择”,{“V = = 1”,3.5,“V = = 2”,8.5})
K1 = VariantVariable 2选择:条件价值_____ _____ V = = 1 3.5000 V = = 2 8.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
K2 = 金宝appSimulink.VariantVariable (“选择”,{“V = = 1”,4.5,“V = = 2”,9.5})
K2 = VariantVariable 2选择:条件价值_____ _____ V = = 1 4.5000 V = = 2 9.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
一旦你成功地创建金宝appSimulink.VariantVariable
对象,可以用描述的方法修改它们公共方法或从VariantVariable
对话框。
激活一个变量值通过定义一个控制变量,V
,并设置它的值1
在一个金宝appSimulink.VariantControl
对象。
V = 金宝appSimulink.VariantControl (“价值”,1“ActivationTime”,“更新图”)
V = VariantControl属性:值:1 ActivationTime:“更新图”
当你模拟模型,条件V = = 1
计算结果为真正的
。K1
分配一个值的3.5
和K2
分配一个值的8.5
。
sim卡(“slexVariantParameters”)
如果你改变的价值V
来2
,仿金宝app真软件®设置的值K1
和K2
来4.5
和9.5
在模拟。你可以改变的价值V
使用这个命令或金宝appSimulink.VariantControl
对话框。
V。Value = 2; sim (“slexVariantParameters”)
金宝appSimulink.ParameterType of Variant Control Variables for Code Generation of Variant Parameters
如果您打算为模型生成代码包含变异参数,指定变量作为控制变量金宝appSimulink.Parameter
对象。金宝appSimulink.Parameter
对象允许您指定其他属性,比如数据类型和存储类,和控制变量控制的外观和位置变量生成的代码。
您可以定义一个变量控制变量的类型
金宝appSimulink.Parameter
只有在基本工作空间或在数据字典。定义金宝appSimulink.Parameter
面具或模型中的控制变量类型的变体工作区不支持。金宝app为控制变量存储位置变量的更多信息,见存储位置变异控制变量(操作数)的变体。金宝appSimulink.Parameter
以外的对象的内部结构和数据类型金宝appSimulink.Bus
不支持对象。金宝app
打开slexVariantParameters
模型。
open_system (“slexVariantParameters”)
在MATLAB编辑器中,定义一个金宝appSimulink.Parameter
对象。
VSS_MODE = 金宝appSimulink.Parameter;VSS_MODE。价值= 1; VSS_MODE.DataType =“int32”;VSS_MODE.CoderInfo。StorageClass =“自定义”;VSS_MODE.CoderInfo。CustomStorageClass =“定义”;VSS_MODE.CoderInfo.CustomAttributes。HeaderFile =“demo_macros.h”;
变量定义为控制变量金宝appSimulink.Parameter
列出的对象可以有任何存储类存储类激活时间为不同的变体(嵌入式编码)。
你也可以一个标量变量控制变量转换成一个金宝appSimulink.Parameter
对象。有关更多信息,请参见不同控制变量转换成仿真软件。金宝app参数对象。
指定对象作为版本控制金宝appSimulink.VariantVariable
对象
K1
和K2
。
K1 = 金宝appSimulink.VariantVariable (“选择”,{“V = = 1”,3.5,“V = = 2”,8.5})
K1 = VariantVariable 2选择:条件价值_____ _____ V = = 1 3.5000 V = = 2 8.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
K2 = 金宝appSimulink.VariantVariable (“选择”,{“V = = 1”,4.5,“V = = 2”,9.5})
K2 = VariantVariable 2选择:条件价值_____ _____ V = = 1 4.5000 V = = 2 9.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
一旦你成功地创建金宝appSimulink.VariantVariable
对象,可以用描述的方法修改它们公共方法或从VariantVariable
对话框。
激活一个变量值通过定义一个控制变量V
并将它的值设置为VSS_MODE
在一个金宝appSimulink.VariantControl
对象。
V = 金宝appSimulink.VariantControl (“价值”VSS_MODE,“ActivationTime”,代码编译的)
V = VariantControl属性:价值:[1 x1仿真软件。金宝app参数]ActivationTime:代码编译的
当你模拟模型,条件V = = 1
计算结果为真正的
。K1
分配一个值的3.5
,K2
分配一个值的8.5
。
sim卡(“slexVariantParameters”)
如果你改变的价值VSS_MODE
来2
,仿金宝app真软件®设置的值K1
和K2
来4.5
和9.5
在模拟。你可以改变的价值V
使用这个命令或金宝appSimulink.VariantControl
对话框。
VSS_MODE。价值= 2; V.Value = VSS_MODE; sim (“slexVariantParameters”)
从模型中生成代码。关于如何生成代码的信息,请参阅使用嵌入式编码器生成代码(嵌入式编码)
生成的代码包含两种线性
和非线性
选择预处理条件#如果
和# elif
因为代码编译
激活时间。变异的控制变量V
使用宏定义-#定义
指令-在头文件demo_macros.h。
你可以控制的外观和位置V
在生成的代码中,防止优化消除存储V
使用存储类属性。有关更多信息,请参见存储类激活时间为不同的变体(嵌入式编码)。
% demo_macros.h% / *导出的数据定义* /%% / *定义自定义存储类:定义* /% # define V 2 / *引用:% * < Root > /获得的% * < Root > / Gain1”% * /% # endif / * RTW_HEADER_demo_macros_h_ * /%% / *
金宝appSimulink.VariantObjects for Variant Condition Reuse of Variant Parameters
识别模型需要的变量值之后,您可以构建复杂的变异条件控制激活你的变异参数值通过定义变量条件金宝appSimulink.Variant
对象。金宝appSimulink.Variant
对象允许您跨模型和重用常见变异条件帮助你封装复杂的变异条件表达式。
您可以定义一个变量控制变量的类型
金宝appSimulink.Variant
只有在基本工作空间或在数据字典。定义金宝appSimulink.Variant
面具或模型中的控制变量类型的变体工作区不支持。金宝app为控制变量存储位置变量的更多信息,见存储位置变异控制变量(操作数)的变体。金宝appSimulink.Variant
在不支持结构。金宝app
打开slexVariantParameters
模型。
open_system (“slexVariantParameters”)
在MATLAB®编辑器中,封装变异控制表达式金宝appSimulink.Variant
对象。
LinearController 金宝app= Simulink.Variant (“V = = 1”);NonLinearController 金宝app= Simulink.Variant (“V = = 2”);
指定金宝appSimulink.Variant
控制在一个对象的变体金宝appSimulink.VariantVariable
对象K1
和K2
。
K1 = 金宝appSimulink.VariantVariable (“选择”,{“LinearController”,3.5,“NonLinearController”,8.5})
K1 = VariantVariable 2选择:___________________ _____ LinearController条件值3.5000 NonLinearController 8.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
K2 = 金宝appSimulink.VariantVariable (“选择”,{“LinearController”,4.5,“NonLinearController”,9.5})
K2 = VariantVariable 2选择:___________________ _____ LinearController条件值4.5000 NonLinearController 9.5000规范:“使用getChoice、setChoice addChoice, removeChoice访问,修改、添加或删除选项
一旦你成功地创建金宝appSimulink.VariantVariable
对象,可以用描述的方法修改它们公共方法或从VariantVariable
对话框。
通过定义一个激活其中一个变量值金宝appSimulink.VariantControl
对象V
并将它的值设置为1
。
V = 金宝appSimulink.VariantControl (“价值”,1“ActivationTime”,“更新图”)
V = VariantControl属性:值:1 ActivationTime:“更新图”
当你模拟模型,条件V = = 1
计算结果为真正的
。K1
分配一个值的3.5,
和K2
分配一个值的8.5
。
sim卡(“slexVariantParameters”)
如果你改变的价值V
来2
,仿金宝app真软件®设置的值K1
和K2
来4.5
和9.5
在模拟。你可以改变的价值V
使用这个命令或金宝appSimulink.VariantControl
对话框。
V。Value = 2; sim (“slexVariantParameters”)
使用这种方法,您可以开发复杂的变异条件表达式是可重用的。
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
相关变量参数
启动
激活时间,您可以生成代码通过安装两个活跃的和不活跃的选择金宝app®编码器™或者嵌入式编码器®。相关变量参数
代码编译
激活时间:您必须安装金宝app仿真软件编码器来生成代码只活跃的变量参数的值。使用生成代码金宝app仿真软件编码器只有支金宝app持变量参数的值具有相同的维度。
您必须安装嵌入式编码器来生成代码为活跃的和不活跃的变量参数的值。生成代码使用嵌入式编码支持变异参数值有相同和不同的维度。金宝app
在代码生成变异参数的更多信息,见选项代表变异参数生成的代码(嵌入式编码)。
版本历史
MATLABコマンド
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してくださ了对いweb这类ブラウザーはMATLABコマンドをサポートしていません。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。