Enum FFT.Mode

java.lang.Object
java.lang.Enum<FFT.Mode>
org.bzdev.math.FFT.Mode
All Implemented Interfaces:
Serializable, Comparable<FFT.Mode>
Enclosing class:
FFT

public static enum FFT.Mode extends Enum<FFT.Mode>
FFT normalization mode.

There are multiple conventions regarding how Fourier transforms are defined. For an FFT, these affect how a transform is normalized.

  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    The transform is defined by $X_k = \sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \frac1N \sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1).
    The transform is defined by $X_k = \frac1N \sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1).
    The transform is defined by $X_k = \frac1{\sqrt{N}}\sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \frac1{\sqrt{N}}\sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1).
  • Method Summary

    Modifier and Type
    Method
    Description
    static FFT.Mode
    Returns the enum constant of this type with the specified name.
    static FFT.Mode[]
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Enum

    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • NORMAL

      public static final FFT.Mode NORMAL
      The transform is defined by $X_k = \sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \frac1N \sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1). This is particularly useful when using an FFT to compute a convolution or cross correlation.
    • SYMMETRIC

      public static final FFT.Mode SYMMETRIC
      The transform is defined by $X_k = \frac1{\sqrt{N}}\sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \frac1{\sqrt{N}}\sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1). This is useful when one wants the norm of a vector and its transform to be identical, as is typically the case in physics applications.
    • REVERSED

      public static final FFT.Mode REVERSED
      The transform is defined by $X_k = \frac1N \sum_{n=0}^{N-1} x_ne^{-2\pi kni/N}$, and the inverse transform is defined by $x_n = \sum_{k=0}^{N-1} X_ke^{2\pi kni/N}$, where the indices have values in the range [0, N-1). This is useful for statistics applications due to the definition of the characteristic function.
  • Method Details

    • values

      public static FFT.Mode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static FFT.Mode valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null