Sliding DFT

From testwiki
Jump to navigation Jump to search

Template:Multiple issues In applied mathematics, the sliding discrete Fourier transform is a recursive algorithm to compute successive STFTs of input data frames that are a single sample apart (hopsize − 1).[1] The calculation for the sliding DFT is closely related to Goertzel algorithm.Template:Cn

Definition

Assuming that the hopsize between two consecutive DFTs is 1 sample, then[2]

Ft+1(n)=k=0N1fk+t+1ej2πkn/N=m=1Nfm+tej2π(m1)n/N=ej2πn/N[m=0N1fm+tej2πmn/Nft+ft+N]=ej2πn/N[Ft(n)ft+ft+N].

From this definition above, the DFT can be computed recursively thereafter. However, implementing the window function on a sliding DFT is difficult due to its recursive nature, therefore it is done exclusively in a frequency domain.[3]

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 w(x)=exαexβ.[4]

References

Template:Reflist


Template:Signal-processing-stub