Data Tapering Windows¶
Data tapering windows are used to reduce spectral leakage in Fourier spectra.
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.