On 27-lug-10, at 21:47, Rory Mcguire wrote:

dsimcha wrote:

I'm going to need an FFT library to perform some convolutions at some
point
soon. Two absolute, non-negotiable requirements are that it be written in pure D and that it be Boost or compatibly (i.e. zlib or public domain)
licensed.  I also prefer "simple and good enough" over "has every
micro-optimization in the book but a PITA to maintain/modify/use", as long
as
it's at least a true fft as opposed to an O(N^2) DFT. A few questions:

1.  Does anyone already have such a lib?

2. If noone has one I'll probably either write my own from scratch or port some code from C if I can find code that's under a suitable license
and written with a "simple and good enough" philosophy rather than an
"every tiny
optimization in the book" philosophy. Could anyone recommend one to port?

3. If I do end up writing my own or porting, is there sufficient interest in this that I should try to target it for std.numerics, or would I be
better off just making it good enough for my use case?


Hi,

I haven't used fft for anything before not sure what I'd use it for either,
here is public domain code claiming to be a fft:
        http://www.dsprelated.com/showmessage/36380/1.php
And here is a list of fft libs:
        http://fftw.org/benchfft/ffts.html

-Rory


I was preceded, that is a good list. I can only say that FFTW is *really* good, and if you structure your code well you should be able to support more than one library. I have wrappers for fftw, and it can be used with NArray (N dimensional dense arrays in blip), but is not directly there exactly due to the license.
So having a fallback FFT would be useful for me.

ciao
Fawzi

Reply via email to