How to use LSQNONLIN or LSQCURVEFIT when the function has a derivative form ?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I would like to use the least squares method to determine specific parameters. Knowing the time step, dt, time,t(i), and displacement, u(i), for every step i, the equation is the following:
F0(i)=k1*u(i)^k2
F1(i)=(F1(i-1)+k3*u(i)-k3*u(i-1))*(k4/(k4+k3*dt))
Y(i)=F0(i)+F1(i)=(k1*u(i)^k2)+(F1(i-1)+k3*u(i)-k3*u(i-1))*(k4/(k4+k3*dt))
or if it is more convenient for anyone (assuming that dF1(i)/dt=(F1(i)-F1(i-1))/dt) :
Y(i)=(k1*u(i)^k2)+(k4*u(i)-(k4/k3)*dF1(i)/dt)
Y_exp is the expected output, and the parameters I want to determine are the k1,k2,k3,k4. The thing that worries me the most, is the dependence of time step i on i-1 time step.
ANY IDEAS?
0 commentaires
Réponse acceptée
Star Strider
le 25 Jan 2016
It’s difficult for me to follow what you’re doing. If you want to fit a (perhaps kinetic) differential equation to data, you can use the techniques in Monod kinetics and curve fitting.
1 commentaire
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Nonlinear Optimization dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!