Integral transforms

1D Fast Fourier Transform: Complex to Complex

Calculates discrete fast Fourier Transform (or inverse) on discrete data. The number of elements in the data array must be an integer power of 2. Positive frequencies returned in the first half of array, negative frequencies in the second half. The smallest frequencies are at the ends, the largest in the centre.

Data and transform stored in same array

void fftcomp1d(
   const double delta, // sampling interval in original space
   const int forward, // true/false for forward/backward transform
   Array<Complex>& xft, // data in; transformed data out
   double& deltat // sampling interval in transform space
)

Transform returned in new array

void fftcomp1d(
   const Array<Complex>& x, // data array
   const double delta, // sampling interval in original space
   const int forward, // true/false for forward/backward transform
   Array<Complex>& ft, // transformed data (new array)
   double& deltat // sampling interval in transform space
)