フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Exponential decay fitting with Discrete Fourier transform (DFT)

2 ビュー (過去 30 日間)
Deo
Deo 2017 年 4 月 17 日
閉鎖済み: Deo 2017 年 5 月 5 日
Hi
My Matlab version is R2016b.
I am trying to make Matlab code for exponential decay fitting with discrete fourier transform.
Details are shown in the article below. (I need only DFT part)
Below is summary for the only required parts,
And below is a part of my code for this. Because of "iwt" part is negative than what matlab fft function uses (please see "More About" -> "Discrete Fourier Transform of Vector" section of this hyperlink for fft) and k should be k-1, I modified that way. I am still confusing about sign for phase or angle(phase). "tau" is reciprocal of beta. (tau = 1/beta).
elseif fit_method == 1
tic;
nfft = 1024;
dt = 10^-8;
F = fft(xy(:,2),nfft);
k = [1:1:nfft]';
wt = -2*pi.*(k-1)/nfft;
phase = angle(F);
tau = dt./log((cot(phase).*sin(wt))+cos(wt));
fit_success = 0;
toc;
However, the result is bad, and I do not understand what is my mistake.
Please help me to solve this issue.
xy is two column double data. First column is time data from 0 to 175 microsecond with interval of 10 nanosecond. Second column data is intensity (amplitude) data having exponential decay shape.
Thanks

回答 (0 件)

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by