- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab数字信号处理周期图程序.
1、假设一平稳随机信号为,其中是均值为0,方差为1的白噪声,数据长度为1024。
(1)、产生符合要求的和;
(2)、给出信号x(n)的理想功率谱;
(3)、编写周期图谱估计函数,估计数据长度N=1024及256时信号功率谱,分析估计效果。
(4)、编写Bartlett平均周期图函数,估计当数据长度N=1024及256时,分段数L分别为2和8时信号的功率谱,分析估计效果。
解:思路
在matlab中提供的有 randn(m.n)函数,其为均值为零,方差为1的函数,所以w(n)可以通过随机序列randn(1,N)来产生,x(n)可以通过对 w(n)滤波产生,也可以直接由递推式迭代产生。
由于线性系统的输出功率谱等于输入功率谱乘以传递函数模的平方,X(n)可以看做w(n)
通过一线性系统的输出,
H(z)=1/(1-0.8z)
所以x(n)的理想功率谱
直接产生
Matlab 程序:
clear;close all;
F=500; %采样率
N=1024; %观测数据
subplot(2,1,1);
w=sqrt(1)+randn(1,N);
plot(w);
xlabel(观察次数);ylabel(功率db);title(白噪声w的分布情况);
subplot(2,1,2);
x=[w(1) zeros(1,N-1)]; %初始化x(n),长度1024,x(1)=w(1)
for i=2:N
x(i)=0.8*x(i-1)+w(i); %迭代产生观测数据x(n)
end
plot(x);
xlabel(观测次数);ylabel(x 的分布情况);title(x的分布情况);
%% 理想功率谱
cn=xcorr(x,x);%自相关函数
Cn=fft(cn,N);%快速傅里叶变化
Pxx=abs(Cn);%取绝对值
index=0:round(N/2-1);
k=index*Fs/N;
pxx=10*log10(Pxx(index+1));%转换成db
figure;
plot(k,pxx);
xlabel(频率);ylabel(功率db);
title(理想功率谱);
%%周期图谱
%1024
Pxx1=abs(fft(x)).^2/N;
pxx1=10*log10(Pxx1(index+1));
figure;
plot(k,pxx1);
title(周期图1024个点);
xlabel(频率);ylabel(功率db);
% 周期图256个观测点
x1=x(1:4:N);
Pxx2=abs(fft(x1,1024)).^2/N;
pxx2=10*log10(Pxx2(index+1));
figure;
plot(k,pxx2);
title(周期图256);xlabel(频率); ylabel(功率db);
L=2;
x1=x(1:L:N);
x2=x(2:L:N);
pxx2_1=abs(fft(x1,1024)).^2/length(x1);
pxx2_2=abs(fft(x2,1024)).^2/length(x2);
pxx_2=(pxx2_1+pxx2_2)/L;
figure;
subplot(2,1,1);
plot(k,10*log10(pxx_2(index+1)));
title(N=1024,L=2时的周期图);
xlabel(频率);
ylabel(功率db);
L=2;
x1=x(1:L:N);
x2=x(2:L:N);
pxx2_1=abs(fft(x1,1024)).^2/length(x1);
pxx2_2=abs(fft(x2,1024)).^2/length(x2);
pxx_2=(pxx2_1+pxx2_2)/L;
figure;
subplot(2,1,1);
plot(k,10*log10(pxx_2(index+1)));
title(N=256,L=2时的周期图);
xlabel(频率);
ylabel(功率db);
从上图可以看出, 周期图法得到的功率谱估计, 谱线的起伏较大, 即估计所得的均方误差较大。当 N加时,摆动的频率加快,而摆动的幅度变化不大。且 N=1024时,谱的分辨率较N=256时大。 采用平均处理后, 谱线上下摆动的幅度减小(即均方误差有所降低),曲线的平滑性也较周期图法好。相同时,分段越多,方差越小,曲线越平滑。这是因为, N一定时L加大,每一段的数据量就会相应减少,因此估计方差减小,偏移加大,从而分辨率降低。 N一定时,L 与每段数据量相互矛盾, 需择中选取。
文档评论(0)