0

What are the flat-top window functions that provide the narrowest lobe width?

I'm doing FFT analysis and I need the resulting main lobe of a sine wave to be as narrow as possible but avoiding scalloping loss. I ask for flat-top functions because these are best for scalloping reduction. I don't mind sidelobes, even the rectangular window is good enough for me if it wasn't for its massive scalloping...

Right now I'm using the SFT3M window from this paper:
http://www.rssd.esa.int/SP/LISAPATHFINDER/docs/Data_Analysis/GH_FFT.pdf


PS. I asked this question there too:
https://math.stackexchange.com/questions/524617/very-narrow-fft-window-functions
I probably made a mistake, I have the feeling that I haven't posted in the correct website.

Community
  • 1
  • 1
user2464424
  • 1,536
  • 1
  • 14
  • 28
  • It's probably more suited for Math SE, as it doesn't have much to do with programming. But aside from that, isn't the lobe width "configurable"? I.e. if you pass `2*x` instead of `x` to a function, you are basically compressing it, right? **edit:** Of course, changing the width of the lobe changes the FFT also. – vgru Oct 13 '13 at 19:35
  • @Groo I meant the lobe in the frequency domain, given a sine wave in the time domain. I need a _time-domain_ window function that results in a narrow and flat-topped peak in the _frequency_ domain. – user2464424 Oct 13 '13 at 19:41
  • Ok, got it. I presume you already checked that window comparison chart in the Wikipedia article? – vgru Oct 13 '13 at 20:04
  • Yes I did, but In the wikipedia page there is a serious lack of flat-top windows. Windows of that type are better explained in the pdf I linked. I am thinking about designing myself the window I am looking for, but I need more insight on fft first so I better ask first... – user2464424 Oct 13 '13 at 20:17
  • This question appears to be off-topic here, and more suited for math.stackexchange.com. It has already been asked (and answered) there, in [this post](http://math.stackexchange.com/questions/524617/very-narrow-fft-window-functions). – nbrooks Nov 22 '14 at 23:22

1 Answers1

1

Consider the Kaiser-Bessel series of window functions, and the Blackman-Harris series. They provide arguably the best ability to resolve closely spaced spectral components, especially where one or more spectral components dominate all the other spectral components by a ratio of 40 dB or less.

This image shows a magnitude 1.0 spectral component at 10.5 Hz and a magnitude 0.01 spectral component at 16 Hz. The 16 Hz tone is attenuated 40 dB relative to the dominant tone, and is very near to the dominant in frequency. The composite sinusoid signal was windowed with a Kaiser-Bessel a=3.5 to show the Kaiser-Bessel window's ability to resolve weak signals in the presence of strong nearby signals.

FFT spectrum from sooeet.com You can try different window functions with various signals here:

Fourier transform calculator - Sooeet.com

Babson
  • 909
  • 1
  • 7
  • 7
  • Those windows are good for suppressing the side-lobes and are relatively narrow. But they are not good for avoiding scalloping loss. To avoid scalloping loss, you need a flat-top window. [Wikipedia](https://en.wikipedia.org/wiki/Window_function#Flat_top_window) has an example of a flat-top window. Narrower flat-top windows could be created, though they wouldn't be as flat. – Eric Backus Jul 12 '20 at 03:00