I am currently trying to evaluate a high resolution ADC for which I need to window my output data for the FFT. Up until now I have been using the default 4 term Blackman harris window in MATLAB. However, I came across a few app notes that recommend using a seven term Blackman Harris for the SNR ranges that I am interested in. I have tried looking quite a bit but I cannot seem to find an equation for implementing the seven term BH window, neither is it available in MATLAB. Can someone point me to a source where I can find this? As far as I am aware Harris' classic paper on windows doesn't provide the equation either.

  • 3
    $\begingroup$ In addition to the complete answer that was provided, I have found this and this paper useful when thinking about windows. $\endgroup$ – A_A Aug 8 '18 at 10:11

In this document you can find the coefficients of a seven-term Blackman Harris window. Ignoring the bizarre notation, it seems like the window is defined by

$$w[n]=\sum_{k=0}^6a_k\cos\left(\frac{2\pi kn}{N}\right),\quad n=0,1,\ldots,N-1\tag{1}$$

where $N$ is the window length and the coefficients $a_k$ are given by

$$\begin{align} a_0&=0.27105140069342\\ a_1&= - 0.43329793923448\\a_2&=0.21812299954311\\a_3&= - 0.06592544638803\\a_4&= 0.01081174209837\\a_5&= - 0.00077658482522\\a_6&= 0.00001388721735\end{align} $$

Unfortunately, they do not mention where those coefficients come from. Somebody must have run an optimization routine to minimize the sidelobe level for a given mainlobe width.


I think I found the relevant paper here. This is a corresponding Matlab function.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.