bd040590 发表于 2006-9-19 20:37

请教 功率谱密度的一个问题

matlab求解功率谱的函数有psd(y,NFFT,Fs,window,overlaps) 和=psd(y,NFFT,Fs,window,overlaps)。由向量pxx,和f构成的图像与psd(y,NFFT,Fs,window,overlaps) 构成图形严重不一致,我想知道谱峰值点对应的频率,这可怎么办捏?

bd040590 发表于 2006-9-20 16:02

psd(y,NFFT,Fs,window,overlaps)图像有多个峰值且毛刺多,后者则只有一个尖峰 两侧为水平线

难道没人能够解答我的问题吗

songzy41 发表于 2006-9-23 08:47

我估计楼主用函数:
=psd(y,NFFT,Fs,window,overlaps)
后将用线性坐标去作图,而
psd(y,NFFT,Fs,window,overlaps)
指令是直接画出对数坐标的谱图。我给出以下程序,其中用到=psd(y,NFFT,Fs,window,overlaps),又用pxx对数值作图,和直接用psd(y,NFFT,Fs,window,overlaps) 进行比较,可看出两者完全一致:
clear;
Fs=1000;
n=0:1/Fs:1;
xn=cos(2*pi*40*n)+3*cos(2*pi*100*n)+randn(size(n));
nfft=1024;
window=boxcar(length(n)); %矩形窗
noverlap=0; %数据无重叠

=psd(xn,nfft,Fs,window,noverlap);

index=0:nfft/2;
k=index*Fs/nfft;
plot_Pxx=10*log10(Pxx(index+1));
figure(1)
plot(f,Pxx); grid;
figure(2)
plot(f,plot_Pxx); grid;
axis();
figure(3)
psd(xn,nfft,Fs,window,noverlap);
axis();

bd040590 发表于 2006-9-25 14:17

十分感谢 您的回复 谢谢啊

geminiysu 发表于 2006-9-25 23:46

不错,呵呵

lovelydeath 发表于 2007-5-23 22:25

想知道怎么FFT后得到频谱密度
页: [1]
查看完整版本: 请教 功率谱密度的一个问题