Home » FFTW

FFTW

The class FFTW and the two extending classes FFTWReal and FFTWComplex offer lower level access to the underlying FFTW library and support one, two and three dimensional FFT using either interleaved or split double[] arrays. This is a more flexible interface since it does not force you to use my DataArray class to hold your data, and since it bypasses most sanity checking and oop(ing), it is more efficient. You are however responsible for formatting the data arrays yourself, and especially for real data, understanding what FFTW has given you!.

Efficiency: This interface still create a new plan for EACH FFT which is OK for large "one-off" tranforms but is less than ideal for multiple small transforms, for example for a real-time spectrum analyser.

Please note: that getting the calls to these classes wrong can result in the most entertaining results, usually crashing your JRE is a messy heap, (the fun of C). Please check your call and data very carefully before screaming "bug".

There are three FFTW classes that do the work, and also two support classes that are useful in manipulating data in double[] arrays:

Demo Programs Source

Test Programs Source