ljsr1001 发表于 2008-3-14 16:02

FFT的频谱图

MATLAB频谱图中的纵轴的幅度是什么算出来的
x=sin(2*pi*f1*t),他算出来的幅度是300,怎么根据X算出来的啊

zhangnan3509 发表于 2008-3-14 16:52

回复 楼主 的帖子

这个幅值怎么可能是300呢?楼主最好能把程序贴出来

叶风 发表于 2008-3-14 19:11

这个要看你的采样点数,和采样频率,一般都没问题

VibrationMaster 发表于 2008-3-14 19:26

采样点数是600吧

ljsr1001 发表于 2008-3-15 10:34

clear
fs=1000 ;
k=1;
t=0:1/fs:0.6;
f1=200;
x=sin(2*pi*f1*t)
n=2048
      n1(k)=n;
y=fft(x,n);
n=0:length(y)-1;
f=fs*n/length(y);
plot(f,abs(y))

yaoguo2 发表于 2008-3-15 10:55

与你的采样点和该频率处的频率分量有关,通过FFT公式可以推导

ljsr1001 发表于 2008-3-15 20:12

还是不太明白,谁能推导一下,是不是有公式的啊

ruoling 发表于 2008-3-15 21:41

clear
fs=7210 ;
%k=1;
t=0:1/fs:0.6;

f1=200;
x=sin(2*pi*f1*t);
N=length(x);
%N=2048
      %n1(k)=n;
y=fft(x,N);
n=0:length(y)-1;
f=fs*n/length(y);
figure
plot(f,abs(y)*2/N);

ruoling 发表于 2008-3-15 21:50

所得图见附件,但由于谱图的泄漏现象,不能够得到精确的幅值,若待研究的频率f为频率分辨率(fs/N)(N为fft时的点数)的整数倍,可使得到的谱图精准

songzy41 发表于 2008-3-16 08:52

本帖最后由 wdhd 于 2016-9-9 13:27 编辑

原帖由 ljsr1001 于 2008-3-14 16:02 发表
MATLAB频谱图中的纵轴的幅度是什么算出来的
x=sin(2*pi*f1*t),他算出来的幅度是300,怎么根据X算出来的啊
我曾在帖子http://www.chinavib.com/forum/thread-23665-1-1.html中给出了证明,不妨看一下。

ljsr1001 发表于 2008-3-16 10:22

谢谢大家的回答,现在明白了:loveliness: :loveliness:
页: [1]
查看完整版本: FFT的频谱图