Skip to content

Data Tapering Windows

Data tapering windows are used to reduce spectral leakage in Fourier spectra.

Generate/8953.gif Data tapering windows can be evaluated for frequency domain performance in the in the Explore Data Tapering Windows option.

The following fixed shape data tapering windows are available in TableCurve 2D:

  • None
  • Welch
  • Bisquare
  • Bartlett
  • cs2 Hann
  • Tukey-Hann
  • cs2 Hamming
  • Bartlett Mod
  • cs3 Nuttall C3
  • cs3 Blackman
  • cs3 BHarris 3
  • cs3 Nuttall C1
  • cs3 BlckmnExct
  • cs3 BHarris min
  • cs3 Nuttall min
  • cs4 Nuttall C5
  • cs4 BHarris 4
  • cs4 Nuttall C3
  • cs4 Nuttall C1
  • cs4 BHarris min
  • cs4 Nuttall min

The following adjustable shape data tapering windows are available in TableCurve 2D:

  • Beta
  • csx maxRolloff
  • Kaiser-Bessel
  • VanderMaas
  • Chebyshev
  • Chebyshev Appr
  • Slepian DPSS
  • Gaussian
  • Tapered-Cosine

Welch

1.0-(((n-1)-2*i)/(n-1)*((n-1)-2*i)/(n-1)), i=0..n-1

Bisquare

(1.0-(abs(i-0.5*n+0.5))^2/(0.5*n-0.5)^2)^2, i=0..n-1

Bartlett

2*i/(n-1), i=0..(n-1)/2
2-2*i/(n-1), i=(n-1)/2+1..n-1

cs2 Hann

0.5-0.5*cos(2*Pi*i/(n-1)), i=0..n-1

Tukey-Hann

Dirichlet(theta)=sin((2*Pi+0.5)*theta)/(2*Pi*sin(0.5*theta))
0.25*Dirichlet(2*(i/(n-1))-1.0-0.5)+(1.0-2.0*0.25)*Dirichlet(2*(i/(n-1))-1.0)+0.25*Dirichlet(2*(i/(n-1))-1.0+0.5), i=0..n-1

cs2 Hamming

0.53836-0.46164*cos(2*Pi*i/(n-1)), i=0..n-1

Bartlett Mod

(sin(Pi*(2*(i/(n-1))-1)))^2/(2*Pi*sin((i/(n-1))-0.5))^2, i=0..n-1

cs3 Nuttall C3

0.375-0.5*cos(2*Pi*i/(n-1))+0.125*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 Blackman

0.42-0.5*cos(2*Pi*i/(n-1))+0.08*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 BHarris 3

0.44959-0.49364*cos(2*Pi*i/(n-1))+0.05677*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 Nuttall C1

0.40897-0.5*cos(2*Pi*i/(n-1))+0.09103*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 BlckmnExct

0.42659071367153912296-0.49656061908856405847*cos(2*Pi*i/(n-1))+0.076848667239896818573*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 BHarris min

0.42323-0.49755*cos(2*Pi*i/(n-1))+0.07922*cos(4*Pi*i/(n-1)), i=0..n-1

cs3 Nuttall min

0.4243801-0.4973406*cos(2*Pi*i/(n-1))+0.0782793*cos(4*Pi*i/(n-1)), i=0..n-1

cs4 Nuttall C5

0.3125-0.46875*cos(2*Pi*i/(n-1))+0.1875*cos(4*Pi*i/(n-1))-0.03125*cos(6*Pi*i/(n-1)), i=0..n-1

cs4 BHarris 4

0.40217-0.49703*cos(2*Pi*i/(n-1))+0.09892*cos(4*Pi*i/(n-1))-0.00188*cos(6*Pi*i/(n-1)), i=0..n-1

cs4 Nuttall C3

0.338946-0.481973*cos(2*Pi*i/(n-1))+0.161054*cos(4*Pi*i/(n-1))-0.018027*cos(6*Pi*i/(n-1)), i=0..n-1

cs4 Nuttall C1

0.355768-0.487396*cos(2*Pi*i/(n-1))+0.144232*cos(4*Pi*i/(n-1))-0.012604*cos(6*Pi*i/(n-1)), i=0..n-1

cs4 BHarris min

0.35875-0.48829*cos(2*Pi*i/(n-1))+0.14128*cos(4*Pi*i/(n-1))-0.01168*cos(6*Pi*i/(n-1)), i=0..n-1

cs4 Nuttall min

0.3635819-0.4891775*cos(2*Pi*i/(n-1))+0.1365995*cos(4*Pi*i/(n-1))-0.0106411*cos(6*Pi*i/(n-1)), i=0..n-1

Beta

alpha=main lobe width
(4*(1-i/(n-1))*i/(n-1))^(-3.218913776512187+2.760793796409310*alpha), i=0..n-1

csx maxRolloff

alpha=main lobe width
This window produce the maximum rolloff characteristics.
(abs(0.5*(1-cos(2*Pi*i/(n-1)))))^(alpha-1), i=0..n-1

Kaiser-Bessel

alpha=main lobe width, I0 is Modified Bessel
I0(sqrt((alpha*alpha-1.0)/0.10132118361)*sqrt(i*(2*((n-1)/2)-i))/((n-1)/2))/I0(sqrt((alpha*alpha-1.0)/0.10132118361)), i=0..n-1

VanderMaas

alpha=main lobe width, I1 is Modified Bessel
0.5*I1(2*(0.5*Pi*sqrt(4*alpha*alpha-1))*sqrt((i/(n-1))*(1-(i/(n-1)))))/(sqrt((i/(n-1))*(1-(i/(n-1))))*I1(0.5*Pi*sqrt(4*alpha*alpha-1))), i=0..n-1

Chebyshev

This window produces the minimum sidelobe leakage, but offers zero rolloff. It is constructed in the frequency domain and inverted to produce the time domain data. For more information, see program 5.2 in IEEE Programs for Digital Signal Processing, IEEE Press, 1979. Unlike the alpha in the other adjustable windows, the Chebyshev adjustable parameter sets the sidelobe level in -dB. TableCurve 2D offers the Chebyshev window from -30dB to -150dB.

Gaussian

alpha=main lobe width
exp(-4*ln(2)*((i-((n-1)/2))/((n-1)*((2.453274901281656+alpha*0.3202556336455866)/(1.0+alpha*(2.348619671799226)))))^2), i=0..n-1

Tapered-Cosine

taper ranges from Hann with alpha=0.5 to rectangular as alpha approaches 0
if(i>(int)(alpha*n+0.5) and i<(int)((1.0-alpha)*n-0.5)), 1.0, 0.5-0.5*cos((Pi/alpha/(n-1))*(if(i>0.5*n, n-i-1, i)))), i=0..n-1

The following reference may be of interest: Albert H. Nuttall, "Some Windows with Very Good Sidelobe Behavior", IEEE Trans. ASSP, v29-1, Feb. 1981.