2017-08-08 27 views
1

我使用下面的MATLAB代码执行正常的密度函数的傅立叶变换:傅立叶变换正常密度函数

N=100; 
j=0:(N-1); 
a=-5; 
b=5; 
dx = (b-a)/N; 
x = a+j*dx; 
dt = 2*pi/(N*dx); 
f1 = -N/2*dt; 
f2 = N/2*dt; 
t= f1+ j*dt; 
GX = normpdf(x,0,1); 
fft_GX = real(fft(GX))'; 

但是,我没有得到预期的钟形曲线,当我尝试绘图fft_GX。 正常密度的傅立叶变换具有e ^( - t^2/2)的形式。有人能帮助我做什么不正确吗?

+1

请参阅我在https://stackoverflow.com/questions/45475351/matlab-not-plotting-the-exact-fourier-signal/45475860#45475860上的答案,获取有关如何绘制FFT的解释和示例。 – jodag

回答

1

尝试使用abs而不是real

中继频域的另一个有用功能是fftshift。否则,你会看到从0到2 * pi的情节,我相信,而不是从pi到pi的更可识别的视图。

fft_GX = abs(fftshift((fft(GX))'); 
plot(fft_GX); 

您可能需要做基于你的样本数一些进一步正常化,但它看起来更像是一个比你最初看到预期的钟形曲线。