小编yol*_*420的帖子

Matlab FFT 高斯函数

gaussian curve我正在尝试使用matlab的fft来获得。问题是,在一种情况下,我尝试通过除法来减少噪声F=dt.*F./exp(-1i.*nu.*T/2)是行不通的(img 1),而在第二种情况下,如果我试图获取 fft 结果的绝对值,我在图表中没有合适的比例(img 2)。

N=512;
T=10;
dt=T/(N-1);
t=linspace(-5,5,N);
f=exp(-t.^2);
F=fft(f);

F1=F(1:N/2+1);
F2=F(N/2+1:N);
F=[F2,F1];

dnu=(N-1)/(N*T);
nuNyq=1/(2*dt);
nu=-nuNyq+dnu*(0:N);
F=dt.*F;
%F=dt.*F./exp(-1i.*nu.*T/2);


y=linspace(-5,5,N);
F2=pi.^(1/2).*exp(-y.^2/4);

hold on
plot(y,F2); 
%plot(nu,real(F),'r');
plot(nu,abs(F),'r');
legend('analiticFT','FFT')
xlim([-5 5])
hold off
Run Code Online (Sandbox Code Playgroud)

图片 1 图片。 1

图像2 图片。 2

matlab fft

3
推荐指数
1
解决办法
4168
查看次数

标签 统计

fft ×1

matlab ×1