Author: Florian Schmidt Conversion from double to floating point fft plus various optimizations: Mario Lang