Is there an easy/general way to calculate this? For instance, the rectangular window has a maximum scalloping loss of 0.3634, which can be derived in frequency domain from a normalized sinc(0.5).

The only way, given a precomputed window function, I can think of, is to apply the window function to a signal whose period is 2pi*(k + 0.5)/N and amplitude A, calculate a N FFT and measure the bin k. Bin k should have a magnitude of A * N * f, where f is a factor giving the worst-case scalloping loss, irrespective of N/sampling size, right?


Harris defines the scalloping loss as the ratio of coherent gain for a tone located half a bin from a DFT sample to the coherent gain at a sample (see the paper for the definitions) $$ \mathrm{SL} = \frac{\left\lvert \sum_n w(nT)e^{-j\frac{\pi}{N}n} \right\rvert}{\sum_n w(nT)} = \frac{W\left(\omega_{1/2}\right)}{W(0)} $$ Where $w$ is the window and $W$ is the window DFT

$$ \omega_{1/2} =\frac{\pi}{NT} $$

Guess the value you are after is really $1-SL$

EDIT: I believe the left hand side of the equation is enough to answer @Shaggi's question, but to clarify a bit the notation of the rest, Harris defines DFTs as functions of $\omega_k$, so

\begin{align} W(\omega_k) & = W\left(\frac{2\pi k}{NT}\right) = \\ & = \sum_n w(nT) e^{-j\omega_k nT}\\ & = \sum_n w(nT) e^{-j 2\pi kn/N}\\ W(\omega_{1/2}) & = \sum_n w(nT) e^{-j \pi n/N}\\ W(0) &= \sum_n w(nT) \end{align}

F. J. Harris - On the Use of Windows for Harmonic Analysis with the Discrete Fourier Transform

  • $\begingroup$ Thanks, that was helpful (after the edit, spend some time looking at dirichlet kernels, wondering what I missed)! $\endgroup$ – Shaggi Jan 25 '16 at 18:53
  • $\begingroup$ Sorry, I should definitely avoid answering questions before taking my morning coffee $\endgroup$ – filippo Jan 25 '16 at 19:25
  • $\begingroup$ I'm having a bit of trouble understanding the w1/2 term; 1) why is the sampling rate included? Shouldn't it be normalized in terms of N anyway? 2) No matter how I calculate w1/2 it ends up being a real number, which is kind of weird when indexing a DFT.. $\endgroup$ – Shaggi Jan 25 '16 at 19:59
  • $\begingroup$ Let me check the article again, I quoted the right hand side for completeness, probably ended up confusing you. The left hand side is enough to compute the scalloping loss given a sampled window. It's the sample frequency, not "sampling", amazing how sometimes a little typo can completely change the meaning of a phrase. Fixed it now. $\endgroup$ – filippo Jan 25 '16 at 20:16
  • $\begingroup$ @Shaggi see my last edit, I think I removed the confusing part, actually the RHS of the equation only adds confusion because of the unusual notation, I could/should remove it altogether. $\endgroup$ – filippo Jan 25 '16 at 21:27

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.