ARMA谱估计的MATLAB实现

时间:2013-07-10 10:38:17
【文件属性】:

文件名称:ARMA谱估计的MATLAB实现

文件大小:1KB

文件格式:NONE

更新时间:2013-07-10 10:38:17

arma matlab

Matlab功率谱估计的详尽分析——绝对原创 功率谱估计是信息学科中的研究热点,在过去的30多年里取得了飞速的发展。现代谱估计主要是针对经典谱估计(周期图和自相关法)的分辨率低和方差性能不好的问题而提出的。其内容极其丰富,涉及的学科和领域也相当广泛,按是否有参数大致可分为参数模型估计和非参数模型估计,前者有AR模型、MA模型、ARMA模型、PRONY指数模型等;后者有最小方差方法、多分量的MUSIC方法等。 ARMA谱估计叫做自回归移动平均谱估计,它是一种模型化方法。由于具有广泛的代表性和实用性,ARMA谱估计在近十几年是现代谱估计中最活跃和最重要的研究方向之一。 二: AR参数估计及其SVD—TLS算法。 谱分析方法要求ARMA模型的阶数和参数以及噪声的方差已知.然而这类要求在实际中是不可能提供的,即除了一组样本值x(1),x(2),…,x(T)以供利用(有时会有一定的先验知识)外,再没有其它可用的数据.因此必须估计有关的阶数和参数,以便获得谱密度的估计.在ARMA定阶和参数之估计中,近年来提出了一些新算法,如本文介绍的SVD—TLS算法便是其中之一。 三:实验结果分析和展望 1,样本数多少对估计误差的影响。(A=[1,0.8,-0.68,-0.46]) 图1 上部分为N=1000;下部分为取相同数据的前N=50个数据产生的结果。 图1 N数不同:子图一N=1000,子图二N=200,子图三 N=50 由图可知,样本数在的多少,在对功率谱估计的效果上有巨大的作用,特别在功率谱密度函数变化剧烈的地方,必须有足够多的数据才能完整的还原原始功率谱密度函数。 2,阶数大小对估计误差的影响。 A=[1,-0.9,0.76] A=[1,-0.9,0.76,-0.776] 图二 阶数为二阶和三阶功率密度函数图 A=[1,-0.9,0.86,-0.96,0.7] A=[1,-0.9,0.86,-0.96,0.7,-0.74] 图三 阶数为三阶和四阶功率密度函数图 如图所示,阶数相差不是很大时,并不能对结果产生较大的影响。但是阶数太低,如图二中二阶反而不能很好的估计出原始值。 3,样本点分布对估计误差 对于相同的A=[1,-0.9,0.86,-0.96,0.7];样本的不同,在估计时的误差是不可避免的。因此,我们在取得样本时,应该尽可能的减少不必要的误差。 图四:不同的样本得到不同的估计值 4,奇异值的阈值判定范围不同对结果的影响。 上图是取奇异值的阈值大于等于0.02,而下图是取阈值大于等于0.06,显然在同种数据下,阈值的选取和最终结果有密切关系。由于系数矩阵和其真实值的逼近的精确度取决于被置零的那些奇异值的平方和。所以选取太小,导致阶数增大,选取太大会淘汰掉真实的系数。根据经验值,一般取0.05左右为最佳。


网友评论

  • 程序可以运行,但是注释太少了,而且缺少理论文档
  • 代码写的很流畅,可以用。
  • 能运行,但是感觉效果不是很好
  • 能运行,但是感觉效果不是很好
  • 为什么介绍没有图片呢? 代码不错
  • 代码写的很好,有帮助
  • 虽然我用了,但是真的看不懂
  • 再用,代码质量很高
  • 资源可以运行,仿真结果不是很准确。
  • 代码可以运行 质量还不错
  • 可以直接运行,对自己编程有帮助
  • 可以运行,代码质量不错。
  • 不错,可以运行
  • 很好的资料啊
  • 代码质量还行。
  • 代码质量很不错
  • 新版本的MATLAB似乎对程序的兼容性变差了,不过还好,代码很不错,结果正确~
  • 总体还不错,能看得懂
  • 不错,如果有对照文献可能更容易理解,如果能有直观的功率谱图可能会更好
  • 还好,可以运行,就是有些代码没看懂
  • 可以运行,注释详细
  • 貌似只有AR部分啊,没有MA部分呢
  • 不错,非常感谢,就是注释相对少了点
  • 代码能运行的通,只不过注释有点少 注释再多点就好啦
  • 只有AR模型
  • 还好,能够运行,也有简单的注释
  • 还可以,也比较容易懂,运行结果也正确。
  • 很好,注释能看懂,也能运行
  • 还不错 注释较少
  • 注释详细点吧