In applied mathematics, the sliding discrete Fourier transform is a
recursive
Recursion occurs when the definition of a concept or process depends on a simpler or previous version of itself. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in m ...
algorithm to compute successive STFTs of input data frames that are a single sample apart (hopsize − 1). The calculation for the sliding DFT is closely related to
Goertzel algorithm
The Goertzel algorithm is a technique in digital signal processing (DSP) for efficient evaluation of the individual terms of the discrete Fourier transform (DFT). It is useful in certain practical applications, such as recognition of dual-tone mult ...
.
Definition
Assuming that the hopsize between two consecutive DFTs is 1 sample, then
From this definition above, the DFT can be computed recursively thereafter. However, implementing the
window function
In signal processing and statistics, a window function (also known as an apodization function or tapering function) is a mathematical function that is zero-valued outside of some chosen interval. Typically, window functions are symmetric around ...
on a sliding DFT is difficult due to its recursive nature, therefore it is done exclusively in a frequency domain.
Sliding windowed infinite Fourier transform
It is not possible to implement asymmetric window functions into sliding DFT. However, the
IIR version called sliding windowed infinite Fourier transform (SWIFT) provides an exponential window and the αSWIFT calculates two sDFTs in parallel where slow-decaying one is subtracted by fast-decaying one, therefore a window function of
.
References
FFT algorithms
{{signal-processing-stub