
[Sponsors] 
FFT to compute Strouhal number under Matlab 

LinkBack  Thread Tools  Search this Thread  Display Modes 
September 22, 2018, 08:40 
FFT to compute Strouhal number under Matlab

#1 
New Member
hraf5
Join Date: Mar 2018
Posts: 8
Rep Power: 8 
Hi every one,
I am working on the numerical simulation of the wake around a 2d cylinder. For now I am trying to calculate the Strouhal number: St = D * f / U. So, I need to do a FFT spectral analysis under Matlab of the lift coefficient Cl to calculate the fundamental frequency f. If anyone can help me with a Matlab code to do this task. Thank you. 

September 23, 2018, 18:59 
FFT and more

#2 
Member
Peter Brady
Join Date: Apr 2014
Location: Sydney, NSW, Australia
Posts: 54
Rep Power: 12 
Hi,
The following example will walk you through. It is from the signal processing toolbox but the fft command should (I think) be in base MATLAB. I have the SP toolbox. https://au.mathworks.com/help/signal...usingfft.html Have taken into account the Nyquist frequency when setting up your transient simulation? I always do a sanity check on my data first to check for start up transients to see if they've faded and if there are any anomolous points. It can also be good to resample if you are using adaptive timesteps so you data is at nonuniform sample frequencies. It can also be good to look at decay rates at the higher frequencies as well as cutoff frequencies relative to the grid scale and turbulence model. There are some fundamental physics at these frequencies that, depending on your turbulence model, are either ignored or attempted to be simulated. Hope that helps, pete 

September 24, 2018, 17:16 

#3 
Senior Member
Lucky
Join Date: Apr 2011
Location: Orlando, FL USA
Posts: 5,729
Rep Power: 66 
If your sampling frequency is fs and x is your lift coefficient. Then the code can be as simple as:
Code:
X=2*fft(x)/length(x); fl=linspace(0,fs,length(X)); plot(fl,abs(X)); You can do things like removing the mean also. 

September 25, 2018, 06:08 

#4  
New Member
hraf5
Join Date: Mar 2018
Posts: 8
Rep Power: 8 
Quote:
Thank you very much LuckyTran. I still have one question: how can I calculate the fundamental frequency? 

September 25, 2018, 06:10 

#5  
New Member
hraf5
Join Date: Mar 2018
Posts: 8
Rep Power: 8 
Quote:


September 25, 2018, 06:18 
Fundamental Frequencies

#6 
Member
Peter Brady
Join Date: Apr 2014
Location: Sydney, NSW, Australia
Posts: 54
Rep Power: 12 
Hi,
Both of these methods will generate some form of power spectral density. See attached for an example. The fundamental frequency, and any harmonics, will stand out as an isolated peak realtive to the turbulence noise within the system. In the example attached we have periodic sheddding off a square cylinder in cross flow. Cheers, pete 

September 25, 2018, 12:12 

#7 
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,831
Rep Power: 73 
Being careful to the use of the windowing in the FFT, you have a timesignal that is not periodic in time


September 28, 2018, 09:41 

#8  
Senior Member
Lucky
Join Date: Apr 2011
Location: Orlando, FL USA
Posts: 5,729
Rep Power: 66 
Quote:
It is mostly an art. You will probably end up with a very messy plot and hopefully you find one or more peaks. Hopefully you have a good guess beforehand what the fundamental frequency is and can correlate it to the peak in the plot. The fft and its plot is more for confirmation rather than a recipe where you bake a fundamental frequency. (un)fortunately that is how real life works. Just look at peter's example above. It takes some experience to say, ahhah that is the peak I want! 

September 28, 2018, 11:11 

#9 
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,831
Rep Power: 73 
Understanding the fundamental frequency is somehow related to the coherence of the associated vortical structure that generate it.
If you have a long timesignal, it could be subdiveded in several regions (windows) and you can perform for each the FFT. Of course the problem is encountered with the "exact" periodicity of the windows. Spectral analysis of nonperiodical signal requires care. However, you can do an ensemble averaging of the FFT and get a smooth spectra where the peak is highlighted better. 

September 20, 2020, 03:14 
Doubt

#10 
Member
Mayank
Join Date: May 2019
Location: India
Posts: 30
Rep Power: 7 
Can you please tell that why you have multipled with 2 in X = 2*fft(x)/length(x)


September 20, 2020, 04:59 

#11  
Senior Member
MA
Join Date: Mar 2020
Posts: 163
Rep Power: 6 
Quote:
https://dsp.stackexchange.com/questi...whenusingfft 

Tags 
fft, lift coefficient, matlab code, spectral analysis, strouhal number 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
decomposePar no field transfert  Jeanp  OpenFOAM PreProcessing  3  June 18, 2022 12:01 
AMI speed performance  danny123  OpenFOAM  21  October 24, 2020 04:13 
ERROR #001100279 has occurred in subroutine ErrAction.  smnaryal  CFX  11  December 20, 2017 16:32 
SigFpe when running ANY application in parallel  Pj.  OpenFOAM Running, Solving & CFD  3  April 23, 2015 14:53 
[blockMesh] > foam fatal error:  lillo763  OpenFOAM Meshing & Mesh Conversion  0  March 5, 2014 10:27 