JSci.maths
Class FourierMath

java.lang.Object
  extended by JSci.maths.AbstractMath
      extended by JSci.maths.FourierMath
All Implemented Interfaces:
NumericalConstants

public final class FourierMath
extends AbstractMath
implements NumericalConstants

The Fourier math library. This class cannot be subclassed or instantiated because all methods are static. Use sort(transform(sort(...))) for the discrete analogue of the continuous Fourier transform, and sort(inverseTransform(sort(...))) for the inverse transform.

PlanetMath references:
FourierTransform

Field Summary
 
Fields inherited from interface JSci.maths.NumericalConstants
GAMMA, GOLDEN_RATIO, LOG10, SQRT2, SQRT2PI, TWO_PI
 
Method Summary
static Complex[] inverseTransform(Complex[] data)
          Inverse Fourier transform (-2Pi convention).
static Complex[] inverseTransform(double[] data)
          Inverse Fourier transform (-2Pi convention).
static Complex[] inverseTransform(double[] dataReal, double[] dataImag)
          Inverse Fourier transform (-2Pi convention).
static Complex[] sort(Complex[] output)
          Sorts the output from the Fourier transfom methods into ascending frequency/time order.
static double[] sort(double[] input)
           
static Complex[] transform(Complex[] data)
          Fourier transform (2Pi convention).
static Complex[] transform(double[] data)
          Fourier transform (2Pi convention).
static Complex[] transform(double[] dataReal, double[] dataImag)
          Fourier transform (2Pi convention).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

transform

public static Complex[] transform(Complex[] data)
Fourier transform (2Pi convention).

Parameters:
data - an array containing the positive time part of the signal followed by the negative time part.
Returns:
an array containing positive frequencies in ascending order followed by negative frequencies in ascending order.

transform

public static Complex[] transform(double[] dataReal,
                                  double[] dataImag)
Fourier transform (2Pi convention).

Parameters:
dataReal - an array containing the positive real time part of the signal followed by the negative real time part.
dataImag - an array containing the positive imaginary time part of the signal followed by the negative imaginary time part.
Returns:
an array containing positive frequencies in ascending order followed by negative frequencies in ascending order.

transform

public static Complex[] transform(double[] data)
Fourier transform (2Pi convention).

Parameters:
data - an array containing the positive time part of the signal followed by the negative time part.
Returns:
an array containing positive frequencies in ascending order followed by negative frequencies in ascending order.

inverseTransform

public static Complex[] inverseTransform(Complex[] data)
Inverse Fourier transform (-2Pi convention).

Parameters:
data - an array containing positive frequencies in ascending order followed by negative frequencies in ascending order.
Returns:
an array containing the positive time part of the signal followed by the negative time part.

inverseTransform

public static Complex[] inverseTransform(double[] dataReal,
                                         double[] dataImag)
Inverse Fourier transform (-2Pi convention).

Parameters:
dataReal - an array containing positive real frequencies in ascending order followed by negative real frequencies in ascending order.
dataImag - an array containing positive imaginary frequencies in ascending order followed by negative imaginary frequencies in ascending order.
Returns:
an array containing the positive time part of the signal followed by the negative time part.

inverseTransform

public static Complex[] inverseTransform(double[] data)
Inverse Fourier transform (-2Pi convention).

Parameters:
data - an array containing positive frequencies in ascending order followed by negative frequencies in ascending order.
Returns:
an array containing the positive time part of the signal followed by the negative time part.

sort

public static Complex[] sort(Complex[] output)
Sorts the output from the Fourier transfom methods into ascending frequency/time order.


sort

public static double[] sort(double[] input)