MATLAB Answers

Fourier Transform in terms of frequency instead of angular frequency

3 views (last 30 days)
Andrew  Luce
Andrew Luce on 11 Sep 2021
Edited: Paul on 12 Sep 2021
It might be a dumb question, but, I was just wondering if there was a way to easily have symbolic fourier transforms be in terns of frequency instead of angular frequncy? I know you can just divide by 2pi, but I was just curious. Additonally, as a side question, is there a way to have the transform for a square pulse or triangular pulse be sinc and sinc^2 like it should be?
thank you

Answers (2)

Walter Roberson
Walter Roberson on 11 Sep 2021
syms t w
F = fourier(sin(t),t,w)
F = 
oldVal = sympref('FourierParameters',[1/(2*sym(pi)) 1])
oldVal = 
F = fourier(sin(t),t,w)
F = 
sympref('FourierParameters', 'default')
ans = 

Paul on 11 Sep 2021
Edited: Paul on 12 Sep 2021
WRT to the first part of your question, the answer is yes. The parameters of the Fourier transform can be set via sympref
syms s(t) w f a
s(t) = sin(a*t);
ans = 
s(t) = sin(a*t);
sympref('FourierParameters',[1 -2*sym(pi)]);
ans = 
This result looks a bit funny, but you can show it's equivalent to the expeted result
simplify(ans - (dirac(f - a/2/sym(pi)) - dirac(f + a/2/sym(pi)))/2i)
ans = 
Check the bottom of the doc page for fourier() to see how it's parameterized, and then the doc page for sympref to see how to set the parameters and how to use sympref() properly within and across Matlab sessions.
As the second part of your qeustion, the doc page for sinc says: "Although sinc appears in tables of Fourier transforms, fourier does not return sinc in output." Trying to get an expression rewritten in terms of sinc() seems to be pretty hard.





Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!