operspec
操作点规格
描述
例子
创建工作点规范对象
打开Sim金宝appulink模型。
sys =“watertank”;open_system(系统)
为模型创建默认的工作点规范对象。
Opspec = operspec(sys)
opspec =型号水箱的工作点规格。(时变组件评估在时间t = 0) : ---------- x已知稳态分钟马克斯dxMin dxMax ___________ ___________ ___________ ___________ ___________ ___________ ___________ ( 1) watertank / PID控制器/集成商/连续/集成商0错误真的负无穷到正无穷负无穷到正无穷(2)watertank /水箱系统/ H 1假真的0正无穷正输入:没有 ---------- 输出:没有 ----------
opspec
包含模型中两种状态的规范。由于模型没有根级导入或输出,opspec
不包含输入或输出规范。若要添加输出规范,请使用addoutputspec
.
使用点表示法修改每个状态的工作点规范。例如,配置第一个状态为:
处于稳定状态。
有一个下界
0
.初始值是
2
修剪。
opspec.States(1)。SteadyState = 1;opspec.States(1)方式=2;opspec.States(1)。Min = 0;
复制一个操作点规范
你可以创建新的operspec
变量有三种方式:
使用
operspec
命令使用等号赋值(
=
)操作符使用
复制
命令
使用=
运算符的结果是指向相同底层数据的链接变量。使用复制
命令的结果是独立的operspec
对象。在本例中,创建operspec
对象的两种方式,并检查他们的行为。
mdl =“watertank”;Open_system (mdl) opspec1 = operspec(mdl)
opspec1 =型号水箱的工作点规格。(时变组件评估在时间t = 0) : ---------- x已知稳态分钟马克斯dxMin dxMax ___________ ___________ ___________ ___________ ___________ ___________ ___________ ( 1) watertank / PID控制器/集成商/连续/集成商0错误真的负无穷到正无穷负无穷到正无穷(2)watertank /水箱系统/ H 1假真的0正无穷正输入:没有 ---------- 输出:没有 ----------
属性的赋值创建一个新的工作点规范对象=
操作符。
Opspec2 = opspec1;
opspec2
是一个operspec
对象,该对象指向相同的底层数据opspec1
.由于这个链接,您不能单独更改两者的属性operspec
对象。要看到这一点,更改的属性opspec2
.例如,将第一个状态的初始值从0更改为2。变化显示在州
部分的显示。
opspec2.States(1)。X = 2
opspec2 =模型水箱的工作点规格。(时变组件评估在时间t = 0) : ---------- x已知稳态分钟马克斯dxMin dxMax ___________ ___________ ___________ ___________ ___________ ___________ ___________ ( 1) watertank / PID控制器/集成商/连续/集成商2假真负无穷到正无穷负无穷到正无穷(2)watertank /水箱系统/ H 1假真的0正无穷正输入:没有 ---------- 输出:没有 ----------
检查展示opspec1
来看看对应的属性值opspec1
也从0变为2。
opspec1
opspec1 =型号水箱的工作点规格。(时变组件评估在时间t = 0) : ---------- x已知稳态分钟马克斯dxMin dxMax ___________ ___________ ___________ ___________ ___________ ___________ ___________ ( 1) watertank / PID控制器/集成商/连续/集成商2假真负无穷到正无穷负无穷到正无穷(2)watertank /水箱系统/ H 1假真的0正无穷正输入:没有 ---------- 输出:没有 ----------
若要创建工作点规范的独立副本,请使用复制
命令。
Opspec3 = copy(opspec1);
现在,当你改变opspec3
,opspec1
不会改变。例如,将第一个状态的初始值从2更改为4。
opspec3.States(1)。X = 4
opspec3 =模型水箱的工作点规格。(时变组件评估在时间t = 0) : ---------- x已知稳态分钟马克斯dxMin dxMax ___________ ___________ ___________ ___________ ___________ ___________ ___________ ( 1) watertank / PID控制器/集成商/连续/集成商4假真负无穷到正无穷负无穷到正无穷(2)watertank /水箱系统/ H 1假真的0正无穷正输入:没有 ---------- 输出:没有 ----------
在opspec1
,对应的值保持为2。
opspec1.States(1)方式
Ans = 2
发生这种复制行为是因为operspec
是一个处理对象.有关句柄对象的详细信息,请参见处理对象行为.
创建工作点规范对象数组
打开Sim金宝appulink模型。
sys =“watertank”;open_system(系统)
创建2 × 3的工作点规范对象数组。您可以使用这样的数组在多个工作点批量修剪模型。
Opspec = operspec(sys,[2,3]);
的每个元素opspec
包含模型的默认工作点规范对象。
使用点表示法修改工作点规范对象。例如,在行中配置规范对象的第二个状态1
、列3.
.
opspec(1、3).States(2)。SteadyState = 1;opspec(1、3).States(1)。X = 2;
还可以创建工作点规范对象的多维数组。例如,创建一个3 × 4 × 5的数组。
Opspec = operspec(sys,[3,4,5]);
输入参数
mdl
- - - - - -金宝app仿真软件模型
特征向量|字符串
金宝appSimulink模型名称,指定为字符向量或字符串。
昏暗的
- - - - - -阵列尺寸
整数|整数行向量
数组尺寸,指定为下列之一:
Integer -创建列向量
昏暗的
操作点规范对象。整数行向量-创建一个操作点规范对象数组,其尺寸由
昏暗的
.例如,要创建一个4乘5的工作点规范对象数组,使用:
Opspec = operspec(mdl,[4,5]);
若要创建工作点规范对象的多维数组,请指定其他维度。例如,要创建一个2 × 3 × 4的数组,使用:
Opspec = operspec(mdl,[2,3,4]);
输出参数
opspec
-工作点规格
OperatingSpec
对象|的数组OperatingSpec
对象
操作点规格,返回为OperatingSpec
对象或此类对象的数组。
您可以使用点表示法修改工作点规范。例如,如果opspec
是单一的OperatingSpec
对象,opspec.States(1)方式
访问第一个模型状态的状态值。如果opspec
的数组。OperatingSpec
对象opspec(2、3).Inputs (1) .u
访问行中规格的第一个输入块的输入级别2
、列3.
.
每一个OperatingSpec
对象具有以下属性。
财产 | 描述 | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
模型 |
金宝appSimulink模型名称,作为字符向量返回。 | ||||||||||||||||||||||||||||||
州 |
状态操作点规范,作为状态规范对象的向量返回。每一项 有关操作点对象支持的状态列表金宝app,请参见金宝app包含在工作点对象中的Simulink模型状态.属性编辑此对象的属性 请注意 如果块有多个命名的连续状态, 每个状态规范对象都有以下字段:
|
||||||||||||||||||||||||||||||
输入 |
操作点上的输入级规范,作为输入规范对象的向量返回。每一项 每个输入规范对象都有以下字段:
|
||||||||||||||||||||||||||||||
输出 |
操作点的输出级规格,作为输出规格对象的矢量返回。每一项 可以使用命令指定额外的修剪输出约束 每个输出规范对象都有以下字段:
|
||||||||||||||||||||||||||||||
时间 |
计算模型中时变函数的时间,作为向量返回。 |
||||||||||||||||||||||||||||||
CustomObjFcn |
函数,提供额外的自定义目标函数用于修剪,指定为自定义函数的句柄,或包含函数名的字符向量或字符串。自定义函数必须在MATLAB上®路径或当前工作文件夹中。 您可以将自定义目标函数指定为模型状态、输入和输出的代数组合。有关更多信息,请参见使用自定义约束和目标函数计算工作点. |
||||||||||||||||||||||||||||||
CustomConstrFcn |
提供额外的自定义修剪约束的函数,指定为自定义函数的句柄,或包含函数名的字符向量或字符串。自定义函数必须在MATLAB路径或当前工作文件夹中。 您可以将自定义的等式和不等式约束指定为模型状态、输入和输出的代数组合。有关更多信息,请参见使用自定义约束和目标函数计算工作点. |
||||||||||||||||||||||||||||||
CustomMappingFcn |
函数,该函数将模型状态、输入和输出映射到所接受的向量 对于复杂的模型,您可以使用自定义映射函数将模型输入、输出和状态的子集传递给自定义约束和目标函数。如果指定了自定义映射,则必须将该映射用于自定义约束函数和自定义目标函数。有关更多信息,请参见使用自定义约束和目标函数计算工作点. |
提示
版本历史
R2006a之前介绍R2021b:PortWidth
属性的工作点规格输入和输出将被删除
输入和输出PortWidth
在未来的版本中,将删除工作点规范的属性。使用新的ν
而且纽约
属性来代替。
的实例来更新代码PortWidth
要么ν
或纽约
如下表所示。
不推荐 | 推荐 |
---|---|
Op = operspec('scdplane');numOut = op.Outputs(1).PortWidth;numIn = op.Inputs(1).PortWidth; |
Op = operspec('scdplane');numOut = op.Outputs(1).Ny;numIn = op.Inputs(1).Nu; |
另请参阅
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。