Note
This package is not maintained. Its functionality has been transferred to the registered package FourierTools
A Julia package to compute Sliding Discrete Fourer Transforms recursively, over one-dimensional series of values.
This package is not yet registered. Add it with ]add https://github.com/heliosdrm/SlidingDFTs.jl in the "pkg mode" of the REPL, or in the "standard REPL":
using Pkg
Pkg.add("https://github.com/heliosdrm/SlidingDFTs.jl")This package must be used with some implementation of AbstractFFTs such as FFTW, FastTransforms or RustFFT.
The basic Sliding Discrete Fourier Transform (SDFT) of a one-dimensional series of values x, using a window of length n, is calculated as follows:
Step 1: Setup the method for a SDFT of length n:
using SlidingDFTs
using FFTW # or another package implementing AbstractFFTs
method = SDFT(n)See the API for other methods to compute sliding DFTs besides the basic SDFT.
Step 2: Create an iterator of the SDFT over x, with the function sdft. This is typically used in a loop:
for spectrum in sdft(method, x)
# `spectrum` is a `Vector{Complex(eltype(x))}` of length `n`
endSee the docs for further details.