主要内容

findop

稳态操作点从规范(修剪)或模拟

描述

例子

人事处= findop (mdl,opspec)返回操作的模型,符合规范opspec。通常,您的模型稳态操作点。的仿真软金宝app件®模型必须是开放的。如果opspec是一个数组的操作规范,findop返回一个数组相应的操作点。

例子

人事处= findop (mdl,opspec,参数)批阀内件的模型中指定的参数值的变化参数

例子

人事处= findop (___,选项)阀内件模型使用额外的优化算法选项

例子

(人事处,opreport)= findop (___)返回一个操作点搜索报告,opreport的,对于任何以前的语法。

例子

人事处= findop (mdl,tsnapshot)使用模型初始条件,模拟了模型和提取操作点模拟快照*中指定tsnapshot

例子

人事处= findop (mdl,tsnapshot,参数)批处理模拟模型中使用指定的参数值的变化参数在模拟快照的时间,提取操作点。

例子

全部折叠

打开仿真软件模型。金宝app

mdl =“watertank”;open_system (mdl)

削减模型来找到一个水箱水平稳态操作点10

创建默认的操作点规范对象。

opspec = operspec (mdl);

为第一个模型状态配置规范。第一个状态必须在稳态的下界0。提供的初始猜测2为国家的价值。

opspec.States (1)。稳态= 1;opspec.States (1)。x = 2;opspec.States (1)。最小值= 0;

配置第二个模型状态作为一个已知状态的价值10

opspec.States (2)。= 1;opspec.States (2)。x = 10;

找到满足这些规范的操作点。

op = findop (mdl opspec);
操作点搜索报告:- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - opreport watertank =操作点搜索报告模型。(时变组件评估在时间t = 0)操作点规范成功实现。状态:- - - - - - - - - - - Min x马克斯dxMin dx dxMax交交交(1)watertank / PID控制器/集成商/连续/集成商0 1.2649正0 0 0 (2)watertank /水箱系统/ H 10 10 10 0 0 0输入:- - - - - - - - - - -没有一个输出:- - - - - - - - - - -

打开仿真软件模型。金宝app

mdl =“watertank”;open_system (mdl)

不同的参数一个b在10%的名义值,并创建一个3×4参数网格。

[A_grid, b_grid] = ndgrid (linspace (0.9 * 1.1 * 3),linspace (0.9 * b, b 1.1 * 4));

创建一个参数结构数组,指定每个参数的名称和网格点。

参数(1)。Name =“一个”;参数(1)。价值= A_grid; params(2).Name =“b”;参数(2)。价值= b_grid;

创建一个默认的操作点规范模型。

opspec = operspec (mdl);

削减模型使用指定的操作规范和参数网格点。

选择= findopOptions (“DisplayReport”,“关闭”);op = findop (mdl、opspec params,选择);

人事处是一个3×4指定的操作点对应的对象数组参数网格点。

打开仿真软件模型。金宝app

mdl =“watertank”;open_system (mdl)

创建一个默认的操作点规范对象。

opspec = operspec (mdl);

创建一个选项设置集优化器类型梯度下降和抑制搜索报告显示。

选择= findopOptions (“OptimizerType”,“graddescent”,“DisplayReport”,“关闭”);

使用指定的选项集削减模型。

op = findop (mdl opspec,选择);

打开仿真软件模型。金宝app

mdl =“watertank”;open_system (mdl)

创建默认的操作点规范对象。

opspec = operspec (mdl);

为第一个模型状态配置规范。

opspec.States (1)。稳态= 1;opspec.States (1)。x = 2;opspec.States (1)。最小值= 0;

为第二个模型状态配置规范。

opspec.States (2)。= 1;opspec.States (2)。x = 10;

找到符合这些规范的操作点,并返回操作点搜索报告。创建一个选项设置为抑制搜索报告显示。

选择= findopOptions (“DisplayReport”、假);[op, opreport] = findop (mdl opspec,选择);

opreport描述如何密切优化算法满足规范的操作点搜索。

opreport
opreport watertank =操作点搜索报告模型。(时变组件评估在时间t = 0)操作点规范成功实现。状态:- - - - - - - - - - - Min x马克斯dxMin dx dxMax交交交(1)watertank / PID控制器/集成商/连续/集成商0 1.2649正0 0 0 (2)watertank /水箱系统/ H 10 10 10 0 0 0输入:- - - - - - - - - - -没有一个输出:- - - - - - - - - - -

dx是每个国家的时间导数。因为所有的dx值为零,操作点处于稳定状态。

打开仿真软件模型。金宝app

mdl =“magball”;open_system (mdl)

模拟模型,并提取操作点1020.时间单位。

op = findop (mdl (10、20));

人事处是一个列向量的操作点,有一个元素为每个快照时间。

显示第一个操作点。

