org.das2.math.fft.jnt
Class ComplexDoubleFFT_Mixed

java.lang.Object
  extended by org.das2.math.fft.jnt.ComplexDoubleFFT
      extended by org.das2.math.fft.jnt.ComplexDoubleFFT_Mixed

public class ComplexDoubleFFT_Mixed
extends ComplexDoubleFFT

Computes FFT's of complex, double precision data of arbitrary length n. This class uses the Mixed Radix method; it has special methods to handle factors 2, 3, 4, 5, 6 and 7, as well as a general factor.

This method appears to be faster than the Radix2 method, when both methods apply, but requires extra storage (which ComplexDoubleFFT_Mixed manages itself).

See ComplexDoubleFFT for details of data layout.


Constructor Summary
ComplexDoubleFFT_Mixed(int n)
           
 
Method Summary
 void backtransform(ComplexArray.Double data, int i0, int stride)
          Compute the (unnomalized) inverse FFT of data, leaving it in place.
 void transform(ComplexArray.Double data, int i0, int stride)
          Compute the Fast Fourier Transform of data leaving the result in data.
 
Methods inherited from class org.das2.math.fft.jnt.ComplexDoubleFFT
backtransform, checkData, getInstance, inverse, normalization, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ComplexDoubleFFT_Mixed

public ComplexDoubleFFT_Mixed(int n)
Method Detail

transform

public void transform(ComplexArray.Double data,
                      int i0,
                      int stride)
Description copied from class: ComplexDoubleFFT
Compute the Fast Fourier Transform of data leaving the result in data. The array data must contain the data points in the following locations:
    Re(d[i]) = data[i0 + stride*i]
    Im(d[i]) = data[i0 + stride*i+1]

Specified by:
transform in class ComplexDoubleFFT

backtransform

public void backtransform(ComplexArray.Double data,
                          int i0,
                          int stride)
Description copied from class: ComplexDoubleFFT
Compute the (unnomalized) inverse FFT of data, leaving it in place.

Specified by:
backtransform in class ComplexDoubleFFT