I get the basic idea of a continuous Fourier transform and I am a little fuzzy with a discrete Fourier transform and hazier still on the fast Fourier transform. I want to know how to compute and interpret the fast Fourier transform (FFT) of some function in maxima. For example, how would I compute the FFT of sin(x)? I know how to do this in MATLAB, but I am not sure how to do it in maxima.
1 Answers
1
votes
Well, there is a built-in fast Fourier transform function: see 'fft'.
'fft' is only for numerical data. Maybe you want a function which works for symbolic data as well. It is easy to write an ordinary (not fast) discrete Fourier transform as a summation, something like: (1/n) sum(y[k]*exp(2*%pi*%i*j*k/n)
for the j
-th element. (Formula may be wrong, I am working from memory.)
If you want a fast Fourier transform for symbolic data, you will need to work from a published algorithm. (There are many books which have FFT algorithms in them.) Just write the algorithm in Maxima and operations will automatically be symbolic.