Fourier Transform in terms of frequency instead of angular frequency

19 visualizzazioni (ultimi 30 giorni)
Hi,
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
Andrew

Risposte (2)

Walter Roberson
Walter Roberson il 11 Set 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
Paul il 11 Set 2021
Modificato: Paul il 12 Set 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);
fourier(s(t),t,w)
ans = 
s(t) = sin(a*t);
sympref('FourierParameters',[1 -2*sym(pi)]);
fourier(s(t),t,f)
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 = 
0
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.

Tag

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by