Symbolic DFFT in MATLAB?

1 view (last 30 days)
Palinkas Geza
Palinkas Geza on 17 Mar 2014
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
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 ?

Sign in to comment.

Answers (1)

Christopher Creutzig
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
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.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!