getcov
确定模型的参数协方差
描述
例子
获取已识别模型的原始参数协方差
获取已识别的模型。
负载iddata1z1Sys = tfest(z1,2);
得到模型的原始参数协方差。
Cov_data = getcov
cov_data =5×51.2131 -4.3949 -0.0309 -0.5531 0 -4.3949 115.0838 1.8598 10.6660 0 -0.0309 1.8598 0.0636 0.1672 0 -0.5531 10.6660 0.1672 1.2433 0 0 0 0 0 0 0 0
cov_data
包含参数向量的协方差矩阵[sys.Numerator sys.Denominator(2:结束),sys.IODelay]
.
sys.Denominator (1)
固定为1
不被当作参数。与延迟参数(第五行和第五列)对应的协方差矩阵项为零,因为没有估计延迟。
获取已识别模型数组的原始参数协方差
获取已识别的模型数组。
负载iddata1z1;Sys1 = tfest(z1,2);Sys2 = tfest(z1,3);Sysarr = stack(1,sys1,sys2);
sysarr
是连续时间的2乘1的传递函数数组。
获取数组中模型的原始参数协方差。
Cov_data = getcov(sysarr)
cov_data =2×1单元格数组{5x5 double} {7x7 double}
cov_data
是一个2乘1单元格数组。cov_data {1}
而且cov_data {2}
原始参数是否为协方差矩阵sys1
而且sys2
.
获得已识别模型估计参数的原始协方差
加载估计数据。
负载iddata1z1z1。Y = cumsum(z1.y);
估计模型。
Init_sys = idtf([100 1500],[1 10 100]);init_sys.Structure.Numerator。最小= eps;init_sys.Structure.Denominator。最小= eps;init_sys. structure . denomator . free (end) = false;opt = tfestOptions(“SearchMethod”,“lm”);Sys = tfest(z1,init_sys,opt);
sys
是一个idtf
模型有六个参数,其中四个是估计的。
得到估计参数的协方差矩阵。
cov_type =“价值”;Cov_data = getcov(sys,cov_type,“免费”)
cov_data =4×4105× 0.0269 -0.1237 -0.0001 -0.0017 -0.1237 1.0221 0.0016 0.0133 -0.0001 0.0016 0.0000 0.0000 -0.0017 0.0133 0.0000 0.0002
cov_data
是一个4 x4
协方差矩阵,与四个估计参数对应。
获取已识别模型的因子参数协方差
获取已识别的模型。
负载iddata1z1Sys = tfest(z1,2);
得到模型的因子参数协方差。
cov_type =“因素”;Cov_data = getcov(sys,cov_type);
获取已识别模型数组的因子参数协方差
获取已识别的模型数组。
负载iddata1z1Sys1 = tfest(z1,2);Sys2 = tfest(z1,3);Sysarr = stack(1,sys1,sys2);
sysarr
是连续时间的2乘1的传递函数数组。
获取数组中模型的因子参数协方差。
cov_type =“因素”;Cov_data = getcov(sysarr,cov_type)
cov_data =2×1包含字段的struct数组:R T免费
cov_data
是一个2乘1结构数组。cov_data (1)
而且cov_data (2)
是因式协方差结构吗sys1
而且sys2
.
获得已识别模型估计参数的因子协方差
加载估计数据。
负载iddata1z1z1。Y = cumsum(z1.y);
估计模型。
Init_sys = idtf([100 1500],[1 10 100]);init_sys.Structure.Numerator。最小= eps;init_sys.Structure.Denominator。最小= eps;init_sys. structure . denomator . free (end) = false;opt = tfestOptions(“SearchMethod”,“lm”);Sys = tfest(z1,init_sys,opt);
sys
,一个idtf
模型,有六个参数,其中四个是估计的。
得到估计参数的因子协方差。
cov_type =“因素”;Cov_data = getcov(sys,cov_type,“免费”);
输入参数
cov_type
- - - - - -协方差类型
“价值”
(默认)|“因素”
输出参数
cov_data
-参数co方差sys
矩阵或单元阵列的矩阵|结构或单元阵列的结构
参数协方差sys
,作为矩阵、矩阵的单元格数组、结构或结构的单元格数组返回。cov_data
是[]
为idnlarx
而且idnlhw
模型。
如果
sys
是单型号和cov_type
是“价值”
,然后cov_data
是一个np——- - - - - -np矩阵。np参数的个数是多少sys
.这个矩阵的非零元素的值等于
sys.Report.Parameters.FreeParCovariance
当sys
通过估计得到。对应于固定参数的行和列项为零。如果
sys
是单型号和cov_type
是“因素”
,然后cov_data
是一个包含字段的结构:R
-通常是上三角矩阵。T
-变换矩阵。免费的
-长度的逻辑向量np,表示模型参数是否是自由的(估计的)。np参数的个数是多少sys
.
要获得使用因式分解形式的协方差矩阵,输入:
Free = cov_factor .Free;T = cov_factor .T;R = cov_factor .R;Np = nparams(sys);Cov_matrix =零(np);cov_matrix(Free, Free) = T*inv(R'*R)*T';
为了数值精度,计算
T *发票(R ' T * R) *
作为X * X '
,在那里X = t / r
.如果
sys
是一个模型数组吗cov_data
大小的单元格数组是否等于数组大小sys
.cov_data (i, j, k,…)
的协方差数据sys (:,:, i, j, k,…)
.
版本历史
在R2012a中介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。