Symbolic DFFT in MATLAB?
1 view (last 30 days)
Show older comments
Hi Guys!
I'd like to ask for your help to execute symbolic discrete FFT on a 1D array containing integers (eg. [1 1]), then plotting its abs on a continuous interval. Is it even possible with the symbolic toolbox?
Thanks in advance, Ben0it8
1 Comment
Walter Roberson
on 17 Mar 2014
To check, you are only working with numeric values, but you want the result to be (e.g.) sin(42+cosh(19)) instead of the numeric equivalent ?
Answers (1)
Christopher Creutzig
on 31 Mar 2014
Edited: Christopher Creutzig
on 31 Mar 2014
I have no idea what “plotting its abs on a continuous interval” means, but you certainly can get a symbolic, exact, FFT from the Symbolic Math Toolbox:
>> feval(symengine, 'numeric::fft', [1 1], 'Symbolic').'
ans =
2
0
>> feval(symengine, 'numeric::fft', [1 1 2], 'Symbolic').'
ans =
4
1/2 + 2*((3^(1/2)*i)/2 + 1/2)^2 - (3^(1/2)*i)/2
- 3^(1/2)*i + ((3^(1/2)*i)/2 + 1/2)^2
1 Comment
Christopher Creutzig
on 24 Aug 2021
Since somebody asked (please do use the questions feature here, instead of sending me email): There is no 'numeric:ifft', but you can use 'numeric::invfft'.
Note, however, that like anything involving feval(symengine, ..., this is considered an undocumented feature and can go away at any time. If this is functionality you regard useful and important for what you do, please do reach out to support@mathworks.com and let us know that you request “proper” support in the toolbox.
See Also
Categories
Find more on Special Values 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!