Hello; I'm using the symbolic maths toolbox, specifically the fourier function. How do I access the positive and negative frequency components of the result separately ?
2 views (last 30 days)
Show older comments
Hello; I'm using the symbolic maths toolbox, specifically the fourier function. How do I access the positive and negative frequency components of the result separately ? I need to multiply the positive frequency components by -i and the negative frequency components by i, to compute the Hilbert transform. Note that Matlab's Hilbert function does not work with the symbolic maths toolbox.
Thank you.
0 Comments
Answers (3)
Star Strider
on 30 Nov 2016
The fourier function will give you the symbolic expression for the Fourier transform of your time- or spatial-domain function. You then are free to calculate and plot it for the frequency values you wish.
Also consider using simplify (with the 'Steps',10 name-value pair) and matlabFunction to create a function you can use in numerical computations.
3 Comments
Star Strider
on 1 Dec 2016
This is my alternative approach. I don’t know what function you’re transforming, but in my experience, coding my own transform — as I did here — generally produceds the result I want.
The ‘problem’ with the fourier function is that it integrates from -Inf to +Inf. If your time-domain function has other than infinite support, this will cause problems. That’s the reason I generally code my transforms myself.
If I know the function has infinite support, fourier produces the appropriate result.
Walter Roberson
on 30 Nov 2016
Multiply the symbolic output by the Heaviside function on the frequency to get the positive components, and by Heaviside of negative of the frequency to get the negative components.
See Also
Categories
Find more on Calculus in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!