Find the fundamental frequency of a vibration applied to a bridge

조회 수: 4 (최근 30일)
Damien Sommer
Damien Sommer 2016년 4월 14일
답변: Star Strider 2016년 4월 14일
Hi everyone ! My question is about how to use the fft function on matlab. Here is my problem : I have a vector d (5285x1) which represent the oscillations, in meter [m], at the mid section of a bridge when someone is jumping on the bridge. We recorded these oscillations every 0.005[s] (that means a frequency of record of 200 [Hz]) during a total of 26.425 [s]. The shape of the graph amplitude vs time is the one obtained when you google "décrément logarithmique" (sorry not sur of that translation). With these datas, I now want to obtain the fundamental frequency of the recorded oscillation. I have been stuck because I don't understand how to modify the examples that I've found on the other forums about how to use the fft() function to my specific problem. Can someone help me to obtain the fundamental frequency of the oscillation ?
Thank you very much for any help :) Damien

답변 (1개)

Star Strider
Star Strider 2016년 4월 14일
The best (in my opinion) documentation for using the Fourier transform in an application such as yours is here: fft. Particularly note the code between the first two plot figures.
If you want to fit a decaying exponential function to your sinusoid, add a decaying exponential term to the sinusoid in Curve fitting to a sinusoidal function.
fit = @(b,x) b(1).*exp(b(2).*x).*(sin(2*pi*x./b(3) + 2*pi/b(4))) + b(5); % Function to fit
Be certain to expand the initial conditions vector to: ‘[yr; -1; per; -1; ym]’.

카테고리

Help CenterFile Exchange에서 Fourier Analysis and Filtering에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by