加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab中[Pxx,f] = periodogram(x,window,nfft,fs)

(2013-03-25 17:22:07)

http://zhidao.baidu.com/question/403225309.html

 

matlab中[Pxx,f] = periodogram(x,window,nfft,fs)

periodogram是用来计算功率谱密度的,参数中,

X:所求功率谱密度的信号;

window:所使用的窗口,默认是boxcar,其长度必须与x的长度一致;

nfft:采样点数;

fs:采样频率。

例如:

Fs=1000;

n=0:1/Fs:1;

x=cos(2*pi*40*n)+3*cos(2*pi*100*n)+randn(size(n));

nfft=1024;

window=boxcar(length(n));

[Pxx,f]=periodogram(x,window,nfft,Fs);

P=10*log10(Pxx);

plot(f,P);

hold on;

Pxx_1=abs(fft(x,nfft)).^2/length(n);

t=0:round(nfft/2-1);

f=t*Fs/nfft;

P_1=10*log10(Pxx_1(t+1));

plot(f,P_1,'r');

legend('periodogram','公式');

title('周期图法功率谱估计');

结果如下:

http://c.hiphotos.baidu.com/zhidao/wh=450,600/sign=044c9cd4d109b3deebeaec6cf98f40b7/3b87e950352ac65c423a5dcffbf2b21193138a4a.jpgperiodogram(x,window,nfft,fs)" TITLE="matlab中[Pxx,f] periodogram(x,window,nfft,fs)" />

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有