Nonlinear Dynamics for Biological Systems
EN.580.244
Spring 2025
Section 2: Numerical methods and bifurcations
Instructions
You are encouraged to work in groups of 3-5. In this section, we will consider the logistic growth model
with constant harvesting:
dN N
= rN 1 − −h (1)
dt K
where:
• N (t): population at time t
• r > 0: intrinsic growth rate
• K > 0: carrying capacity
• h ≥ 0: harvesting rate
Part A: Solving the model numerically
Let us numerically solve the model using a built-in ODE solver that implements a Runge-Kutta method.
You may look up how to use the following solvers:
• solve ivp from Python’s [Link] module (method = ’RK45’)
• ode45 in MATLAB
Using either of these solvers, solve the ODE in (1) for t ∈ [0, 20], using parameter values: r = 1, K = 100,
h = 5, and initial condition N (0) = 10. Plot the resulting function N (t).
Part B: Exploring the effects of harvesting
B1. Repeat Part A with the following harvesting rates: h = 0, 2, 4, 6, 8. For each value of h, plot
N (t) on the same graph. As h varies, what happens to the long term value at which the population
stabilizes?
B2. Now plot N (t) when h = 10. What happens? Hint: Adjust the limits on the y axis to visualize
N (t) properly.
B3. Which values of h result in the population stabilizing? Which values lead to extinction? Estimate
the critical value hc where a qualitative change occurs.
Part C: Detecting bifurcations
C1. Find an analytical expression for the fixed points N ∗ as a function of h.
C2. Sketch or plot the bifurcation diagram: N ∗ vs. h.
C3. What type of bifurcation occurs for the logistic model with harvesting?
S OLUTIONS
Part A: Solving the model numerically
Part B: Exploring the effects of harvesting
B1. When h = 0 (no harvesting), the population stabilizes at the carrying capacity K = 100 in the longrun.
As h increases, the long term value at which the population stabilizes is smaller than K.
B2. When h = 10, the population declines to zero.
B3. By numerical experimentation, the critical value seems to be hc ≈ 9. For smaller harvesting rates
h < hc , the population stabilizes. When h > hc , extinction occurs.
Part C: Detecting bifurcations
C1. To find the fixed points of the logistic growth model with constant harvesting, we set the right-hand side
to zero:
N
rN 1 − − h = 0.
K
Rewriting and expanding, we have:
r
rN − N 2 = h.
K
Rearranging:
r 2
N − rN + h = 0.
K
Multiplying through by K to simplify:
rN 2 − rKN + hK = 0.
This is a quadratic equation in N :
aN 2 + bN + c = 0, where a = r, b = −rK, c = hK.
Using the quadratic formula:
√ p
−b ± b2 − 4ac rK ± (rK)2 − 4rhK
N= = .
2a 2r
Factoring, we obtain the analytical expression for the fixed points:
r
4hK
K ± K2 −
r
N∗ =
2
C2.
Bifurcation Diagram: Equilibrium N ∗ vs. Harvesting Rate h
100
N∗
80
Stable
60
40
Unstable
20
h
5 10 15 20 25 30 35 40 45 50
F IGURE 1. Bifurcation diagram of the logistic growth model with harvesting. Parameter
values: r = 1, K = 100, and N (0) = 10.
C3. Saddle-node bifurcation, where the bifurcation occurs at h = rK/4 (red-dotted line in the graph above).