Solving a System of ODE for Steady State

Click For Summary
SUMMARY

The discussion centers on solving a system of ordinary differential equations (ODEs) to find the steady states of variables y1, y2, and y3, given y0 = 2.5 * 10^5 and specific parameters. The parameters include d0 = 0.003, d1 = 0.008, d2 = 0.05, d3 = 1, ry = 0.008, ay = 1.6/100, by = 10/750, cy = 100, and u = 4 * 10^−8. The user attempts to compute these values using R's ode23 function but encounters issues, as the conditions for a steady state cannot be satisfied with the provided parameters. The discussion highlights the impossibility of achieving a steady state for y0 under the given conditions, referencing a related paper for context.

PREREQUISITES
  • Understanding of ordinary differential equations (ODEs)
  • Familiarity with R programming and the ode23 function
  • Knowledge of steady-state analysis in dynamical systems
  • Basic algebraic manipulation skills for solving equations
NEXT STEPS
  • Study the principles of steady-state analysis in ODE systems
  • Learn how to implement and troubleshoot ODE solvers in R, specifically using the deSolve package
  • Examine the referenced paper for insights on deriving steady states from ODEs
  • Explore numerical methods for solving ODEs and their implications on steady-state solutions
USEFUL FOR

Mathematicians, researchers in applied mathematics, and anyone involved in modeling dynamical systems using ODEs, particularly in biological or ecological contexts.

Bewilder
Messages
2
Reaction score
0
I am trying to find the steady states in the ODE system. Assuming y0 = 2.5 * 10^5, I want to calculate y1, y2, y3 at the steady state. I do not understand how this would be possible, because only y0 is given and the following:

d0 = 0.003,
d1 = 0.008,
d2 = 0.05,
d3 = 1,
ry = 0.008,
ay = 1.6/100,
by = 10/750,
cy = 100,
u = 4 * 10^−8,
y0 = 2.5 * 10^5.

This is my ODE system:
EY0x6.png


My task says: Find algebraically the steady state for the equations. Set y0 = 2.5 * 10^5 and calculate y1, y2, y3 based on the derived equations at the steady state.

Is it even possible to find the exact value of y1, y2, and y3 with the given information?

I have tried it in R, but it's impossible to get an answer.. How can I do this manually to get the solution for y1, y2, y3 at the steady state?

Code:
model <- function(t,x,params){
  y0 <- x[1]
  y1 <- x[2]
  y2 <- x[3]
  y3 <- x[4]
  ry <- params[1]
  mu <- params[2]
  d0 <- params[3]
  ay <- params[4]
  d1 <- params[5]
  by <- params[6]
  d2 <- params[7]
  cy <- params[8]
  d3 <- params[9]  m <- rep(0,4)
  m[1] = ((ry*(1-mu)) - d0) * y0
  m[2] = (ay * y0) - (d1 * y1)
  m[3] = (by * y1) - (d2 * y2)
  m[4] = (cy * y2) - (d3 * y3)
 
  return(m)

}

x <- ode23(model, y0 = c(y0=250000, y1=y_1, y2=y_2, y3=y_3), t0=0,tf=400, params = c(0.008,4*10^-8,0.003,1.6/100,0.008,10/750,0.05,100,1))
 
Physics news on Phys.org
Bewilder said:
I am trying to find the steady states in the ODE system. Assuming y0 = 2.5 * 10^5, I want to calculate y1, y2, y3 at the steady state. I do not understand how this would be possible, because only y0 is given and the following:

d0 = 0.003,
d1 = 0.008,
d2 = 0.05,
d3 = 1,
ry = 0.008,
ay = 1.6/100,
by = 10/750,
cy = 100,
u = 4 * 10^−8,
y0 = 2.5 * 10^5.

This is my ODE system:
EY0x6.png


My task says: Find algebraically the steady state for the equations. Set y0 = 2.5 * 10^5 and calculate y1, y2, y3 based on the derived equations at the steady state.

Is it even possible to find the exact value of y1, y2, and y3 with the given information?

I have tried it in R, but it's impossible to get an answer.. How can I do this manually to get the solution for y1, y2, y3 at the steady state?

Code:
model <- function(t,x,params){
  y0 <- x[1]
  y1 <- x[2]
  y2 <- x[3]
  y3 <- x[4]
  ry <- params[1]
  mu <- params[2]
  d0 <- params[3]
  ay <- params[4]
  d1 <- params[5]
  by <- params[6]
  d2 <- params[7]
  cy <- params[8]
  d3 <- params[9]  m <- rep(0,4)
  m[1] = ((ry*(1-mu)) - d0) * y0
  m[2] = (ay * y0) - (d1 * y1)
  m[3] = (by * y1) - (d2 * y2)
  m[4] = (cy * y2) - (d3 * y3)

  return(m)

}

x <- ode23(model, y0 = c(y0=250000, y1=y_1, y2=y_2, y3=y_3), t0=0,tf=400, params = c(0.008,4*10^-8,0.003,1.6/100,0.008,10/750,0.05,100,1))

If by steady-state you mean that ##\dot{y}_i = 0 ## for ##i = 0, \ldots ,3## then your sought-for conditions are impossible. The only way to have ##y_0 \neq 0## but ##\dot{y}_0 = 0## would be to have the coefficient ##r_y(1-u) - d_0 =0##, and that is not true for the given data.
 
Ray Vickson said:
If by steady-state you mean that ##\dot{y}_i = 0 ## for ##i = 0, \ldots ,3## then your sought-for conditions are impossible. The only way to have ##y_0 \neq 0## but ##\dot{y}_0 = 0## would be to have the coefficient ##r_y(1-u) - d_0 =0##, and that is not true for the given data.

That's what has confused me. I am setting the equations equal to zero but it does not work, but it should since this system comes from a paper and they have solved it there.

http://ped.fas.harvard.edu/files/ped/files/nature05b_0.pdf?m=1425933222

This is the paper and the equations are in page 6 of the PDF. When the steady states are found then the simulation is run for 400 days and the results are plotted in page 3, Figure 4.a. But when I plot my simulation for 400 days (after setting equations equal to zero to find the steady state) what I get as plots is completely different from those shown in the paper..
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 6 ·
Replies
6
Views
8K
Replies
3
Views
2K
Replies
3
Views
1K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 7 ·
Replies
7
Views
2K
Replies
5
Views
16K
  • · Replies 15 ·
Replies
15
Views
4K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
5K