Least Square Minimization (Levenberg-Marquant method) of damped oscillation curves

19 visualizaciones (últimos 30 días)
Hi,
My goal is to fit my experimental data (attached) with the following equation with Levenberg Marquant method :
A*exp(-c*t)*sin(2*pi*f*t+phi), where A is the amplitude, t is time, c is the damping coefficient and f the frequency and phi the phase coefficient.
As my skills are weak in least square minimzation in Matlab, thanks in advance for your help,
Louise.

Respuesta aceptada

Matt J
Matt J el 2 de Dic. de 2019
You can use lsqcurvefit with the 'levenberg-marquardt' Algorithm setting
  4 comentarios
Matt J
Matt J el 2 de Dic. de 2019
Editada: Matt J el 2 de Dic. de 2019
This works a bit better. I don't know if I trust the model enough to expect a better fit.
fun = @(x,t) x(1)*exp(-x(2)*t).*sin(2*pi*x(3)*t+x(4))+x(5);
x0 = [max(S),1,0.1,1,mean(S)];
options = optimoptions('lsqcurvefit','Algorithm','levenberg-marquardt');
lb = [0,0,0,-1,-inf];
ub = [inf,inf,inf,1,+inf];
x = lsqcurvefit(fun,x0,t,S,lb,ub,options)
plot(t,S,'ko',t,fun(x,t),'b-')
legend('Data','Fitted exponential')
title('Data and Fitted Curve')

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Offline Frequency Response Estimation en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by