How to use LSQNONLIN or LSQCURVEFIT when the function has a derivative form ?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Christos
am 25 Jan. 2016
Bearbeitet: Christos
am 27 Jan. 2016
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 Kommentare
Akzeptierte Antwort
Star Strider
am 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 Kommentar
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Nonlinear Optimization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!