2013-04-30 57 views
0

我有一個時間序列,它是阻尼波的線性組合。數據是真實的。阻尼波的計算fft

Y(T)= SUM_w EXP( - γt)的SIN(ω-t)的

沒有解析形式,但,這是一個接近的猜測。我想對這些數據進行傅立葉分析(FFT)並獲得實際的頻率和阻尼率。

我正在使用matlab,但任何工具都可以很好 謝謝!

回答

0

您的問題將更適合http://math.stackexchange.com,其中LaTeX渲染可用於公式。相反,你必須使用例如這個書籤正確顯示:

javascript:(function(){function%20a(a){var%20b=a.createElement('script'),c;b.src='https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML.js',b.type='text/javascript',c='MathJax.Hub.Config({tex2jax:{inlineMath:[[\'$\',\'$\']],displayMath:[[\'\\\\[\',\'\\\\]\']],processEscapes:true}});MathJax.Hub.Startup.onload();',window.opera?b.innerHTML=c:b.text=c,a.getElementsByTagName('head')[0].appendChild(b)}function%20b(b){b.MathJax===undefined?a(b.document):b.MathJax.Hub.Queue(new%20b.Array('Typeset',b.MathJax.Hub))}var%20c=document.getElementsByTagName('iframe'),d,e;b(window);for(d=0;d<c.length;d++)e=c[d].contentWindow||c[d].contentDocument,e.document||(e=e.parentNode),b(e)})() 

首先,我認爲你的函數是更精確的那種
$ \和\ limits_k E 1的{ - \ gamma_k T】\罪(\ omega_k T)$對於$ t> 0 $和$ 0 $爲$ t < 0 $(否則該函數將傾向於$ t \至\ infty $的無窮大)。由於阻尼函數不是週期性的,因此不能使用傅里葉分析,但必須使用Fourier transform,這會產生一個振幅,而不是離散頻率,而是產生連續的頻率。使用複數表達式$ \ sin(x)= \ frac {e^{ix} -e^{ - ix}} {2i} $,總和中的每一項可以單獨進行傅里葉變換,產生

$ \ frac1 {2 \ pi} \ int_0^\ infty e^{ - \ gamma_k t} \ sin(\ omega_k t)e^{ - i \ omega t} \,dt = \ frac {\ omega_k} {2 \ pi [ (\ gamma^2 \ omega^2 + \ omega_k^2)+ 2i(\ gamma + i \ omega)^ 2 + \ omega_k^2}} = \ frac {\ omega_k} {2 \ pi} \ frac { \ gamma \ omega \ omega_k} {[\ gamma^2- \ omega^2 + \ omega_k^2]^2 + 4 \ gamma^2 \ omega^2} $

既然你說阻尼正弦只是一個猜測,你必須以某種方式離散這個無限積分,儘管由於在某個足夠大的時間阻尼截止值應該是有序的。 如果阻尼$ \ gamma_k $實際上對於所有加數都是相同的,那麼您的生活變得更加容易:將數據乘以$ e^{+ \ gamma t} $以獲得您現在可以真正進行FFT的週期性信號。

0

首先數字化的功能:

t=0:dt:T; % define sampling interval dt and duration T according to your needs 
Y=sum(exp(-gamma*t).*sin(omega*t)); 

然後做FFT和情節:

Y_f=fft(Y); 
plot(abs(Y_f));