I am working on obtaining the vortex shedding frequencies behind a 2D square using CFD. Time-varying data is being extracted from a specific cell behind the square. I've written a little python script which performs FFT analysis on the signal and spits out the dominant peak frequency.

Because the shedding frequencies are so low (0.1 - 0.2 Hz) I added a zero-padding routine as well as a quadratic interpolator in order to have accuracy to several digits. My background is in fluid mechanics, not signal analysis. So my question is the following:

Would it be more beneficial to simply take my input signal (of say, 200 seconds of data) and repeat it several times (therefore increasing the length of time and subsequently the frequency resolution) or to keep the zero-padding technique?

Would the former method be much more computationally intensive? FYI, the signal is nearly sinusoidal.



1 Answer 1


If you repeat your data, you will have discontinuities where the sequence ends meet. These will cause spurious peaks in your spectrum. You could apply a window to the data to taper it at the edges, but that would be a fair amount of work, and you'd need to work out a window that doesn't color your spectrum.

I would just go with zero padding. It will mess with the amplitude, but that should be fairly easy to deal with (scale by constant factor after FFT.)

  • $\begingroup$ Alright, thanks. I'll stick with the zero-padding. We're only concerned with the frequency not the amplitude so that's not really an issue. $\endgroup$ May 20, 2015 at 23:32
  • $\begingroup$ How come zero-padding is messing with the amplitude? What constant factor do you mean? $\endgroup$
    – jojeck
    Oct 5, 2016 at 10:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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