Luftzig/elm-signal-processing/1.0.0

NOTE: the latest version is 1.1.0

FFT

Functions for calculating the discrete finite fourier transform using the fast fourier transform algorithms.

Complex values

Functions that work on complex values

fft : List Complex -> List Complex

compute the fourier transform of a list of complex values

fft [ real 1, zero, real 1, imaginary 0.5 ]
inverseFft : List Complex -> List Complex

compute the inverse fourier transform of a list of complex values The inverse fourier transform of list Z is equal to $$(conjugate (fft (conjugate Z)) / (length Z))$$ where Z* is the conjugate of Z.

Real values

Functions that work real (Float) values

realFft : List Float -> List Complex

compute the fourier transform of a list of real values. The output is a list of complex values.

realFft [ 1, 0, 1, 0.5 ]
realInverseFft : List Float -> List Complex

compute the inverse fourier transform of a list of real values The inverse fourier transform of list Z is equal to $$(conjugate (fft (conjugate Z)) / (length Z))$$ where Z* is the conjugate of Z.