Optimization for non-linear ODE with Constraints for parameters

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);

답변 (1개)

Shadaab Siddiqie
Shadaab Siddiqie 2021년 4월 12일

0 개 추천

From my understanding you want to solve non-linear ODE. Here is a workflow to solve it.
  1. Choose an ODE solver (i.e. ode45 or ode15s), then write the update function for the differential equations.
  2. 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.
  3. Use an optimization function like LSQNONLIN or FMINCON to minimize the objective function.
  4. Use this link to address potential issues that go along with a numerical optimization routine.

댓글 수: 3

Could you eloaborate your answer a bit? What is the update function and objective function. and how do I calculate the "cost function"?
I still don't understand the examples and how I could apply them to my problem but thanks anyway

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Get Started with Optimization Toolbox에 대해 자세히 알아보기

제품

릴리스

R2020a

질문:

2021년 4월 9일

댓글:

2021년 4월 17일

Community Treasure Hunt

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

Start Hunting!

Translated by