Common Lisp Package: BORDEAUX-FFT

README:

FUNCTION

Public

EXTRACT-CENTERED-WINDOW (VECTOR CENTER SIZE &OPTIONAL (ELEMENT-TYPE (ARRAY-ELEMENT-TYPE VECTOR)))

Extract a subsequence of SIZE from VECTOR, centered on CENTER and padding with zeros beyond the edges of the vector.

EXTRACT-CENTERED-WINDOW-INTO (VECTOR CENTER SIZE DESTINATION)

Extract a subsequence of SIZE from VECTOR, centered on OFFSET and padding with zeros beyond the boundaries of the vector, storing it to DESTINATION.

EXTRACT-WINDOW-INTO (VECTOR START LENGTH DESTINATION)

Copy an extent of VECTOR to DESTINATION. Outside of its legal array indices, VECTOR is considered to be zero.

FFT (SOURCE)

Returns the Fourier transform of source, allocating a new array for the result.

FFT! (SOURCE DEST)

Destructive version of fft, since it fills dest.

IFFT (SOURCE)

Returns the inverse Fourier transform of source, allocating a new array for the result.

IFFT! (SOURCE DEST)

Destructive version of ifft, since it fills dest.

SFFT (SOURCE &OPTIONAL LEN)

This is the generic fft function. Stands for stupid fft. Can take any kind of array as input.

SIFFT (SOURCE)

This is the generic fft function. Stands for stupid fft. Can take any kind of array as input.

WINDOWED-FFT (SIGNAL-VECTOR CENTER LENGTH &OPTIONAL (WINDOW-FN 'HANN))

Perform an FFT on the window of a signal, centered on the given index, multiplied by a window generated by the chosen window function

Undocumented

BARTLETT (I N)

BLACKMAN (I N)

BLACKMAN-HARRIS (I N)

EXTRACT-WINDOW (VECTOR START LENGTH &OPTIONAL (ELEMENT-TYPE (ARRAY-ELEMENT-TYPE VECTOR)))

GAUSSIAN (SIGMA)

GAUSSIAN*BARTLETT^X (SIGMA TRIANGLE-EXPONENT)

HANN (I N)

RECTANGULAR (I N)

TRIANGLE (I N)

WINDOW-VECTOR (FUNCTION N)

Private

Undocumented

BLACKMAN* (ALPHA I N)

CLIP-IN-WINDOW (X START END)

CONVERT-TO-COMPLEX-SAMPLE-ARRAY (ARRAY)

COSINE-SERIES (I N A0 A1 A2 A3)

FFT-COMMON (INSTANCE SOURCE DEST)

GAUSS* (SIGMA I N)

IFFT-COMMON (INSTANCE SOURCE DEST)

MAKE-FFT-INSTANCE (SIZE)

MAKE-FOURIER-INSTANCE (SIZE DIRECTION)

MAKE-IFFT-INSTANCE (SIZE)

POWER-OF-TWO (X)

MACRO

Private

Undocumented

WITH-FFT-INSTANCE (INSTANCE SIZE &BODY BODY)

SLOT-ACCESSOR

Private

Undocumented

SIZE (OBJECT)

VARIABLE

Public

Undocumented

*FFT-INSTANCE*

*IFFT-INSTANCE*

CLASS

Private

Undocumented

FFT-INSTANCE