represents a Blackman window function of x.
BlackmanWindow
represents a Blackman window function of x.
Details
- BlackmanWindow is a window function typically used for finite impulse response (FIR) filter design and spectral analysis.
- Window functions are used in applications where data is processed in short segments and have a smoothing effect by gradually tapering data values to zero at the ends of each segment.
- The Blackman window is a close approximation of the ExactBlackmanWindow. The truncated coefficients result in an improved high-frequency roll-off but at the cost of larger spectral side lobes.
- BlackmanWindow[x] is equal to
. - BlackmanWindow automatically threads over lists.
Examples
open all close allBasic Examples (3)
Shape of a 1D Blackman window:
Plot[BlackmanWindow[x], {x, -1, 1}]Shape of a 2D Blackman window:
Plot3D[BlackmanWindow[x]BlackmanWindow[y], {x, -1, 1}, {y, -1, 1}, PlotRange -> All]Extract the continuous function representing the Blackman window:
FunctionExpand[BlackmanWindow[x]]Scope (4)
BlackmanWindow[0.1]Translated and dilated Blackman window:
Plot[BlackmanWindow[(x - 1) / 2], {x, -1, 3}]2D Blackman window with a circular support:
Plot3D[BlackmanWindow[Sqrt[x ^ 2 + y ^ 2]], {x, -1, 1}, {y, -1, 1}, PlotRange -> All]Discrete Blackman window of length 15:
ListPlot[Array[BlackmanWindow, 15, {-1 / 2, 1 / 2}], Filling -> Axis]Discrete 15×10 2D Blackman window:
ListPointPlot3D[Array[BlackmanWindow[#1] BlackmanWindow[#2]&, {15, 10}, {{-1 / 2, 1 / 2}}], Filling -> Axis]Applications (4)
Create a lowpass FIR filter with cutoff frequency of
and length 21:
h = LeastSquaresFilterKernel[{"Lowpass", π / 5}, 21]Taper the filter using a Blackman window to improve stopband attenuation:
w = Array[BlackmanWindow, Length[h], {-1 / 2, 1 / 2}];
fir = h w;fir / Total[fir]Log-magnitude plot of the power spectra of the two filters:
Plot[Evaluate[20Log10[Abs@ListFourierSequenceTransform[#, ω]]& /@ {h, %}], {ω, 0, π}, GridLines -> Automatic]Filter a white noise signal using the Blackman window method:
a = AudioGenerator["White", 1, SampleRate -> 8000];
Periodogram[{a, LowpassFilter[a, 8000 π / 3, 21, BlackmanWindow]}]Use a window specification to calculate sample PowerSpectralDensity:
proc = ARMAProcess[1, {.5}, {.3}, 1];
data = RandomFunction[proc, {50}];spec = PowerSpectralDensity[data, w, BlackmanWindow];Compare to spectral density calculated without a windowing function:
sd = PowerSpectralDensity[data, w];sd === specThe plot shows that window smooths the spectral density:
Plot[{sd, spec}, {w, -π, π}, PlotRange -> All, PlotLegends -> {"no window", "with window"}]Compare to the theoretical spectral density of the process:
Plot[{spec, Evaluate@PowerSpectralDensity[proc, w]}, {w, -π, π}, PlotLegends -> {"data", "process"}]Use a window specification for time series estimation:
data = RandomFunction[ARMAProcess[1, {.3}, {.4}, 1], {300}];Specify window for spectral estimator:
EstimatedProcess[data, ARMAProcess[1, 1], ProcessEstimator -> {"SpectralEstimator", "Window" -> BlackmanWindow}]Properties & Relations (5)
The area under the Blackman window:
area = Integrate[BlackmanWindow[x], {x, -∞, ∞}]Normalize to create a window with unit area:
Plot[{BlackmanWindow[x], BlackmanWindow[x] / area}, {x, -1, 1}, PlotRange -> All]Fourier transform of the Blackman window:
f = FourierTransform[BlackmanWindow[x], x, w]Power spectrum of the Blackman window:
LogLinearPlot[20 Log[10, Abs[f]], {w, .1, 100}, PlotRange -> {0, -120}]Discrete Blackman window of length 15:
Array[BlackmanWindow, 15, {-0.5, 0.5}]Normalize so the coefficients add up to 1:
% / Total[%]Discrete-time Fourier transform of a normalized discrete Blackman window of length 15:
(win = Array[HammingWindow, 15, {-0.5, 0.5}];
f = ListFourierSequenceTransform[win / Total[win], ω])Plot[Abs@f, {ω, 0, π}, PlotRange -> All]Power spectra of the Blackman and rectangular windows:
tab = Table[(h = Array[win, 15, {-0.5, 0.5}];
20Log10[Abs@ListFourierSequenceTransform[h / Total[h], ω]]), {win, {BlackmanWindow, DirichletWindow}}];Plot[tab, {ω, 0, π}, PlotRange -> {5, -80}, PlotLegends -> {BlackmanWindow, DirichletWindow}]Related Guides
History
Text
Wolfram Research (2012), BlackmanWindow, Wolfram Language function, https://reference.wolfram.com/language/ref/BlackmanWindow.html.
CMS
Wolfram Language. 2012. "BlackmanWindow." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/BlackmanWindow.html.
APA
Wolfram Language. (2012). BlackmanWindow. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BlackmanWindow.html
BibTeX
@misc{reference.wolfram_2026_blackmanwindow, author="Wolfram Research", title="{BlackmanWindow}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/BlackmanWindow.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_blackmanwindow, organization={Wolfram Research}, title={BlackmanWindow}, year={2012}, url={https://reference.wolfram.com/language/ref/BlackmanWindow.html}, note=[Accessed: 13-June-2026]}