主要内容

非线性模型结构

关于系统识别工具箱模型对象

对象是模型类的实例。每个班级是一个图纸定义了有关您模型的以下信息的蓝图:

  • 对象如何存储数据

  • 您可以在对象上执行哪种操作

此工具箱包括表示模型的九个类。例如,IDS.代表线性状态空间模型和idnlarx.表示非线性ARX模型。有关可用模型对象的完整列表,请参阅可用的线性模型可用的非线性模型

模型特性定义模型对象存储信息的方式。模型对象存储有关模型的信息,例如模型的数学形式,输入和输出通道的名称,估计参数,参数不确定性和估计报告的单位,名称和值。例如,一个IDS.模特有一个InputName.用于存储一个或多个输入通道名称的属性。

调用对象上的允许操作方法。在系统识别工具箱™软件中,某些方法具有相同的名称,但适用于多个模型对象。例如,为所有动态系统对象创建步进响应曲线。但是,其他方法对特定模型对象是唯一的。例如,佳能国家空间是独一无二的IDS.模特和线性化非线性黑匣子型号。

每个班级都有一种特殊的方法,称为构造函数,用于创建该类的对象。使用构造函数创建相应类的实例或实例化对象。构造函数名称与类名相同。例如,IDS.idnlarx.既是类别的名称和构造函数的名称,用于实例化线性状态空间模型和非线性ARX模型。

何时独立于估计构建模型结构

您使用模型构造函数通过明确指定所有必需的型号属性,在命令行中创建模型对象。

您必须在需要时独立地构建模型对象:

  • 模拟或分析模型参数对其响应的影响,与估计无关。

  • 在估计之前指定针对特定模型参数值的初始猜测。您可以在参数值上指定界限,或者预先设置辅助模型信息,或者两者都是。辅助模型信息包括指定输入/输出名称,单位,注释,用户数据等。

在大多数情况下,您可以使用估计命令对构造并估计模型 - 而无需独立构建模型对象。例如,估计命令TFEST.使用数据和模型的杆数和零数创建传输函数模型。相似地,nlarx.使用数据和模型订单和定义回归配置的延迟创建非线性ARX模型。有关如何使用单个命令构建和估计模型的信息,请参阅模型估计命令

在灰度盒模型的情况下,必须先构建模型对象,然后估计常差分或差分方程的参数。

用于构建非线性模型结构的命令

下表总结了系统识别工具箱产品中可用的模型构造函数,用于表示各种类型的非线性模型。

在模型估计之后,您可以识别MATLAB中的相应模型对象®工作区浏览器由他们的类名。构造函数的名称匹配它创建的对象的名称。

有关如何使用单个命令构建和估计模型的信息,请参阅模型估计命令

模型构造函数摘要

模型构造函数 结果模型类
idnlgrey. 非线性常差分或差分方程(灰度盒式模型)。您编写函数或MEX文件以表示控制方程。
idnlarx. 非线性ARX模型,将预测的输出定义为过去输入和输出的非线性函数。
idnlw. 非线性Hammerstein-Wiener型号,包括具有非线性静态变换的线性动态系统的输入和输出。

有关何时使用这些命令的详细信息,请参阅何时独立于估计构建模型结构

模型属性

模型对象存储信息中的信息特性相应的模型类。

非线性模型idnlarx.idnlw., 和idnlgrey.基于idnlmodel.超类并继承全部idnlmodel.特性。

通常,所有模型对象都具有属于以下类别的属性:

  • 输入和输出通道的名称,例如InputName.outputName.

  • 模型的采样时间,如TS.

  • 时间单位

  • 模型顺序和数学结构(例如,ode或非线性)

  • 存储估计结果的属性(报告

  • 用户评论,例如笔记用户数据

有关获取对象属性的帮助的信息,请参阅模型参考页面。

下表总结了用于查看和更改模型属性值的命令。属性名称不区分大小写。如果唯一标识属性,则无需键入整个属性名称。

任务 命令 例子
查看所有型号属性及其值 采用得到

加载样本数据,计算非线性ARX模型,并列出模型属性。

加载Iddata1.sys = nlarx(z1,[4 4 1]);得到(SYS)
访问特定的模型属性 使用点表示法。

查看上一个模型中的输出功能。

sys.outputfcn.
对于属性,例如报告,配置如结构,使用表单的点表示法model.propertyname.FieldName.
FieldName.是属性的任何字段的名称。

查看非线性ARX模型估计中使用的选项。

sys.report.Optionsed.
更改模型属性值 使用点表示法。

更改输出功能使用的非线性映射函数。

sys.outputfcn ='sigmoidnet';
访问模型参数值和不确定性信息 采用getPvec.getcov(为了idnlgrey.仅限模型)。

模型参数和相关的不确定性数据。

GetPvec(SYS)
设置模型参数值和不确定性信息 采用setpar.setcov.(为了idnlgrey.仅限模型)。

设置参数向量。

sys = setpar(sys,'价值',帕勒斯特)
获取参数数量 采用nparams.

获取参数的数量。

nparams(sys)

相关例子

更多关于