windows
12 memberslucid.signal.windowsWindow functions for spectral analysis (`lucid.signal.windows`).
All twelve windows are pure-Python composites built on lucid.arange and
elementwise math — no numpy, no engine work. Each window is parameterised
by M (the window length, must be >= 0) plus a few shape-specific
hyperparameters.
Notes
Every window accepts a keyword-only sym: bool = True flag. The
standard reference convention is:
sym=True— generate a symmetric window of lengthM(use this for filter design, where the window's symmetry matters).sym=False— generate a periodic window of lengthM(use this for spectral analysis / DFT — the periodic form has lengthM+1then drops the last sample, so adjacent windows tile cleanly).
The two forms differ only at boundary samples; internally we compute the
length-M+1 form when sym=False and slice off the last point.
Functions
bartlett→ TensorBartlett (triangular) window.
cosine→ TensorCosine (half-sine) window.
hann→ TensorHann (raised-cosine) window.
hamming→ TensorHamming window.
general_hamming→ TensorGeneralised Hamming-family window.
general_cosine→ TensorGeneric weighted sum of cosines.
blackman→ TensorBlackman window.
nuttall→ TensorNuttall four-term window.
gaussian→ TensorGaussian window.
general_gaussian→ TensorGeneralised Gaussian window.
exponential→ TensorExponential (Poisson) window.
kaiser→ TensorKaiser–Bessel window.