fft on a matrix



On 6/12/10, Raymond Toy <toy.raymond at gmail.com> wrote:

> If yes, then maxima cannot do that.  (It probably should.  And also
> support bfloats.)

I have a modified version of fft-core.lisp to do bigfloat arithmetic.
I just replaced all the (coerce foo 'flonum) with ($bfloat foo)
and (+ foo bar) with (m+ foo bar), etc. Is there a neater way
to get bigfloat arithmetic?

> But a 2D FFT can be done using 1D FFts.  You take the 1D FFT of each
> row.  From this matrix, take the FFT of each column.  So something like
> the following:
>
> r: map(fft, m);
> r : map(fft, transpose(r));
> transpose(r);

Hmm, I hadn't realized it was so simple. We could easily
get the fft function to apply that to a matrix argument.

best

Robert Dodier