op (1)
ans magball =操作点模型。(时变组件评估时间t = 10): - - - - - - - - - - - x __________ (1) magball /控制器/ PID控制器/过滤器/续。过滤器/过滤器5.4732 e-07 (2) magball /控制器/ PID控制器/集成商/连续/集成商14.0071 (3)magball /磁球工厂/电流7.0036 (4)magball /磁球工厂/ dhdt 8.443 e-08 (5) magball /磁球工厂/身高0.05输入:- - - - - - - - - - -

打开仿真软金宝app件模型。

mdl =“watertank”;open_system (mdl)

指定参数值。参数网格5-by-4数组。

[A_grid, b_grid] = ndgrid (linspace (0.9 * 1.1 * 5),linspace (0.9 * b, b 1.1 * 4));参数(1)。Name =“一个”;参数(1)。价值= A_grid; params(2).Name =“b”;参数(2)。价值= b_grid;

模拟模型和提取操作点0,5,10时间单位。

op = findop ([0 5 10], mdl params);

findop模拟模型为每个参数值组合,在指定的模拟时间和提取操作点。

人事处是一个3-by-5-by-4操作点对象的数组。

大小(op)
ans = 3 5 4

输入参数

全部折叠

金宝app仿真软件模型名称,指定为一个字符或字符串向量。模型必须在当前工作目录中或在MATLAB®路径。

操作点规格调整模型,指定为一个OperatingSpec对象或数组OperatingSpec创建的对象使用operspec函数。

如果opspec是一个数组,findop返回一个数组对应操作点使用单一模型的编译。

参数样本进行修剪,指定为以下之一:

  • 结构,改变一个参数的值通过指定以下字段的结构参数。

    • 的名字参数名称,指定为一个字符或字符串向量。您可以指定任何一个变量在模型中模型参数工作区,MATLAB工作区,或数据字典。如果使用的变量模型不是一个标量变量,参数名称指定为一个表达式解析为一个数字标量值。例如,使用向量的第一个元素V作为参数。

      参数。Name =“V (1)”;
    • 价值——参数样本值,指定为数组的两倍。

    例如,不同参数的值一个在10%左右。

    参数。Name =“一个”;参数。价值= linspace(0.9*A,1.1*A,3);
  • 结构数组——不同的多个参数的值。例如,不同参数的值一个b在10%左右。

    [A_grid, b_grid] = ndgrid (linspace (0.9 * 1.1 * 3),linspace (0.9 * b, b 1.1 * 3));(1)参数。Name =“一个”;(1)参数。价值= A_grid; parameters(2).Name =“b”;(2)参数。价值= b_grid;

当你指定参数值的变化,findop批修剪为每个参数值组合模型,并返回相应的数组操作点。如果参数指定可调参数,然后批阀内件的软件模型使用一个编译。

如果您指定opspec作为一个单独的operspec对象和参数值参数生产状态,与已知的冲突opspec,findop阀内件的模型使用的规范opspec。调整模型的状态值来源于参数值,指定opspec作为对应的数组operspec对象。例如,看到的批处理仿真软件模型参数金宝app变化

调整选项,指定为一个findopOptions选项设置。

模拟快照次提取模型的操作点,指定为一个标量为单个快照或一个向量多个快照。findop模拟的模型和计算操作点模型的状态在每一个快照时间。

输出参数

全部折叠

操作点,作为一个返回OperatingPoint对象或数组OperatingPoint对象。的尺寸人事处取决于指定的参数变化和操作点规范或模拟快照时间。

参数变化 找到操作点…… 结果人事处
没有参数变化 单一操作点规范,规定opspec 单一操作点对象
单一的快照时间,规定tsnapshot
N1——- - - - - -——- - - - - -N数组的操作点的规范,规定opspec N1——- - - - - -——- - - - - -N
N年代指定的快照,tsnapshot 列向量的长度N年代
N1——- - - - - -——- - - - - -N电网参数,指定的参数 单一操作点规范,规定opspec N1——- - - - - -——- - - - - -N
单一的快照时间,规定tsnapshot
N1——- - - - - -——- - - - - -N数组的操作点的规范,规定opspec
N年代指定的快照,tsnapshot N年代——- - - - - -N1——- - - - - -——- - - - - -N

例如,假设:

  • opspec是一个操作点规范对象参数指定一个3-by-4-by-2参数网格。在这种情况下,人事处3-by-4-by-2数组的操作点。

  • tsnapshot是一个标量和参数指定一个5-by-6参数网格。在这种情况下,人事处1-by-5-by-6数组的操作点。

  • tsnapshot是一个行向量和三个元素参数指定一个5-by-6参数网格。在这种情况下,人事处3-by-5-by-6数组的操作点。

每个操作点对象具有以下属性:

财产 描述
模型 金宝app仿真软件模型的名字,作为一个特征向量返回。

