声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2291|回复: 7

[FFT] 帮忙看看这个功率谱分析的程序对不对~

[复制链接]
发表于 2007-5-14 15:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
% let s is signal
len=256;% adijust accoding to nquist rules
F=(1:len/2)/len;
fs=fft(s,len);
p=fs.*conj(fs)
p=p(1:len/2);
plot(F,p)

周期法是不是这样??
回复
分享到:

使用道具 举报

发表于 2007-5-15 16:34 | 显示全部楼层
% let s is signal
len=256;% adijust accoding to nquist rules
F=(0:len/2-1)/len;
fs=fft(s,len);
p=fs.*conj(fs)
p=p(1:len/2)*2*2/N/N;
plot(F,p)


我认为应该是这样
 楼主| 发表于 2007-5-16 07:04 | 显示全部楼层
% let s is signal
len=256;% adijust accoding to nquist rules
F=(1:len/2)/len;
fs=fft(s,len);
p=abs(fs);
p=p.^2/length(p);
plot(F,p)

定义是这样的??????
 楼主| 发表于 2007-5-16 07:07 | 显示全部楼层
pwelch(s,[],[],[],Fs)
是不是就可以得到welch功率谱了,中间省略的[][][]分别是什么呢?
 楼主| 发表于 2007-5-20 23:23 | 显示全部楼层
:@Q  ~~~~~~~~~~~~
发表于 2007-5-21 06:38 | 显示全部楼层
用help pwelch看看各参数代表什么
[Pxx,F] = PWELCH(X,WINDOW,NOVERLAP,NFFT,Fs)
发表于 2007-5-23 10:58 | 显示全部楼层
% let s is signal
len=256;% adijust accoding to nquist rules
F=(1:len/2)/len;   %是不是应该这样:F=fs*(1:len/2)/len,fs是采样频率,这样才能得到相应采样点的频率轴(横轴坐标)
fs=fft(s,len);
p=fs.*conj(fs)
p=p(1:len/2);
plot(F,p)
发表于 2007-6-2 13:13 | 显示全部楼层

现学现卖

:@) 以正弦信号为例来说一下吧:
n=1024;fs=10;/要制定采样频率和采样点才行的
t=(1:n)/fs;
yn=sin(t);/得到离散点
pxx=fft(yn,n);
f=fs*(0:n/2-1)/n;
p=abs(pxx);
p=fs*p.^2/n;
plot(f,p(1:n/2));
另外这并不是品均周期图法,要用PSD或PWELCH函数才行。
你这里也没进加窗处理呀;
wh=hanning(n);
yn=yn.*wh;
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-22 21:27 , Processed in 0.055773 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表