org.das2.math.fft
Class GeneralFFT

java.lang.Object
  extended by org.das2.math.fft.GeneralFFT

public class GeneralFFT
extends java.lang.Object

Provides forward and reverse FFT methods for any number of elements. The FFTs are implemented using a modified version of the jnt.FFT package from NIST. This version operates on ComplexArray objects that may be backed by das2 data sets avoiding unnecessary copies.


Constructor Summary
GeneralFFT(int n, boolean doublePrecision, boolean real)
          Initialize the FFT object by constructing wave tables that can be repeatly used.
 
Method Summary
 void invTransform(ComplexArray.Double data)
          perform the inverse transform on the array in situ.
 void invTransform(ComplexArray.Float data)
          perform the inverse transform on the array in situ.
static GeneralFFT newDoubleFFT(int n)
          creates an FFT object that operates on a ComplexArray.Double of n elements.
static GeneralFFT newFloatFFT(int n)
          creates an FFT object that operates on a ComplexArray.Float of n elements.
 void transform(ComplexArray.Double data)
          perform the forward transform on the array in situ.
 void transform(ComplexArray.Float data)
          perform the forward transform on the array in situ.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeneralFFT

public GeneralFFT(int n,
                  boolean doublePrecision,
                  boolean real)
Initialize the FFT object by constructing wave tables that can be repeatly used.

Method Detail

newFloatFFT

public static GeneralFFT newFloatFFT(int n)
creates an FFT object that operates on a ComplexArray.Float of n elements.


newDoubleFFT

public static GeneralFFT newDoubleFFT(int n)
creates an FFT object that operates on a ComplexArray.Double of n elements.


transform

public void transform(ComplexArray.Double data)
perform the forward transform on the array in situ.


transform

public void transform(ComplexArray.Float data)
perform the forward transform on the array in situ.


invTransform

public void invTransform(ComplexArray.Double data)
perform the inverse transform on the array in situ.


invTransform

public void invTransform(ComplexArray.Float data)
perform the inverse transform on the array in situ.