我使用以下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)的形式。有人可以帮我解决我的错误吗?
答案 0 :(得分:1)
尝试使用abs
代替real
。
重新定位频域的另一个有用功能是fftshift
。否则你会看到从0到2 * pi的图,我相信,而不是从-pi到pi的更易识别的视图。
fft_GX = abs(fftshift((fft(GX))');
plot(fft_GX);
您可能需要根据您拥有的样本数进行一些进一步的标准化,但它看起来更像预期的钟形曲线而不是您最初看到的那样。