用AR模型估计信号的功率谱

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用AR 模型估计观测信号的功率谱

1. 理论原理

本文用SVD-TLS 算法估计观测信号的功率谱,观测信号为:

()0.2)0.213),x n n n ππ=1,2,,128n =……

SVD-TLS 算法的步骤如下:

(1) 计算样本相关函数矩阵R 的SVD ,并存储奇异值和矩阵V;

(2) 确定R 的有效秩,本文使用的是归一化奇异值法来求有效秩

(3) 用总体最小二乘法估计参数

2. 程序

%计算样本相关矩阵R ,求其svd 并存储奇异值和矩阵V

clear

X=sqrt(20)*sin(2*pi*0.2*[1:128])+sqrt(2)*sin(2*pi*0.213*[1:128]);

M=70;

pe=55;

qe=65;

R=zeros(M,pe+1);

for i=1:M,

for j=1:pe+1,

for n=qe+i-j+1+1:128,

R(i,j)=R(i,j)+X(n)*X(n-qe-i+j-1);

end

end

end

[U,S,V]=svd(R);

%确定R 的有效秩

k=1;

while S(k,k)/S(1,1)>=0.00001,

k=k+1;

end

p=k-1;

p

%下面用总体最小二乘法估计参数

D=zeros(p+1,p+1);

for j=1:p,

for k=1:pe+1-p,

B=V(k:k+p,j);

D=D+B*B'*S(j,j)^2;

end

end

A=inv(D);

for i=1:p,

x(i)=A(i+1,1)/A(1,1)

end

%利用估计出的参数画出功率谱

freqz(1,[1,x],1024,1)

3. 结果

观测信号的功率谱如下:

00.050.10.150.20.250.3

0.350.40.450.50500

1000

1500

2000

Frequency (Hz)P h a s e (d e g r e e s )00.050.10.150.20.250.3

0.350.40.450.5

-500

50

100

Frequency (Hz)M a g n i t u d e (d B )

有效秩P=14

估计的参数为:

x =

Columns 1 through 11

-0.8767 2.0264 -0.5249 0.7909 0.2515 15.5127 -16.8714 37.2947 -5.6919 -3.6480 38.2700

Columns 12 through 14

-33.2510 23.2555 -9.0139

加了高斯白噪声之后,用SVD-TLS 方法得到的功率谱如下:

00.050.10.150.20.250.3

0.350.40.450.5-20000

2000

4000

6000

Frequency (Hz)P h a s e (d e g r e e s )00.050.10.150.20.250.3

0.350.40.450.5

-500

50

Frequency (Hz)M a g n i t u d e (d B )

此时p=50,阈值设置由原来的0.00001变成了0.001

相关文档
最新文档