- Choose an ODE solver (i.e. ode45 or ode15s), then write the update function for the differential equations.
- Write an objective function that takes in the values of the parameters, solves the ODE for those particular values, and then calculates the cost function (such as the difference between the experimental and simulated data) that needs to be minimized.
- Use an optimization function like LSQNONLIN or FMINCON to minimize the objective function.
- Use this link to address potential issues that go along with a numerical optimization routine.
Optimization for non-linear ODE with Constraints for parameters
9 次查看(过去 30 天)
显示 更早的评论
I have a model based on 2 non-linear ODEs solved for the time t to model a predator-prey system. Each ODE contains the solution of both of the other equations. I am trying to find the range of the stable-kept parameters that fits the following conditions:
I have a differential equation for x1,x2 and the parameters
-All parameters must be positive, real numbers
-the solution for the ode of x2 should approach zero (decrease in values).
dxdt = zeros(size(x));
P1=x(1);
C1=x(2);
dxdt(1)=P1*r(1)*(1-(P1/k(1)))-...
C1*((v(1)*(P1^n(1)))/((1+(v(1)*h(1)*(P1^m(1))))))-...
P1*s(1);
xt(1) = dxdt(1);
dxdt(2)=c(1)*C1*((v(1)*(P1^n(1)))/(1+(v(1)*h(1)*(P1^m(1)))))-...
C1*s(2);
xt(2) = dxdt(2);
0 个评论
回答(1 个)
Shadaab Siddiqie
2021-4-12
From my understanding you want to solve non-linear ODE. Here is a workflow to solve it.
3 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Ordinary Differential Equations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!