idpoly
具有可识别参数的多项式模型
描述
一个idpoly
模型将系统表示为具有可识别(可估计)系数的连续时间或离散时间多项式模型。使用idpoly
创建一个多项式模型或转换动态系统模型变成多项式形式。
一个带输入向量系统的多项式模型u,输出矢量y,和扰动e离散时间的形式如下:
的变量一个,B,C,D,F多项式是用时移算子表示的吗问-1.例如,一个多项式的形式是:
在这里,na是顺序的吗一个多项式。问-1y(t)相当于y(t-1).
例如,如果一个(问) = 1 +一个1问-1+一个2问-2,然后一个(y(t) = 1 +一个1(t - 1) +一个2(2).
的C,D,F多项式的形式与一个多项式,从1开始。的B多项式不是从1开始的。
在连续时间条件下,多项式模型的形式如下:
U(年代的拉普拉斯变换输入sys
.Y(年代)包含拉普拉斯变换后的输出。E(年代)包含每个输出扰动的拉普拉斯变换。
为idpoly
模型,多项式的系数一个,B,C,D,F是可估计的参数。的idpoly
模型中存储这些矩阵元素的值一个
,B
,C
,D
,F
模型的属性。
时间序列模型是无测量输入系统的多项式模型的特殊情况。对于AR模型,B
而且F
都是空的,而且C
而且D
所有输出均为1。对于ARMA模型,B
而且F
是空的,而D
是1。
虽然idpoly
金宝app支持连续时间模型,idtf
而且idproc
为连续时间模型的估计提供更多选择。因此,对于大多数连续时间应用程序,这些其他模型类型是更可取的。
有关多项式模型的更多信息,请参见什么是多项式模型?
创建
你可以获取idpoly
用三种方法之一建模。
估计
idpoly
使用命令对系统的输出或输入-输出测量进行建模聚
,arx
,armax
,oe
,bj
,iv4
,或ivar
.这些命令估计自由多项式系数的值。估计的值存储在一个
,B
,C
,D
,F
结果的属性idpoly
模型。的报告
属性存储关于估计的信息,例如关于初始条件处理的信息和估计中使用的选项。当你获得
idpoly
通过估计建模,您可以使用以下命令从模型中提取估计的系数及其不确定性polydata
,getpar
,或getcov
.创建一个
idpoly
使用idpoly
命令。您可以创建idpoly
模型来配置多项式模型估计的初始参数化,以拟合测量的响应数据。当你这样做的时候,你可以指定多项式系数的约束条件。例如,您可以固定某些系数的值,或指定自由系数的最小值或最大值。然后,您可以使用配置的模型作为的输入参数聚
用这些约束估计参数值。将现有的动态系统模型转换为
idpoly
使用idpoly
命令。
语法
描述
创建输入-输出多项式模型
创建具有可识别系数的多项式模型。sys
= idpoly (A, B, C, D, F
,NoiseVariance
,Ts
)一个
,B
,C
,D
,F
指定系数的初值。NoiseVariance
指定白噪声源方差的初始值。Ts
为模型采样时间。
使用由一个或多个名-值对参数指定的附加选项创建多项式模型。sys
= idpoly (A, B, C, D, F
,NoiseVariance
,Ts
,名称,值
)
创建时间序列模型
创建一个只有自回归项的时间序列模型。在这种情况下,sys
= idpoly(一个)sys
为给出的AR模型一个(问)y(t) =e(t).噪音e(t)的方差为1。一个
指定可估计系数的初始值。
创建一个具有自回归和移动平均项的时间序列模型。输入sys
= idpoly ([], C, D, [],NoiseVariance
,Ts
)一个
,C
,D
,指定可估计系数的初始值。NoiseVariance
指定噪声的初始值e(t).Ts
为模型采样时间。(省略NoiseVariance
而且Ts
使用它们的默认值。)
如果D
设置为[]
,然后sys
的ARMA模型
使用由一个或多个名称-值对参数指定的附加选项创建时间序列模型。sys
= idpoly ([], C, D, [],NoiseVariance
,Ts
,名称,值
)
输入参数
sys0
- - - - - -动态系统
动态系统模型
动态系统,指定为动态系统模型转换为动态系统模型idpoly
模型。
当sys0
是一个已识别的模型,其估计的参数协方差在转换过程中丢失。如果您希望在转换过程中转换估计的参数协方差,请使用translatecov
.
对于语法Sys = idpoly(sys0,'split')
,sys0
必须符合以下要求。
属性
A, B, C, D, F
- - - - - -多项式系数值
[]
|1
|行向量|行向量数组
多项式系数的值,指定为SISO模型的行向量,或MIMO模型的行向量单元格数组,对应于每个的一个
,B
,C
,D
,F
多项式。对于每个多项式,系数按以下顺序存储:
上升幂z1或问1(用于离散时间多项式模型)。
降幂年代或p(用于连续时间多项式模型)。
的导系数一个
,C
,D
,F
总是1。
适用于MIMO模型Ny输出和Nu输入,一个
,B
,C
,D
,F
是行向量的单元格数组。单元格数组中的每个条目都包含一个特定多项式的系数,该多项式将输入、输出和噪声值联系起来。
多项式 | 尺寸和约束条件 | 关系描述 |
---|---|---|
一个 |
Ny——- - - - - -Ny行向量的单元格数组 领先的系数:
|
例如,对于一个双输出系统, {1, 1} =[1。1]{1,2}= [0.4 - -0.6]{2,1}= 0 {2,}= 0.2 - 0.3 [1] |
B, F |
Ny——- - - - - -Nu行向量数组 领先的系数:
|
例如,对于一个双输出系统, B {1} = [0.1 - 0.2] B {2, 1} = (0.5 - 0.3) F {1 1} = 0.8 [1] F {2, 1} = 0.4 [1] |
C, D |
Ny行向量的-by-1数组 领先的系数:
|
例如,对于一个双输出系统, 0.3 C {1} = [1] C {2, 1} = 0.5 - 0.3 [1] D {1 1} = 0.7 [1] D {2, 1} = 0.1 - 0.2 [1] |
对于时间序列模型(无测量输入的模型),B = []
而且F = []
.
如果你有idpoly
模型sys
通过使用函数进行识别聚
或arx
,然后sys。一个
,sys。B
,sys.C
,sys。D
,sys。F
包含多项式系数的估计值。
如果你创建一个idpoly
模型sys
使用idpoly
命令,sys。一个
,sys。B
,sys.C
,sys。D
,sys。F
属性指定的初始系数值A, B, C, D, F
输入参数。使用南
对于任何初值未知的系数。使用[]
对于您想要创建的模型结构中不存在的任何多项式。例如,要创建ARX模型,请使用[]
为C
,D
,F
.对于ARMA时间序列模型,使用[]
为B
而且F
.创建对象时的默认初始值idpoly
模型是:
B -
[]
C -
1
对于所有输出D -
1
对于所有输出F -
[]
对于一个idpoly
模型sys
,每个属性sys。一个
,sys。B
,sys.C
,sys。D
,sys。F
是否对应的别名价值
进入结构
的属性sys
.例如,sys。一个
属性值的别名吗sys.Structure.A.Value
.
变量
- - - - - -多项式模型显示变量
“年代”
(默认)|“p”
|“z ^ 1”
|“问^ 1”
多项式模型显示变量,指定为以下值之一:
“z ^ 1”
-默认为离散时间模型“问^ 1”
-相当于“z ^ 1”
“年代”
-默认为连续时间模型“p”
-相当于“年代”
的价值变量
是体现在展示上,也是影响解读的一个
,B
,C
,D
,F
离散时间模型的系数向量。当变量
设置为“z ^ 1”
或“问^ 1”
时,系数向量按变量的升幂排序。
IODelay
- - - - - -运输延误
0
(默认)|标量|数字数组
传输延迟,指定为包含每个输入-输出对的单独传输延迟的数字数组,或指定为对每个输入-输出对应用相同延迟的标量。
中存储的时间单位表示传输延迟TimeUnit
财产。对于离散时间系统,传输延迟用整数表示,表示延迟是采样时间的倍数Ts
.
对于MIMO系统Ny输出和Nu输入,IODelay
是一个Ny——- - - - - -Nu数组中。该数组的每个条目都是一个数值,表示对应输入-输出对的传输延迟。你可以设置IODelay
对所有输入-输出对应用相同的延迟。
如果你创建一个idpoly
模型sys
使用idpoly
命令,sys。IODelay
包含使用名称-值对参数指定的传输延迟的初始值。
如果你有idpoly
模型sys
通过使用函数进行识别聚
或arx
,然后sys。IODelay
包含传输延迟的估计值。
对于一个idpoly
模型sys
,属性sys。IODelay
属性值的别名吗sys.Structure.IODelay.Value
.
IntegrateNoise
- - - - - -存在对噪声信道的集成
零的逻辑向量(默认)|逻辑向量
表示噪声通道上存在或不存在积分的逻辑向量,指定为长度等于输出数的逻辑向量。
IntegrateNoise(i) = true
的噪声通道我输出包含一个积分器。在这种情况下,对应的D多项式包含一个没有在属性中表示的附加项sys。D
.这个积分器项等于1/年代对于连续时间系统,1/(1-z-1)用于离散时间系统。
结构
- - - - - -关于可估计参数的信息
结构属性值
属性的可估计参数的特定属性信息idpoly
模型,指定为结构。
对于一个系统Ny输出和Nu输入的维数结构
要素如下:
sys.Structure.A
- - - - - -Ny——- - - - - -Nysys.Structure.B
- - - - - -Ny——- - - - - -Nusys.Structure.C
- - - - - -Ny——- - - - - -1
sys.Structure.D
- - - - - -Ny——- - - - - -1
sys.Structure.F
- - - - - -Ny——- - - - - -Nu
sys.Structure.A
,sys.Structure.B
,sys.Structure.C
,sys.Structure.D
,sys.Structure.F
包含多项式系数的信息。sys.Structure.IODelay
包含有关传输延迟的信息。sys.Structure.IntegrateNoise
包含关于噪声上的积分项的信息。中的每个参数结构
包含以下字段。
场 | 描述 | 例子 |
---|---|---|
价值 | 参数值。每个属性都是对应属性的别名价值 进入结构 的属性sys .南 表示未知参数值。 |
sys.Structure.A.Value 包含ssio的初始值或估计值一个多项式。sys。一个 此属性值的别名。sys。一个{i,j} 是MIMO属性的别名吗sys.Structure.A value (i, j) . |
最低 | 参数在估计过程中可以假定的最小值 | sys.Structure.IODelay.Minimum = 0.1 将传输延迟限制为大于或等于0.1的值。sys.Structure.IODelay.Minimum 必须大于或等于零。 |
最大 | 参数在估计过程中可以假定的最大值 | |
免费的 | 布尔值,指定参数是否为自由估计变量。如果需要在估计过程中固定某个参数的值,请设置相应的参数免费的 来假 .对于固定值,如的导系数值一个多项式,总是等于1,对应的值免费的 总是假 . |
如果B是一个3 × 3矩阵,sys.Structure.B.Free = eye(3) 修复了所有非对角线的元素B中指定的值sys.Structure.B.Value .在这种情况下,只有对角线元素B是有价值的。 |
规模 | 参数值的比例。估计算法不使用规模 . |
|
信息 | 包含字段的结构数组标签 而且单位 用于存储参数标签和单位。指定参数标签和单位为字符向量。 |
例子:“时间” |
非活跃多项式,如B
多项式在时间序列模型中,不能作为参数结构
财产。例如,Sys = idpoly([1 -0.2 0.5])
创建一个AR模型。sys。结构
包含字段sys.Structure.A
而且sys.Structure.IntegrateNoise
.然而,没有场在结构
对应于B
,C
,D
,F
,或IODelay
.
NoiseVariance
- - - - - -模式创新的差异
积极的标量|矩阵
模型创新的方差(协方差矩阵)e,指定为标量或正半定矩阵。
SISO模型-标量
MIMO模型Ny输出-Ny——- - - - - -Ny正半定矩阵
所识别的模型包含高斯白噪声分量e(t).NoiseVariance
是这个噪声分量的方差。通常,模型估计函数(如聚
)决定这个方差。
报告
- - - - - -总结报告
报告字段值
此属性是只读的。
摘要报告,其中包含有关使用估计命令获得的状态空间模型的估计选项和结果的信息,例如聚
,armax
,oe
,bj
.使用报告
查找已识别模型的估计信息,包括:
估算方法
估计选项
查询终止条件
估计数据拟合和其他质量度量
如果您通过构造创建模型,则报告
是无关紧要的。
M = idpoly({[1 0.5]},{[1 5]},{[1 0.01]});m.Report.OptionsUsed
Ans = []
如果使用估计命令获取模型,则报告
包含关于估计数据、选项和结果的信息。
负载iddata2z2;M = polyest(z2,[2 2 3 3 2 1]);m.Report.OptionsUsed
polyest命令的选项集:InitialCondition: 'auto' Focus: 'prediction' EstimateCovariance: 1 Display: 'off' InputOffset: [] OutputOffset:[]正则化:[1x1 struct] SearchMethod: 'auto' SearchOptions: [1x1 idoptions.search. search。高级:[1x1 struct]
有关此属性以及如何使用它的更多信息,请参阅相应估计命令参考页的Output Arguments部分评估报告.
InputDelay
- - - - - -每个输入通道的输入延迟
0
(默认)|标量|向量
每个输入通道的输入延迟,指定为标量值或数字向量。方法中存储的时间单位指定输入延迟TimeUnit
财产。对于离散时间系统,指定输入延迟为采样时间的整数倍Ts
.例如,设置InputDelay
来3.
指定三个采样时间的延迟。
对于一个系统Nu输入,设置InputDelay
到一个Nu1的向量。该向量的每一项都是一个数值,表示对应输入通道的输入延迟。
你也可以设置InputDelay
到一个标量值,以便对所有通道应用相同的延迟。
在评估,InputDelay
是模型的一个固定常数。该软件使用IODelay
属性用于估计时间延迟。若要指定用于估计时间延迟的初始值和约束,请使用sys.Structure.IODelay
.
OutputDelay
- - - - - -每个输出通道的输出延迟
0
(默认)
此属性是只读的。
每个输出通道的输出延迟,指定为0
.此值对于已识别的系统是固定的,例如idpoly
.
TimeUnit
- - - - - -时间变量单位
“秒”
(默认)|“纳秒”
|微秒的
|的毫秒
|“分钟”
|“小时”
|“天”
|“周”
|“月”
|“年”
时间变量的单位是采样时间Ts
,以及模型中的任何时间延迟,指定为标量。
更改此属性不会重新采样或转换数据。修改属性只会改变对现有数据的解释。使用chgTimeUnit
将数据转换为不同的时间单位
InputName
- - - - - -输入通道名称
''
(默认)|特征向量|单元阵列
输入通道名称,指定为字符向量或单元格数组。
单输入模型-字符向量,例如,
“控制”
多输入模型-字符向量的单元数组
或者,使用自动向量展开为多输入模型分配输入名称。例如,如果sys
是双输入模型,输入如下:
sys。InputName = 'controls';
输入名称自动展开为{“控制(1)”,“控制”(2)}
.
当你估计一个模型使用iddata
对象数据
,软件自动设置InputName
来数据。InputName
.
你可以用速记法u
请参阅InputName
财产。例如,sys.u
等于sys。InputName
.
你可以通过几种方式使用输入通道名,包括:
识别模型显示和图上的通道。
提取MIMO系统的子系统。
在连接模型时指定连接点。
InputUnit
- - - - - -输入通道单元
''
(默认)|特征向量|单元阵列
输入通道单位,指定为字符向量或单元格数组:
单输入模型-字符向量
多输入模型-字符向量的单元数组
使用InputUnit
跟踪输入信号单位。InputUnit
对系统行为没有影响。
InputGroup
- - - - - -输入通道组
不带字段的结构(默认)|结构
输入通道组,指定为结构。的InputGroup
属性允许您将MIMO系统的输入通道划分为组,以便您可以通过名称引用每个组。在InputGroup
结构,将字段名设置为组名,将字段值设置为属于每个组的输入通道。
例如,创建名为控制
而且噪音
分别包括输入通道1、2和3、5。
sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3 5];
然后,您可以从控制
使用以下语法输入所有输出:
sys(:,“控制”)
OutputName
- - - - - -输出通道名称
''
(默认)|特征向量|单元阵列
输出通道名称,指定为字符向量或单元格数组。
单输入模型-字符向量,例如,
“测量”
多输入模型-字符向量的单元数组
或者,使用自动向量展开为多输出模型分配输出名称。例如,如果sys
是一个双输出模型,输入如下:
sys。OutputName = 'measurements';
输出名称自动展开为{“测量(1)”,“测量”(2)}
.
当你估计一个模型使用iddata
对象数据
,软件自动设置OutputName
来数据。OutputName
.
你可以用速记法y
请参阅OutputName
财产。例如,sys.y
等于sys。OutputName
.
你可以通过多种方式使用输出通道名,包括:
识别模型显示和图上的通道。
提取MIMO系统的子系统。
在连接模型时指定连接点。
OutputUnit
- - - - - -输出通道单元
''
(默认)|特征向量|单元阵列
输出通道单元,指定为字符向量或单元格数组。
单输入模型-字符向量,例如,
“秒”
多输入模型-字符向量的单元数组
使用OutputUnit
跟踪输出信号单元。OutputUnit
对系统行为没有影响。
OutputGroup
- - - - - -输出通道组
结构体
没有字段(默认)|结构体
输出通道组,指定为结构。的OutputGroup
属性允许您将MIMO系统的输出通道划分为组,并通过名称引用每个组。在OutputGroup
结构,将字段名设置为组名,将字段值设置为属于每个组的输出通道。
例如,创建名为温度
而且测量
分别包括输出通道1、3,5。
sys.OutputGroup.temperature = [1];sys.OutputGroup.measurement = [3 5];
的所有输入中提取子系统测量
使用以下语法输出:
系统(“测量”,:)
的名字
- - - - - -系统名称
''
(默认)|特征向量
系统名称,指定为字符向量,例如,“system_1”
.
笔记
- - - - - -与系统关联的文本
0
——- - - - - -1
字符串(默认)|字符串|字符串数组|特征向量
希望与系统关联的任何文本,指定为字符串。
对于单个音符,请指定
笔记
作为字符串或字符向量对于多个音符,请指定
笔记
作为一个字符串数组。
属性保留您指定的字符串或字符数据类型。指定字符向量时,软件将字符向量打包成1乘1单元格数组。
例如,如果sys1
,sys2
,sys3
系统模型都是动态的,你可以自己设置吗笔记
属性如下。
sys1。笔记=sys1有一个字符串。;sys2。笔记=[sys2有第一个字符串;sys3有第二个字符串];sys3。Notes =sys3有一个字符向量;sys1。笔记sys2。笔记sys3。Notes
Ans = "sys1有一个字符串" Ans = 2×1字符串数组"sys2有一个第一个字符串" "sys2有一个第二个字符串" Ans = 1×1单元格数组{'sys3有一个字符向量'}
用户数据
- - - - - -要与系统关联的数据
[]
(默认)|任何MATLAB®数据类型
与系统关联的数据,指定为任何MATLAB数据类型。
SamplingGrid
- - - - - -采样网格
[]
(默认)|结构
模型数组的采样网格,指定为结构。
对于通过对一个或多个自变量采样而得到的已识别线性(IDLTI)模型数组,此属性跟踪与每个模型相关的变量值。当您显示或绘制模型数组时,将显示此信息。使用这些信息将结果追溯到自变量。
将数据结构的字段名设置为采样变量的名称。将字段值设置为与数组中的每个模型相关联的采样变量值。所有抽样变量必须是数值和标量值,并且所有抽样值的数组必须与模型数组的维度匹配。
例如,假设您在系统的各个操作点上收集数据。您可以分别为每个工作点标识模型,然后将结果叠加到单个系统数组中。您可以用有关操作点的信息标记数组中的各个模型。
Nominal_engine_rpm = [1000 5000 10000];sys。SamplingGrid = struct(“转”nominal_engine_rpm)
在这里,sys
包含分别以1000,5000和10000 rpm获得的三个已标识的型号的数组。
对于通过线性化Simulink生成的模型数组金宝app®在多个参数值或工作点建模,软件进行填充SamplingGrid
自动使用对应于数组中每个条目的变量值。
对象的功能
一般来说,任何函数都适用于动态系统模型适用于idpoly
模型对象。这些函数一般有四种类型。
下面的列表包含您可以使用的函数的一个代表性子集idpoly
模型。
转换与操作
translatecov |
在模型转换操作中转换参数协方差 |
setpar |
设置线性模型参数的值和边界等属性 |
chgTimeUnit |
改变动态系统的时间单位 |
d2d |
重新采样离散时间模型 |
d2c |
将模型从离散时间转换为连续时间 |
汇集 |
将模型从连续时间转换为离散时间 |
合并 |
合并估计模型 |
例子
创建多项式模型
创建一个idpoly
模型表示单输入单输出ARMAX模型,描述如下:
是输出, 是输入,和 白噪音干扰开了吗 .
要创建idpoly
模型,定义一个
,B
,C
分别描述输出、输入和噪声值之间关系的多项式。因为系统方程中没有分母项,D
而且F
是1。
A = [1 0.5];B = [1 5 2];C = [1 0.01];
创建一个idpoly
用指定的系数建模。
sys = idpoly(A,B,C)
sys =离散时间ARMAX模型:A(z)y(t) = B(z)u(t) + C(z)e(t) A(z) =1 + 0.5 z^-1 B(z) =1 + 5 z^-1 + 2 z^-2 C(z) =1 + 0.01 z^-1采样时间:未指定参数化:多项式阶数:na=1 nb=3 nc=1 nk=0自由系数数:5使用“polydata”、“getpvec”、“getcov”表示参数及其不确定性。现状:由直接构建或改造而产生。不估计。
显示器显示了所有的多项式,并允许您验证它们。显示器还显示有五个自由系数。
创建一个idpoly
用指定的噪声方差建模nv
和采样时间Ts
.为此,还必须包含for的值1D
而且F
.
Ts = 0.1;Nv = 0.01;sys = idpoly(A,B,C,1,1,nv,Ts)
sys =离散时间ARMAX模型:A(z)y(t) = B(z)u(t) + C(z)e(t) A(z) =1 + 0.5 z^-1 B(z) =1 + 5z ^-1 + 2z ^-2 C(z) =1 + 0.01 z^-1采样时间:0.1秒参数化:多项式阶数:na=1 nb=3 nc=1 nk=0自由系数数:5使用"polydata"、"getpvec"、"getcov"表示参数及其不确定性。现状:由直接构建或改造而产生。不估计。
显示屏显示0.1秒的采样时间。
指定一个输入-输出延迟iod的
当你创建一个idpoly
模型。
Iod = 1;sys = idpoly(A,B,C,1,1,nv,Ts,“IODelay”,1)
sys =离散时间ARMAX模型:A(z)y(t) = B(z)u(t) + C(z)e(t) A(z) =1 + 0.5 z^-1 B(z) =1 + 5z ^-1 + 2z ^-2 C(z) =1 + 0.01 z^-1输入延迟(按通道列出):1采样时间:0.1秒参数化:多项式阶数:na=1 nb=3 nc=1 nk=0自由系数数:5使用“polydata”、“getpvec”、“getcov”表示参数及其不确定性。现状:由直接构建或改造而产生。不估计。
显示器显示一个样本的输入延迟。
你可以使用sys
要指定用于估计的初始参数化,可以使用聚
或armax
.
创建多项式时间序列模型
创建一个idpoly
模型表示单输出ARMA模型,描述如下:
因为时间序列没有测量的输入,这个模型只包含一个
而且C
多项式。
A = [1 0.5];C = [1 0.01];
创建一个不指定采样时间的离散时间序列模型。
sys = idpoly(A,[],C)
sys =离散时间ARMA模型:A(z)y(t) = C(z)e(t) A(z) =1 + 0.5 z^-1 C(z) =1 + 0.01 z^-1采样时间:未指定参数化:多项式阶数:na=1 nc=1自由系数数:2使用“polydata”,“getpvec”,“getcov”表示参数及其不确定性。现状:由直接构建或改造而产生。不估计。
显示器反映了您的规格。
的采样时间创建连续时间序列0
用于名称-值对参数“t”
.
sys = idpoly(A,[],C,“t”, 0)
sys =连续时间ARMA模型:A(s)y(t) = C(s)e(t) A(s) = s + 0.5 C(s) = s + 0.01参数化:多项式阶数:na=1 nc=1自由系数数:2参数及其不确定性使用"polydata"、"getpvec"、"getcov"。现状:由直接构建或改造而产生。不估计。
方法设置采样时间Ts
输入参数而不是名-值对参数,但是语法更复杂。您必须指定D
值作为1
或为空,并同时设置F
位置和噪声方差位置(如果你没有指定噪声方差)为空。
Ts = 0;sys = idpoly(A,[],C,1,[],[],Ts)
sys =连续时间ARMA模型:A(s)y(t) = C(s)e(t) A(s) = s + 0.5 C(s) = s + 0.01参数化:多项式阶数:na=1 nc=1自由系数数:2参数及其不确定性使用"polydata"、"getpvec"、"getcov"。现状:由直接构建或改造而产生。不估计。
多输出ARMAX模型
创建一个idpoly
模型表示一输入两输出ARMAX模型,由下式描述:
而且 这两个输出,和 是输入。 而且 输出上有白噪声干扰吗 而且 ,分别。
要创建idpoly
模型,定义一个
,B
,C
描述输出、输入和噪声值之间关系的多项式。(因为系统方程中没有分母项,D
而且F
1)。
属性的系数定义单元格数组一个
多项式。
A = cell(2,2);A{1,1} = [1 0.5];A{1,2} = [0 0.9 0.1];A{2,1} = [0];A{2,2} = [1 0.05 0.3];
中的每个条目的值一个
由左边的单元阵列描述方程组。例如,{1, 1}
描述给出依赖项的多项式
在本身。这个多项式是
,因为的每个因子
对应于单位时间减量。因此,A{1,1} = [1 0.5]
的系数
的指数增加
.
同样的,一个{1,2}
描述给出依赖项的多项式
在
.从方程中,
.因此,A{1,2} = [0 0.9 0.1]
.
剩余的条目一个
构造相似。
属性的系数定义单元格数组B
多项式。
B = cell(2,1);B{1,1} = [1 5 2];B{2,1} = [0 0 10];
B
描述给出输出依赖关系的多项式
而且
关于输入
.从方程中,
.因此,B{1,1} = [1 5 2]
.
类似地,从方程中,
.因此,B{2,1} = [0 0 10]
.
属性的系数定义单元格数组C
多项式。
C = cell(2,1);C{1,1} = [1 0.01];C{2,1} = [1 0.1 0.02];
C
描述给出输出依赖关系的多项式
而且
在噪声方面
而且
.的条目C
可以从方程中得到类似于一个
而且B
.
创建一个idpoly
用指定的系数建模。
sys = idpoly(A,B,C)
sys =离散ARMAX模型:模型输出1号:一个(z) y_1 (t) = - ai (z) y_i (t) + B (z) u (t) + C (z) e_1 (t) 0.5 (z) = 1 + z ^ 1 A₂(z) = 0.9 z ^ 1 + 0.1 z ^ 2 B (z) = 1 + 5 z ^ 1 + 2 z ^ 2 C (z) = 1 + 0.01 z ^ 1模型输出2号:一个(z) y_2 B (t) = (z) u (t) + C (z) e_2 (t) 0.05 (z) = 1 + z ^ 1 + 0.3 z z ^ 2 B (z) = 10 ^ 2 C (z) = 1 + 0.1 z ^ 1 + 0.02 z ^ 2样品时间:未指定参数化:多项式订单:na = [1 2; 0 2] nb =(3; 1)数控= [1,2]nk =(0, 2)数量的免费系数:12使用“polydata”、“getpvec”、“getcov”表示参数及其不确定性。现状:由直接构建或改造而产生。不估计。
显示器显示了所有的多项式,并允许您验证它们。显示器还显示有12个自由系数。对角线项的前导项一个
总是固定为1。中所有其他项的前导项一个
总是固定为0。
你可以使用sys
要指定用于估计的初始参数化,可以使用聚
或armax
.
将传递函数模型转化为多项式模型
用传递函数对动态系统建模。然后使用idpoly
将传递函数模型转化为多项式形式。
使用idtf
,构造连续时间单输入单输出(SISO)传递函数模型,描述如下:
Num = [1 4];Den = [1 20 5];G = idtf(num,den)
G = s + 4 -------------- s^2 + 20 s + 5连续时间识别传递函数。参数化:极点数:2零数:1自由系数数:4参数及其不确定度使用“tfdata”、“getpvec”、“getcov”。现状:由直接构建或改造而产生。不估计。
将传递函数转换为多项式形式。
sys = idpoly(G)
sys =连续时间OE模型:y(t) = [B(s)/F(s)]u(t) + e(t) B(s) = s + 4 F(s) = s^2 + 20 s + 5参数化:多项式阶数:nb=2 nf=2 nk=0自由系数数:4参数及其不确定性使用"polydata"、"getpvec"、"getcov"。现状:由直接构建或改造而产生。不估计。
显示器显示多项式形式和多项式系数。
版本历史
R2006a之前介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。