MATLAB Answers

Fourier Transform in terms of frequency instead of angular frequency

조회 수: 3(최근 30일)
Andrew  Luce
Andrew Luce 2021년 9월 11일
편집: Paul 2021년 9월 12일
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


Walter Roberson
Walter Roberson 2021년 9월 11일
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 2021년 9월 11일
편집: Paul 2021년 9월 12일
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!

Translated by