欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

深入理解Matlab中的FFT和FFTshift

最编程 2024-08-14 15:00:27
...
在s=5+3*cos(2*pi*200*t+60*pi/180)+4*cos(2*pi*300*t+120*pi/180);这里插入图片描述
信号为:
s=5+3cos(2pi200t+60pi/180)+4cos(2pi300t+120pi/180);
对信号进行采样 t=0:Ts:(N-1)*Ts;
分别进行图片里的操作,可以看出区别(先忽略幅值纵坐标的值),(画图使用plot画的,直接将向量的值画出来)图一为直接fft ,图二为先fft后fftshift,图三为先fftshift后fft,图四为先fftshift后fft再fftshift,可以看出图二和图四是我们想要的结果。至于为什么图二和图四相同,我的理解是因为,fft的蝶形运算导致的。即
a=[1 2 3 4];
fft_a_1=abs(fftshift(fft(a)))
fft_a_2=abs(fftshift(fft(fftshift(a))))
fft_a_1与fft_a_2的结果相同,所以导致图二和图四相同。

推荐阅读