操作点,作为一个向量的对象返回。中的每个条目代表支持一个模型块。金宝app金宝app

为支持国家的列表操作点对象,金宝app明白了金宝app仿真软件模型状态包含在操作点对象

请注意

如果块有多个命名连续状态,包含每个命名状态的一个结构。

每个状态对象有以下字段:

描述
Nx(只读)

的州数块

块路径,作为一个特征向量返回。

StateName

国家的名字

x

返回的所有支持的块,值向量的金宝app长度Nx

Ts

样品的时间和抵消每个支持块状态,作为一个向量返回。金宝app对于连续时间系统,Ts是零。

SampleType

状态时间变化率,返回以下之一:

  • “CSTATE”——连续时间状态

  • “DSTATE”——离散时间状态

inReferencedModel

标志指示块是否在一个参考模型,作为以下之一:返回

  • 1——块在一个参考模型。

  • 0——在当前的模型文件块。

描述

块状态描述,作为一个特征向量返回。

输入

输入电平在操作点,作为一个向量的输入返回对象。中的每个条目输入代表输入水平的一个根级尺寸块模型。

每个输入对象有以下字段:

描述
ν(只读)

数量的尺寸块信号

轮廓尺寸块的名字

PortDimensions

维度的尺寸所接受的信号

u

轮廓尺寸块输入水平在操作点,作为一个向量的长度返回ν

描述

轮廓尺寸块输入描述,作为一个特征向量返回。

时间

次评估哪些模型中任意时变函数,返回一个向量。

版本

对象版本号

您可以编辑的属性人事处使用点符号或函数。

操作点搜索报告,作为一个返回OperatingReport对象。如果人事处是一个数组的OperatingPoint对象,那么opreport是一个数组对应OperatingReport对象。

这份报告自动显示,即使你抑制输出使用分号。隐藏的报告,设置DisplayReport选项“关闭”

每个操作点搜索报告具有以下属性:

财产 描述
模型

模型属性值的人事处

输入

输入属性值的人事处

输出

输出值的计算操作。这个对象包含相同的字段输出的属性opspec,添加yspec期望的输出值。

属性值的人事处通过添加dx,其中包含状态导数值。对于离散时间状态,dx之间的区别是下一个状态值和当前;也就是说,x(k+ 1)-x(k)

时间 时间属性值的人事处
TerminationString 优化终止条件,作为一个特征向量返回。
OptimizationOutput

优化算法搜索结果,作为结构返回以下字段:

描述
迭代

在优化迭代次数执行

funcCount

在优化执行函数值的运算次数

lssteplength

的大小相对于搜索方向线搜索的一步(仅激活集优化算法)

stepsize

在最后一次迭代中位移的状态向量(激活集和内点优化算法)

算法

优化算法

firstorderopt

测量一阶优化,trust-region-reflective优化算法;[]为其他算法

constrviolation

最大的约束功能

消息

退出消息

对优化算法的更多信息,参见优化工具箱™文档。

更多关于

全部折叠

稳态操作点(修剪条件)

一个稳态操作点一个模型,也称为一个平衡或修剪条件,包括状态变量不随时间而变化。

一个模型可以有几个稳态操作点。例如,悬挂阻尼摆有两个稳态操作点摆的位置不随时间变化。一个稳定的稳态操作点发生在连续摆挂下来。当摆的位置稍微偏离时,钟摆总是回到平衡状态。换句话说,小操作点的变化不会引起系统离开该地区良好的近似平衡值。

一个不稳定的稳态操作点发生在摆点向上。只要摆点完全向上,它仍然处于平衡状态。然而,当钟摆稍微偏离了这个位置,它向下波动和操作点叶周边地区平衡值。

当使用优化搜索计算非线性系统操作点,你的初始猜测状态和输入水平所需的操作点附近必须确保收敛。

当线性化模型与多个稳态操作点,重要的是要有正确的操作点。例如,线性化一个钟摆模型稳定稳态操作点周围产生一个稳定的线性模型,而在不稳定的稳态线性化操作点产生一个不稳定的线性模型。

提示

  • 你可以初始化一个操作点搜索模拟快照或之前计算的操作使用initopspec

  • 在操作点线性化模型人事处使用线性化

算法

默认情况下,findop使用优化器graddescent-elim。使用不同的优化器,改变的价值OptimizerType选项使用findopOptions

findop自动设置这些仿真软件优化模型属性:金宝app

  • BufferReuse = '了'

  • RTWInlineParameters = ' '

  • BlockReductionOpt = '了'

  • SaveFormat = ' StructureWithTime '

优化完成后,仿真软件恢复原来的模型属性。金宝app

选择功能

应用程序

作为替代findop命令,您可以找到操作点以下的方法之一。

版本历史

之前介绍过的R2006a

全部展开