math.jwave.transforms
Class DiscreteFourierTransform
- java.lang.Object
-
- math.jwave.transforms.BasicTransform
-
- math.jwave.transforms.DiscreteFourierTransform
-
public class DiscreteFourierTransform extends BasicTransform
The Discrete Fourier Transform (DFT) is - as the name says - the discrete version of the Fourier Transform applied to a discrete complex valued series. While the DFT can be applied to any complex valued series; of any length, in practice for large series it can take considerable time to compute, while the time taken being proportional to the square of the number on points in the series.
-
-
Constructor Summary
Constructors Constructor and Description DiscreteFourierTransform()Constructor; does nothing
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Complex[]forward(Complex[] arrTime)The 1-D forward version of the Discrete Fourier Transform (DFT); The input array arrTime is organized by a class called Complex keeping real and imaginary part of a complex number.double[]forward(double[] arrTime)The 1-D forward version of the Discrete Fourier Transform (DFT); The input array arrTime is organized by real and imaginary parts of a complex number using even and odd places for the index.double[][]forward(double[][] matTime)The 2-D forward version of the Discrete Fourier Transform (DFT); The input array matTime is organized by real and imaginary parts of a complex number using even and odd places for the indices.double[][][]forward(double[][][] spcTime)The 3-D forward version of the Discrete Fourier Transform (DFT);Complex[]reverse(Complex[] arrFreq)The 1-D reverse version of the Discrete Fourier Transform (DFT); The input array arrFreq is organized by a class called Complex keeping real and imaginary part of a complex number.double[]reverse(double[] arrFreq)The 1-D reverse version of the Discrete Fourier Transform (DFT); The input array arrFreq is organized by real and imaginary parts of a complex number using even and odd places for the index.double[][]reverse(double[][] matFreq)The 2-D reverse version of the Discrete Fourier Transform (DFT); The input array matFreq is organized by real and imaginary parts of a complex number using even and odd places for the indices.double[][][]reverse(double[][][] spcHilb)The 3-D reverse version of the Discrete Fourier Transform (DFT);
-
-
-
Constructor Detail
-
DiscreteFourierTransform
public DiscreteFourierTransform()
Constructor; does nothing
-
-
Method Detail
-
forward
public double[] forward(double[] arrTime)
The 1-D forward version of the Discrete Fourier Transform (DFT); The input array arrTime is organized by real and imaginary parts of a complex number using even and odd places for the index. For example: arrTime[ 0 ] = real1, arrTime[ 1 ] = imag1, arrTime[ 2 ] = real2, arrTime[ 3 ] = imag2, ... The output arrFreq is organized by the same scheme.- Specified by:
forwardin classBasicTransform- Parameters:
arrTime- coefficients of 1-D time domain- Returns:
- coefficients of 1-D frequency or Hilbert domain
- See Also:
BasicTransform.forward(double[])
-
reverse
public double[] reverse(double[] arrFreq)
The 1-D reverse version of the Discrete Fourier Transform (DFT); The input array arrFreq is organized by real and imaginary parts of a complex number using even and odd places for the index. For example: arrTime[ 0 ] = real1, arrTime[ 1 ] = imag1, arrTime[ 2 ] = real2, arrTime[ 3 ] = imag2, ... The output arrTime is organized by the same scheme.- Specified by:
reversein classBasicTransform- Parameters:
arrFreq- coefficients of 1-D frequency or Hilbert domain- Returns:
- coefficients of 1-D time domain
- See Also:
BasicTransform.reverse(double[])
-
forward
public Complex[] forward(Complex[] arrTime)
The 1-D forward version of the Discrete Fourier Transform (DFT); The input array arrTime is organized by a class called Complex keeping real and imaginary part of a complex number. The output arrFreq is organized by the same scheme.- Overrides:
forwardin classBasicTransform- Parameters:
arrTime- array of type Complex keeping coefficients of complex numbers- Returns:
- array of type Complex keeping the discrete fourier transform coefficients
-
reverse
public Complex[] reverse(Complex[] arrFreq)
The 1-D reverse version of the Discrete Fourier Transform (DFT); The input array arrFreq is organized by a class called Complex keeping real and imaginary part of a complex number. The output arrTime is organized by the same scheme.- Overrides:
reversein classBasicTransform- Parameters:
arrFreq- array of type Complex keeping the discrete fourier transform coefficients- Returns:
- array of type Complex keeping coefficients of tiem domain
-
forward
public double[][] forward(double[][] matTime)
The 2-D forward version of the Discrete Fourier Transform (DFT); The input array matTime is organized by real and imaginary parts of a complex number using even and odd places for the indices. For example: matTime[0][0] = real11, matTime[0][1] = imag11, matTime[0][2] = real12, matTime[0][3] = imag12, matTime[1][0] = real21, matTime[1][1] = imag21, matTime[1][2] = real22, matTime[1][3] = imag2... The output matFreq is organized by the same scheme.- Overrides:
forwardin classBasicTransform- Parameters:
matTime- coefficients of 2-D time domain- Returns:
- coefficients of 2-D frequency or Hilbert domain
- See Also:
BasicTransform.forward(double[][])
-
reverse
public double[][] reverse(double[][] matFreq)
The 2-D reverse version of the Discrete Fourier Transform (DFT); The input array matFreq is organized by real and imaginary parts of a complex number using even and odd places for the indices. For example: matFreq[0][0] = real11, matFreq[0][1] = imag11, matFreq[0][2] = real12, matFreq[0][3] = imag12, matFreq[1][0] = real21, matFreq[1][1] = imag21, matFreq[1][2] = real22, matFreq[1][3] = imag2... The output matTime is organized by the same scheme.- Overrides:
reversein classBasicTransform- Parameters:
matFreq- coefficients of 2-D frequency or Hilbert domain- Returns:
- coefficients of 2-D time domain
- See Also:
BasicTransform.reverse(double[][])
-
forward
public double[][][] forward(double[][][] spcTime)
The 3-D forward version of the Discrete Fourier Transform (DFT);- Overrides:
forwardin classBasicTransform- Parameters:
spcTime- coefficients of 3-D time domain domain- Returns:
- coefficients of 3-D frequency or Hilbert domain
- See Also:
BasicTransform.forward(double[][][])
-
reverse
public double[][][] reverse(double[][][] spcHilb)
The 3-D reverse version of the Discrete Fourier Transform (DFT);- Overrides:
reversein classBasicTransform- Parameters:
spcHilb- coefficients of 3-D frequency or Hilbert domain- Returns:
- coefficients of 3-D time domain
- See Also:
BasicTransform.reverse(double[][][])
-
-
DMelt 3.0 © DataMelt by jWork.ORG