This is a pre-release version (2.0.0.dev0+git20260907.41eeb59).Go to latest (1.18.0)
{ } Raw JSON

bundles / scipy 2.0.0.dev0+git20260907.41eeb59 / scipy / signal / windows / _windows / taylor

function

scipy.signal.windows._windows:taylor

source: build-install/usr/lib/python3.14/site-packages/scipy/signal/windows/_windows.py:2018

Signature

def taylor(M, nbar = 4, sll = 30, norm = True, sym = True, *, xp = None, device = None)

Summary

Return a Taylor window.

Extended Summary

The Taylor window taper function approximates the Dolph-Chebyshev window's constant sidelobe level for a parameterized number of near-in sidelobes, but then allows a taper beyond [2].

The SAR (synthetic aperture radar) community commonly uses Taylor weighting for image formation processing because it provides strong, selectable sidelobe suppression with minimum broadening of the mainlobe [1].

Parameters

M : int

Number of points in the output window. If zero, an empty array is returned. An exception is thrown when it is negative.

nbar : int, optional

Number of nearly constant level sidelobes adjacent to the mainlobe.

sll : float, optional

Desired suppression of sidelobe level in decibels (dB) relative to the DC gain of the mainlobe. This should be a positive number.

norm : bool, optional

When True (default), divides the window by the largest (middle) value for odd-length windows or the value that would occur between the two repeated middle values for even-length windows such that all values are less than or equal to 1. When False the DC gain will remain at 1 (0 dB) and the sidelobes will be sll dB down.

sym : bool, optional

When True (default), generates a symmetric window, for use in filter design. When False, generates a periodic window, for use in spectral analysis.

xp : array_namespace, optional

Optional array namespace. Should be compatible with the array API standard, or supported by array-api-compat. Default: numpy

device : any

optional device specification for output. Should match one of the supported device specification in xp.

Returns

out : array

The window. When norm is True (default), the maximum value is normalized to 1 (though the value 1 does not appear if M is even and sym is True).

Examples

Plot the window and its frequency response:
import numpy as np
from scipy import signal
from scipy.fft import fft, fftshift
import matplotlib.pyplot as plt
✓
window = signal.windows.taylor(51, nbar=20, sll=100, norm=False)
✓
plt.plot(window)
plt.title("Taylor window (100 dB)")
plt.ylabel("Amplitude")
plt.xlabel("Sample")
✗
Text(0.5, 0, 'Sample')
plt.figure()
✗
<Figure size 640x480 with 0 Axes>
A = fft(window, 2048) / (len(window)/2.0)
freq = np.linspace(-0.5, 0.5, len(A))
response = 20 * np.log10(np.abs(fftshift(A / abs(A).max())))
✓
plt.plot(freq, response)
plt.axis([-0.5, 0.5, -120, 0])
plt.title("Frequency response of the Taylor window (100 dB)")
plt.ylabel("Normalized magnitude [dB]")
plt.xlabel("Normalized frequency [cycles per sample]")
✗
Text(0.5, 0, 'Normalized frequency [cycles per sample]')

See also

bartlett
blackman
chebwin
hamming
hann
kaiser

Aliases

  • scipy.signal.windows.taylor

Referenced by