Help with fourier transform
이전 댓글 표시
Hello.
How does this function do Fourier transform?
f(t)=(1/√2)e^(-t^2/2a^2)
A is a constant.
답변 (1개)
Star Strider
2019년 8월 29일
Try this:
syms a t w
f(t)=(1/sqrt(2))*exp(-t^2/2*a^2)
F(w) = int(f*exp(1j*w*t), t);
F(w) = simplify(F, 'Steps', 050)
producing:
F(w) =
((-pi)^(1/2)*erf((2^(1/2)*(t*a^2*1i + w))/(2*(-a^2)^(1/2)))*exp(-w^2/(2*a^2)))/(2*(-a^2)^(1/2))
or:

댓글 수: 6
YiJing Pan
2019년 8월 29일
Bruno Luong
2019년 8월 29일
편집: Bruno Luong
2019년 8월 29일
This results looks odd.The FT of a Gaussian is a Gaussian
Not sure why MATLAB returns ERF term (actually I do know).
Star Strider
2019년 8월 29일
My pleasure.
This calculates the indefinite integral. You need to substitute the appropriate time values for ‘t’, and then evaluate it as you would for any integral. (If the ‘t’ values are symmetrical, for example [-T +T] some terms may cancel, resulting in a simpler expression for the definite integral.) Then plot it as a function of ‘w’ (actually ω or
). Add a constant of integration as well, if you want to.
It is also necessary to provide numerical values for ‘a’ and ‘T’:
syms a t T w
f(t)=(1/sqrt(2))*exp(-t^2/2*a^2)
F(w) = int(f*exp(1j*w*t), t, -T, T);
F = subs(F,{a,T},{5, 10});
F(w) = simplify(F, 'Steps', 500)
a = 1;
figure
fplot(real(F(w)), [-20 20]*pi)
hold on
fplot(imag(F(w)), [-20 20]*pi)
hold off
The evaluated and substituted function is then:

Experiment to get the result you want.
Yi-Jing Pan
2019년 8월 31일
Thank you very much!!!!
I will try it !
Star Strider
2019년 8월 31일
My pleasure!
Bruno Luong
2019년 8월 31일
This formula is wrong. The ERF terms must be removed, otherwise it is not Fourier transform.
카테고리
도움말 센터 및 File Exchange에서 Calculus에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!