Mathematical Biology
Mathematical Biology
2021
These lecture notes are based on a earlier versions by M.A.J. Chaplain, C. Venkataraman and T.
Lorenzi
Contents
4 Biochemical kinetics 37
4.1 Law of mass action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2 Brusselator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3 Enzyme reaction (Michaelis-Menten) . . . . . . . . . . . . . . . . . . . . . . 43
4.3.1 Equilibrium approximation . . . . . . . . . . . . . . . . . . . . . . . . 44
4.3.2 Quasi-Steady-State approximation . . . . . . . . . . . . . . . . . . . . 44
4.3.3 Comparison of the two approaches . . . . . . . . . . . . . . . . . . . . 45
4.3.4 Fast and slow timescales for the quasi-steady-state approximation . . . 46
A Background theory 80
Bibliography 82
Chapter 1
Ordinary differential equations (ODEs) describe how the rate of change of a variable depends
on its current state, i.e., a (1st order) ODE takes the form
dN (t)
= f (N (t))
| dt
{z } | {z }
function of N at time t
rate of change of N at time t
1.0.1 Example (Malthusian equation). The Malthusian equation is a single species model of the
form
dN (t)
= N (t), (1.0.1)
dt
where the represents the net per capita growth rate. Equation (1.0.1) is a linear 1st order ODE.
Given an initial population size N0 > 0, (N (0) = N0 ), then the solution of (1.0.1) is given by
N (t) = N0 e t .
Equation (1.0.1) is called the Malthusian equation in continuous time and the population whose
size is given by N is said to exhibit Malthusian growth.
Figure 1.1 shows the growth of an initial population of size N0 under the Malthusian ODE
(1.0.1). For > 0 we observe exponential growth of the population, this may be a reasonable
model for growth of a population with unlimited resources, such as bacteria say in a nutrient
rich environment with lots of space. In scenarios where there is a finite amount of resources for
the population to exploit, this model that allows unbounded exponential growth is unrealistic.
In such a setting it is worthwhile considering modifying the model to account for “saturation”
or intra-species competition. This can be achieved by adding density dependent effects, i.e.,
considering an ODE of the form
dN (t)
= f (N (t)) = N (t)F (N (t)),
dt
where f () is known as the net growth rate and F () is known as the net per capita growth rate.
When density dependent effects are included the net per capita growth rate F is not constant,
but instead depends on the size of the population N .
1
N (t)
N (t) N
N0 N0 N0
t t t
(time)
>0 =0 <0
Figure 1.1: Evolution of the population size under the Malthusian ODE (1.0.1) for different net
growth rates.
1.0.2 Example (Logistic equation). Consider the logistic equation an ODE of the form
✓ ◆
dN (t) N (t)
= N (t)F (N (t)) = N (t) 1 with , K > 0, (1.0.2)
dt K
the parameters and K are the intrinsic growth rate and the carrying capacity, respectively.
Here the per capita growth rate F (N ) defined by the equality in (1.0.2) is a decreasing function
of the population size. For population sizes larger than the carrying capacity the growth rate is
negative whilst for population sizes smaller than the carrying capacity the growth rate is positive.
A population whose growth satisfies (1.0.2) is said to exhibit logistic growth.
To solve (1.0.2) we employ the technique of separation of variables as follows. Let N (t)
satisfy the logistic equation and assume N (t) > 0, N (t) 6= K for all t (this is true as long as
the initial population size satisfies these assumptions), then from (1.0.2) we have
Z Z
dN (t)
= dt, (1.0.3)
N (t) 1 N (t)/K
Note the left hand side of (1.0.3) may be written as, (for brevity we omit the t dependence of N
in the remainder),
Z Z ✓ ◆
dN 1 N/K N/K
= + dN
N 1 N/K N (1 N/K) N (1 N/K)
Z ✓ ◆
1 1
= + dN.
N K(1 N/K)
2
for some c 2 R, which gives
N
= Ae t ,
1 N/K
for some A 2 R+ , the general solution of (1.0.2) is therefore given by
AKe t
N= .
K + Ae t
At t = 0,
AK N0 K
N (0) = N0 = =) A= .
K +A K N0
Thus the solution of (1.0.2) with initial population size N0 is given by
KN0 e t
N (t) = . (1.0.4)
K N0 + N0 e t
From (1.0.4) we see that as t ! 1, the population size N (t) ! K, i.e., the population size
saturates at the level K.
N (t)
N0
N0
K/2
N0
t
Figure 1.2: Evolution of the population size under the Logistic ODE (1.0.2) for different initial
population sizes N0 .
Note that from (1.0.2) we see that if 0 < N0 < K (which implies N (t) < K) then dN dt > 0
so the population grows monotonically asymptotically approaching the carrying capacity K. Al-
ternatively if N0 > K then dN dt < 0 so the population decreases monotonically, asymptotically
approaching the carrying capacity K. In the case of 0 < N0 < K we identify two qualitatively
different cases, if N0 < K/2 the solution curve has a sigmoid shape, i.e., slow growth initially,
rapid growth in a middle period followed by slow growth as the population size approaches the
carrying capacity level K, on the other hand if N0 > K/2, the growth simply slows down as the
population size approaches the carrying capacity level K. Figure 1.2 illustrates typical solution
profiles for different steady states N0 .
3
1.1 Steady states and local stability
In the previously considered logistic model (1.0.2), there were two steady states N = 0 and N =
K. Our analysis of Example 1.0.2 suggests that for any initial nonzero (positive) population size
the population converges asymptotically to the carrying capacity K. To deduce this we solved
the ODE analytically, however we now show that we do not need to solve the ODE to investigate
the stability of its steady states.
1.1.1 Definition (Steady states for ODE models). Consider the ODE
dN (t)
= f (N (t)) (1.1.1)
dt
where N : [0, 1) ! R and f : R ! R.
A steady state (or equilibrium fixed point) for the ODE model (1.1.1) is a constant N⇤ such
that
f (N⇤ ) = 0.
1.1.2 Definition (Stability of steady states for ODE models). A steady state N⇤ for an ODE
model of the form (1.1.1) is called
• Stable: if for all " > 0 there exists a > 0 such that |N0 N⇤ | < implies N (t) N⇤ <
" for all t.
We will investigate the stability of steady states for ODEs via linear stability analysis.
d⌘(t) ⇣ ⌘
= f (N⇤ ) + f 0 (N⇤ )⌘(t) + O ⌘ 2 ,
dt
4
where we have assumed sufficient differentiability of f . As N⇤ is a steady state of the ODE,
f (N⇤ ) = 0, hence neglecting the higher order terms, we have
d⌘(t) 0 (N
⇡ f 0 (N⇤ )⌘(t) =) ⌘(t) = kef ⇤ )t
,
dt
where k 2 R. Thus the perturbation ⌘(t) grows exponentially if f 0 (N⇤ ) > 0 and decays expo-
nentially if f 0 (N⇤ ) < 0. If f 0 (N⇤ ) = 0 we have to consider the higher order terms (O(⌘ 2 ) and
higher).
1.1.3 Definition (Local stability of steady states for ODEs). Consider an ODE of the form
(1.1.2) with steady state N⇤ , we say that the steady state N⇤ is
Geometric method
dN
dt = f (N )
N
N⇤,1 N⇤,2 N⇤,3 N⇤,4 N⇤,5
Figure 1.3: Geometric approach to stability of the steady states corresponding to solutions of
the equation f (N ) = 0. The steady states N⇤,2,4 are stable as f 0 (N⇤ ) < 0 and the steady states
N⇤,1,3,5 are unstable as f 0 (N⇤ ) > 0.
If f is sufficiently simple, or if we don’t know the exact form of f but we just know its
general shape or qualitative features, then we may deduce stability of the steady states of the
ODE system (solutions of f (N ) = 0) simply by sketching f .
Figure 1.3 illustrates the geometric approach to investigating stability of steady states. The
steady states correspond to the zeros of f . From the sketch we may infer the following
1. Stability of the steady states, (stable if f 0 (N⇤ ) < 0 and unstable if f 0 (N⇤ ) > 0).
dN
2. For a given N if f (N ) > 0 then the population size is increasing as dt > 0, similarly if
f (N ) < 0 then the population size is decreasing as dN
dt < 0.
5
3. The arrows on the x axis indicate the stability of the steady states, i.e., if we perturb the
population from a steady state value then the solution trajectories follow the direction of
the arrows converging to a stable steady state.
1.1.4 Example (Logistic equation revisited). Consider the logistic ODE (1.0.2) with growth rate
and carrying capacity K. We recall that the ODE has two steady states N⇤ = 0 and N⇤ = K.
To check the stability of the steady states we compute
✓ ◆
0 2N
f (N ) = 1 .
K
Hence, f 0 (0) = > 0 so zero is an unstable steady state. Whilst f 0 (K) = < 0 so the steady
state N⇤ = K is asymptotically stable. Alternatively adopting the geometric approach, in Figure
dN
dt = f (N )
N
N⇤ = 0 N⇤ = K
1.4 we sketch a graph of f (N ) for the logistic ODE. We observe the steady state N⇤ = K is
asymptotically stable whilst the steady state N⇤ = 0 is unstable.
1.2 Nondimensionalisation
Dimension is a unit of a physical quantity, for example the dimensions of a variable t represent-
ing time may be seconds, minutes or hours. The dimension of the carrying capacity K in the
logistic ODE (1.0.2) is number of individuals (i.e., it has the same dimensions as the population
size).
In general, before analysing a model it is crucial to formulate it in nondimensional (or di-
mensionless) terms. The main advantage of such an approach is that the subsequent analysis of
the model the units used are no longer important and rather adjectives such as “large”, “small”,
“slow” or “fast” all have a definite relative meaning.
A number is dimensionless if it has no physical units attached to it, i.e., its numerical value
is independent of the system of units used. For example as the carrying capacity K and the pop-
ulation size N both have dimensions number of individuals, the quotient K/N is dimensionless.
6
Nondimensionalisation is the process of changing variables (by scaling) in a model such that
the new variables are dimensionless. Typically it leads to a simpler model with fewer parameters.
For further details on nondimensionalisation and applications of the approach see Segel [1972].
To nondimensionalise a model we proceed along the following steps
1. List all variables, parameters and their dimensions.
2. Introduce characteristic scales for each of the dimensions involved (time, concentration,
etc.) and scale the dimensional variables by these characteristic scales in order to obtain
nondimensional scaled variables. Note in general there is not a single unique way to do
this.
3. Choose the characteristic scale for each of the variables in order to simplify the equation
(typically the scales are chosen such that coefficient of as many terms as possible is one).
4. Rewrite the model in terms of the new nondimensional variables and parameters.
The procedure is best illustrated through worked examples.
1.2.1 Example (Nondimensionalisation of the Logistic model). We once again consider the
logistic ODE (1.0.2).
Table 1.1: Dimensions of the parameters and variables in the logistic ODE.
The model involves four dimensional parameters or variables as shown in Table 1.1. We now
follow the previously outlined steps in order to obtain a nondimensional model. Introducing the
N
characteristic scales [N ] and [t] for the population size and time respectively, we set n = [N ]
and ⌧ = [t]t thus by the chain rule and using the ODE (1.0.2) we have
✓ ◆ ✓ ◆
[N ] dn dN N [N ]n
= = N 1 = [N ]n 1 .
[t] d⌧ dt K K
Cancelling a factor of [N ] from both sides gives
✓ ◆
dn [N ]n
= [t]n 1 .
d⌧ K
1
In order to set as many coefficients as possible to one, we select [t] = and [N ] = K, which
yields the dimensionless logistic equation
dn
= n(1 n).
d⌧
7
In contrast with the original dimensional ODE, the nondimensional form of the logistic equation
contains no parameters and its analysis is therefore (a little) simpler than the dimensional case.
1.2.2 Example (Insect outbreak model (Spruce Budworm)). The spruce budworm is the most
destructive and widely distributed forest defoliator in the North America. Massive budworm
outbreaks occur periodically destroying hundreds of thousands of hectares of valuable fir and
spruce, See http://www.na.fs.fed.us/spfo/pubs/fidls/westbw/fidl-wbw.
htm for more details on the biology.
To develop and investigate management strategies for dealing with the outbreaks, a series of
mathematical models have been produced and studied, starting from the work of Ludwig et al.
[1978].
Let N (t) denote the size of the spruce budworm population, the model considered by Lud-
wig et al. [1978] for the population dynamics is given by the ODE
✓ ◆ ✓ ◆
dN (t) N (t)
= B N (t) 1 P N (t) , (1.2.1)
dt KB
| {z } | {z }
logistic growth predation
where
BN 2
P (N ) = .
A2 + N 2
A goal of their model was to provide a mathematical (qualitative) explanation for budworm pop-
ulation outbreaks where numbers rapidly rise from low to high levels, causing sudden defoliation
of the forest, followed by a sudden collapse in the budworm population back to low levels.
The first term on the right hand side of (1.2.1) models logistic growth of the population of
budworms and the second term models the effects of predation of the population. The predation
effect is assumed to saturate for large population sizes as there is only a finite number of predat-
ors which may feed on the budworms, there is also assumed to be a decreasing effectiveness of
predators as the population size of budworms gets small. A sketch of the predation term P (N )
is shown in Figure 1.5
The interpretation of the parameter values is as follows:
• KB is the carrying capacity which is governed by the density of foliage available in the
trees.
• A is a parameter which governs the level at which the predation response saturates.
We next nondimensionalise the model. The dimensional model variables and parameters are
given in Table 1.2
8
P (N )
B/2
N
A
Figure 1.5: Graph of the predation term in the budworm model (1.2.1).
Table 1.2: Dimensions of the parameters and variables in the logistic ODE.
Setting n = N/[N ] and ⌧ = t/[t] where the characteristic scales [N ] and [t] are to be
determined, the chain rule and the equation (1.2.1) yield,
✓ ◆ ✓ ◆
[N ]dn dN N BN 2 [N ]n B[N ]2 n2
= = BN 1 = B [N ]n 1 ,
[t]d⌧ dt KB A2 + N 2 KB A2 + [N ]2 n2
thus ✓ ◆
dn [N ]n B[t][N ]n2
= B [t]n 1 .
d⌧ KB A2 + [N ]2 n2
We set [N ] = A (recall A and N have units # hence this choice is admissible as n/[N ] is a
nondimensional variable) and [t] = A/B (recall B has units #T 1 hence A/B has units T and
thus T /[t] is a nondimensional variable) which yields
✓ ◆
dn BA An BAAn2
= n 1
d⌧ B KB BA2 1 + n2
✓ ◆
BA An n2
= n 1 .
B KB 1 + n2
9
BA KB
Defining the nondimensional variables := B > 0 and q = A > 0 we arrive at the
nondimensional budworm model
✓ ◆
dn n n2
= n 1 . (1.2.2)
d⌧ q 1 + n2
Note we have reduced the number of parameters in the model from four in the original equation
(1.2.1) to two in the dimensionless equation (1.2.2). The steady states of the nondimensional
budworm model (1.2.2) correspond to
✓ ◆
n⇤ n2⇤
f (n⇤ ) = 0 () n⇤ 1 =0 (1.2.3)
q 1 + n2⇤
✓ ◆
n⇤ n⇤
() n⇤ = 0 or 1 = 0. (1.2.4)
q 1 + n2⇤
⇣ ⌘
We define h(n) := 1 nq and g(n) := 1+n n
2 . To illsutrate the nonzero steady states we
y = g(n) y = g(n)
n⇤,1 n⇤,1
n⇤,2
y = h(n) y = h(n)
n n
q q
y = h(n)
n⇤,3
y = g(n)
n
q
Figure 1.6: Plots of the functions h and g used to determine the nontrivial steady states in the
budworm model (1.2.2) for increasing values of the nondimensional growth rate reading from
top to bottom.
plot h and g versus n in Figure 1.6 for increasing values of . As increases the number of
10
(nontrivial) steady states (points where h(n) = g(n)) increases from one to two to three, note
that if we increase further we have two steady states once again followed by only a single
steady state.
In order to investigate the stability of the steady states we compute the derivative of the
function f (c.f., (1.2.2))
2n 2n
f 0 (n) = . (1.2.5)
q (1 + n2 )2
Hence as f 0 (0) = > 0, the steady state n⇤ = 0 is unstable.
To investigate the stability of the nonzero steady states, we recall that from (1.2.2), with h
and g as previously defined we have
hence dn dn
dt = f (n) < 0 if g(n) > h(n) and dt = f (n) > 0 if g(n) < h(n). Adopting a
geometric approach we sketch f (N ) for the five qualitatively different cases obtained on varying
shown in Figure 1.6. The sketch of f is shown in Figure 1.7 and we observe the changes in
stability of the steady states as the parameter is increased.
We conclude this example with a bifurcation analysis in which we seek to understand how
the qualitative properties of solutions to model (1.2.2) depend on the parameters and q. To
do this we plot a bifurcation diagram in parameter space, i.e., (the q plane). Our previous
analysis indicates there is a transition from one nonzero steady state to two and then three as the
parameter is increased holding q fixed. In fact there is a curve in the parameter space along
which the model transitions from one (nonzero) steady state to three (nonzero) steady states and
along this curve the model has two (nonzero) steady states. To find this curve we note that the
two steady state case corresponds to the case when the previously defined functions h(n) and
g(n) take equal values and are tangent some n > 0. Hence we may find the curve by finding
the values of q, such that for some n > 0, h(n) = g(n) and h0 (n) = g 0 (n). Equality of the
functions yields ✓ ◆
n n
1 = , (1.2.6)
q 1 + n2
and equality of the derivatives implies
1 n2
= 2. (1.2.7)
q 1 + n2
From (1.2.7) we have that q = (n2 1)/(1 + n2 )2 , applying this in (1.2.6) gives
n
=n
1 + n2
q
n2 1 n
=n 2 +
1 + n2 1 + n2
2n3
= 2,
1 + n2
11
dn dn
dt = f (n) dt = f (n)
N⇤,1 N⇤,2
n n
N⇤,0 N⇤,1 N⇤,0
dn
= f (n) dn
dt
dt = f (n)
N⇤,3
n N⇤,3
N⇤,0 N⇤,1 N⇤,2 n
N⇤,0 N⇤,2
dn
dt = f (n)
N⇤,3
n
N⇤,0
Figure 1.7: Geometric approach to stability of the steady states of the budworm model (1.2.2)
for the qualitatively different cases observed for increasing in Figure 1.6. The red steady states
are stable as f 0 (N⇤ ) < 0 and the green steady states are unstable as f 0 (N⇤ ) > 0. Note the grey
steady states corresponds to f 0 = 0 and hence we are unable to ascertain thier stability without
investigating higher order terms.
12
q
A B C D
Figure 1.8: Two parameter bifurcation diagram for the budworm model (1.2.2). In the white
region there is only one nonzero steady state which is stable, in the red region there are three
nonzero steady states two of which are stable.
and hence as q = (1 + n2 )2 /(n2 1) we have q = 2n3 /(n2 1). We plot the two-parameter
bifurcation diagram for the budworm model (1.2.2) in Figure 1.8. The red region in which there
are three nontrivial steady states two of which are stable is separated from the white region in
which there is a single nonzero steady state that is stable by the blue curve corresponding to two
nonzero steady states.
The bifurcation diagram we plotted in Figure 1.8 allows us to understand the population
dynamics in a budworm outbreak using the curve plotted in Figure 1.9. A mathematical explan-
ation for the outbreak based on the model under consideration is as follows
2. Gradually the forest recovers and this leads to the production of more foliage which results
in an increase in the parameter (or equivalently q) in the model. (Note this recovery of
the forest is assumed to happen on a slower timescale than the dynamics of the budworm
population hence the variables and q are constants on the timescale of the population
dynamics.)
3. As (or q) increases the small nonzero steady state eventually loses stability at the point
C in Figure1.8 and the budworm population rapidly rises to the large nonzero steady state
13
n D
Figure 1.9: Hysteresis plot illustrating the onset of an outbreak in budworm density when the
small nonzero steady state loses stability as increases at the point C, followed by sudden
decline as the large nonzero steady state loses stability as decreases at the point B.
which is the only stable steady state of the model for these parameters (we are to the right
of the red region in Figure 1.8).
4. The increased budworm numbers lead to defoliation of the forest reducing the parameter
(or equivalently q). However the large nonzero steady state remains stable until we reach
the point B in Figure 1.8 at which the budworm population suddenly falls to the small
nonzero steady state which is now the only stable steady state of the model.
This phenomena is an example of hysteresis: the dependence of the system on its parameters
is not reversible. In this example the reason we observe hysteresis is that in the region where
both the small and the large nonzero steady state are stable (the red region in Figure 1.8), the
behaviour of the system is sensitive to whether the population size is near the lower or the higher
equilibrium value.
14
Chapter 2
15
v dv du
dt =0 dt =0
The sketch of the nullclines is shown in Figure 2.1. Points where the u-nullcline and v-nullcline
intersect satisfy du dv
dt = dt = 0 and are thus steady states of the ODE system.
We can also include information on solution trajectories away from the nullclines as
(
du > 0 if u > v
=u v
dt < 0 if u < v
(
dv > 0 if u > 0
=u
dt < 0 if u < 0
2.1.3 Example (Nonlinear system).
(
du
dt = u(1 u) = f (u, v)
dv
dt = v = g(u, v)
16
Steady states: (u⇤ , v⇤ )T = (0, 0)T and (1, 0)T .
(
du > 0 if 0 < u < 1
= u(1 u)
dt < 0 if u < 0 or u > 1
(
dv > 0 if v < 0
= v
dt < 0 if v > 0
2.2 Linearisation
Let (u⇤ , v⇤ )T be a steady state of (2.0.1). As previously we are interested in solution behaviour
near the steady state. Let
17
⌘ , ˜)T and
where z = (˜ !
@ @
J= @u f (u⇤ , v⇤ ) @v f (u⇤ , v⇤ ) .
@ @
@u g(u⇤ , v⇤ ) @v g(u⇤ , v⇤ )
18
1. Tr(J ) > 0, det(J ) > 0 with (Tr(J ))2 > 4 det(J ).
In this case, 0 < 1 < 2 . From (2.2.4) we see that z(t) grows exponentially in time.
The steady state in this case is an unstable node.
19
2.2.1 Example. (
du
dt =u v
dv
dt = u.
Eigenvalues solve
2
det(J (0, 0) I) = (1 )( )+1= + 1 = 0.
p p
Hence 1.2 = 1± 21 4 = 1±2 3i .
As Tr(J )2 = 1 < 4 = 4 det(J ), the eigenvalues are complex (as we see above) and as
Tr(J ) > 0, we have that Re( ) > 0 (once again as we see above) and the steady state is an
unstable spiral.
• The functional response of the predation is linear (predation term is linear in u).
Based on the modelling ingredients described above, we obtain the following system of equa-
tions for the evolution of u and v
8
>
> du
= |{z}au buv
>
> |{z}
< dt
Expo. growth Predation
dv (2.3.1)
>
> = |{z}
cuv dv,
>
>
dt |{z}
: Predation Expo. decay
where a, , b, c, d > 0.
20
Steady states (u⇤ , v⇤ )T satisfy
(
u⇤ (a bv⇤ ) = 0
v⇤ (cu⇤ d) = 0.
21
v
a/b
a/b(1 d/(cK))
u
d/c K
and hence (u⇤ , v⇤ )T = (K, 0)T is a steady state and (u⇤ , v⇤ )T = (d/c, (a/b)(1 d/(cK)))T is
also a steady state (biologically relevant if d/(cK) > 1, i.e., if K > d/c). For the remainder let
us assume the parameters are such that K > d/c and hence we have three steady states.
We now conduct a phase plane analysis of system (2.3.2). The null clines correspond to
u-nullclines: {u a au K bv } = 0, =) u = 0 or v = ab (1 u/K).
v-nullclines: {v (cu d)} = 0, =) v = 0 or u = d/c.
A sketch of the null clines is shown in Figure 2.2.
The Jacobian is given by
!
a 2a K u bv bu
J (u, v) = .
cv cu d
At (u⇤ , v⇤ ) = (0, 0) !
a 0
J (0, 0) = ,
0 d
thus 1 = a and 2 = d and hence the steady state is a saddle point. At At (u⇤ , v⇤ ) = (K, 0)
!
a bK
J (K, 0) = ,
0 cK d
22
thus 1 = a and 2 = cK d > 0 (by assumption) and hence the steady state is a saddle
point. At At (u⇤ , v⇤ ) = (d/c, a/b(1 d/(cK)))
0 1
ad bd
J ⇤ := J (d/c, a/b(1 d/(cK))) = @ ⇣ cK ⌘ c A.
a d
b c K 0
ad
We have that Tr(J ⇤ ) = cK and
✓ ◆ ✓ ◆! ✓ ◆ ✓ ◆
bd a d ad d d
det(J ⇤ ) = c = c = ad 1 >0
c b K c K cK
d
as cK < 1 by assumption (note all parameters are strictly positive as well). Thus the steady
state is stable. It is either a stable spiral or a a stable node dependent on the choice of the
parameters. (Note that unlike the previous case the nontrivial steady state is not a centre as it is
asymptotically stable).
Note that the addition of self regulation in the prey equation has led to a dramatic change
in stability behaviour of the nontrivial steady state. This is typical of many nonlinear systems
of ODEs in that minor changes to the equations can led to major changes in the asymptotic
behaviour and such a feature is sometimes used as a criticism of the plausibility of the Lotka-
Volterra model.
where ↵, > 0 are called the competition coefficients of u2 and u1 respectively. For species
that inhabit the same ecological niche, generally ↵ = 1. We nondimensionalise (2.4.1) using
the following scalings u = u1 /K1 , v = u2 /K2 and ⌧ = 1 t to obtain
✓ ◆
du1 du K1 u K2 v
= K1 1 = 1 K1 u 1 ↵ .
dt d⌧ K1 K1
23
Thus ✓ ◆
du K2 v
=u 1 u ↵ ,
d⌧ K1
similarly we obtain
✓ ◆
du2 dv K2 v K1 u
= K2 1 = K
2 2 v 1 .
dt d⌧ K2 K2
Thus ✓ ◆
dv 2 K1 u
= v 1 v .
d⌧ 1 K2
Defining the dimensionless parameters a = ↵K2 /K1 > 0, b = K1 /K2 > 0 and c = 2/ 1 >
0 we obtain the nondimensional system
(
du
= u (1 u av)
d⌧
dv
(2.4.2)
d⌧ = cv (1 v bu) .
or
a > 1 and b > 1.
The null clines of system (2.4.2) are given by
u null cline: {u = 0} and {v = 1 a u }.
v null cline: {v = 0} and {v = 1 bu}.
24
Excercise: Sketch the null clines in the phase plane together with solution trajectories on
the null clines for the cases (a < 1, b < 1), (a > 1, b < 1), (a < 1, b > 1) and (a > 1, b > 1).
To determine the stability of the steady states we compute the jacobian matrix of the system
(2.4.2), !
1 2u av au
J (u, v) = .
cbv c 2cv cbu
Hence !
1 0
J (0, 0) = .
0 c
Thus 1 = 1 and 2 = c > 0 and the steady state is an unstable node.
!
1 a 0
J (0, 1) = ,
0 c
Thus 1 = 1 a and 2 = c < 0 and so the steady state (0, 1) is a stable node if a > 1 and is
a saddle if a < 1. !
1 a
J (1, 0) = ,
0 c cb
Thus 1 = 1 and 2 = c(1 b) and so the steady state (1, 0) is a stable node if b > 1 and is a
saddle if b < 1. Finally,
0 ⇣ ⌘ ⇣ ⌘ ⇣ ⌘ 1
✓ ◆ 1 a 1 b 1 a
1 a 1 b B 1 2 1 ab⇣ a
⌘ 1 ab ⇣
a
⌘1 ab ⇣ ⌘ C
J ⇤ := J , =@ A
1 ab 1 ab cb 1 b
c 2c 1 b
cb 1 a
1 ab 1 ab 1 ab
!
a 1 a(a 1)
= 1 ab 1 ab .
cb(b 1) c(b 1)
1 ab 1 ab
a 1+c(b 1)
Hence Tr(J ⇤ ) = 1 ab and
2. a > 1, b > 1: Tr(J ⇤ ) < 0 and det(J ⇤ ) < 0 so the steady state is a saddle (eigenvalues
must have different signs).
Note the above results imply that if a > 1, b < 1 the steady state (u⇤ , v⇤ ) = (0, 1) is the
only stable node and the species v always “wins”. Alternatively if a < 1, b > 1 the steady state
(u⇤ , v⇤ ) = (1, 0) is the only stable node and the species u always “wins”.
25
Recall our scaling was such that a = ↵K2 /K1 and b = K1 /K2 in particular which species
“wins” in the case that one of a or b is less than one and the other is greater than one depends
only on the interspecies competition rates ↵, and the carrying capacities K1 , K2 . In particular
there is no competitive advantage to increasing your growth ⇣ rate. ⌘
1 a 1 b
If a < 1, b < 1 the coexisting steady (u⇤ , v⇤ ) = 1 ab , 1 ab state is the only stable
steady state. In this case interspecies competition is not too strong and the system asymptotically
approaches a nonzero equilibrium value for both species that is smaller for both species than the
asymptotic equilibrium values for both species in the absence of competition (1, 1).
If a > 1, b > 1 the system is bistable (both (1, 0) and (0, 1) are stable). The eventual winner
in this case depends on the initial conditions.
Note that the coexisting steady state exists (in a biologically relevant range) only if a, b < 1
or a, b > 1, from the scaling we have that
K2 K1
ab = ↵ =↵ ,
K1 K2
recalling that for species in the same ecological niche we generally take ↵ = 1, we note that
for such species ab = 1. Thus we conclude that in such a setting where the species occupy the
same niche and ↵ = 1, the mathematical model reflects the principle of competitive exclusion,
i.e., one of the species is always driven to extinction.
The steady state of this system corresponds to (x⇤ , y⇤ )T = (0, 0)T . The Jacobian matrix of the
system is given by !
↵ 3x2 y 2 1 2xy
J (x, y) = .
1 2xy ↵ x2 3y 2
26
The eigenvalues solve
!
↵ 1 2
det(J (0, 0) I) = 0 =) det = 0 =) 2↵ + ↵2 + 1 = 0.
1 ↵
Thus p
2↵ ± 4↵2 4(↵2 + 1) p
1,2 = =↵± 1 = ↵ ± i.
2
Hence as ↵ approaches 0 from below a pair complex conjugate eigenvalues become purely
imaginary and we have a Hopf bifurcation. At the point ↵ = 0,
1,2 = ±i.
Hence the solutions are expected to be periodic with period 2⇡. Note that in general the period
of solutions is 2⇡/ Im( ) .
Finally, let us consider the case ↵ > 0 In this case the steady state (0, 0)T is unstable as
Re( 1,2 ) = ↵ > 0.
Can we say something about the dynamics of the system in this parameter regime, where
↵ > 0? The answer is: yes, we can. To do so, we will require the Poincaré-Bendixson theorem
if a trajectory is confined to a closed bounded region that contains no steady states, then the
trajectory must converge on a closed orbit.
2.6.1 Remark (Usage and implications of the Poincaré-Bendixson theorem). In order to apply
the above Theorem, we must determine sufficient conditions such that a trajectory is confined to
a closed bounded region. Such a condition is given by the following;
If we can find a confined set (or trapping region), R such that trajectories flow inward every-
where on the boundary of R, then all trajectories in R must be confined.
If R contains no steady states then the Poincaré-Bendixson theorem ensures that such a
region R must contains a closed orbit.
Let n be the outward normal to the boundary of the trapping region. We require
!
dx
n· dt <0
dy
dt
27
for all points (x, y)T on the boundary of R. If this inequality holds at point on the boundary it
⇣ ⌘T
dy
implies that the velocity vector of a solution trajectory dx ,
dt dt points towards the interior of
R.
How can we use the Poincaré-Bendixson theorem to learn more about example 2.5.1, for the
case where ↵ > 0? Consider the set in phase space
where 0 < d1 < ↵ < d2 . Then the set A is a trapping region for the system since, on the inner
boundary x2 + y 2 = d1 , the outward pointing normal is given by n(x, y) = ( x, y)T . Thus
!
dx
n· dt
dy = ↵x2 +yx+x2 (x2 +y 2 ) xy ↵y 2 +y 2 (x2 +y 2 ) = (x2 +y 2 )(x2 +y 2 ↵) = d1 (d1 ↵) < 0,
dt
as d2 > ↵ by assumption. Hence A is a trapping region for the system. As the system has no
steady state in the region A the Poincaré-Bendixson theorem implies that solutions starting in
the region A must converge to a closed orbit.
We can even go a step further. For any initial condition inside the plane, we can define the
region A such that it includes that initial condition by simply choosing d1 and d2 appropriately.
Hence, all solutions of this dynamical system will converge to a limit cycle in the long run. In
general, whenever the conditions for a Hopf bifurcation are met, we can expect there to be at
least a small region of parameter space, on the right hand side of the imaginary axis, in which
solutions that start close to the relevant steady state converge to a limit cycle.
28
Chapter 3
An assumption of the ODE models considered in Chapter 1 is that the rate of change of the
population at the present time depends only on the population level at the present time itself. This
does not take into account factors such as gestation (the period an organism spends developing
in the womb) or the time taken to reach sexual maturity (i.e., how long it takes the organism to
become capable of reproducing). One possible means of including such features in a continuous
time setting is to consider delay differential equations. In such a model, the growth rate at the
present time depends on the state of the population at earlier times in the past.
We consider here delay differential equations of the form
dN (t)
= f (N (t), N (t ⌧ )),
| dt
{z } | {z }
function of N at time t and N at time t ⌧
rate of change of N at time t
for some fixed delay ⌧ > 0. Note that we need to specify data N (t) for all t 2 [ ⌧, 0] and not
just N (0) as was the case for ODE models.
3.0.1 Example (Logistic model with delay).
✓ ◆
dN (t) N (t ⌧ )
= rN (t) 1 , r, K > 0. (3.0.1)
dt K
Suppose that at t = t1 , N (t1 ) = K and that for t < t1 , N (t) < K, for example as in Figure
3.1, then N (t1 ⌧ ) < K, hence
✓ ◆
N (t1 ⌧ )
1 >0
K
thus from (3.0.1)
✓ ◆ ✓ ◆
dN (t1 ) N (t1 ⌧ ) N (t1 ⌧ )
= rN (t1 ) 1 = rK 1 > 0.
dt K K
dN (t)
By the same argument dt > 0 and N is increasing for all t 2 [t1 , t1 + ⌧ ). At the point t1 + ⌧
we have that ✓ ◆
dN (t1 + ⌧ ) N (t1
= rN (t1 + ⌧ ) 1 = 0,
dt K
29
N (t)
t
t1
since N (t1 ) = K. Thus N (t) has a critical point at t = t2 = t1 + ⌧ ). Hence the evolution is as
in Figure 3.2.
N (t)
t
t1 t2 = t1 + ⌧
Investigating further we see that this critical point is a local maximum since for t = t2 + ✏,
with ✏ small and positive, we have that
✓ ◆
dN (t) N (t2 + " ⌧ )
= rN (t) 1 < 0,
dt K
| {z }
<0
since N (t2 + " ⌧ ) = N (t) for some t 2 (t1 , t1 + ⌧ ) and hence N (t2 + " ⌧ ) > K.
Continuing the argument we see that N keeps decreasing and there exists a time t3 > t1 + ⌧
at which point N (t3 ) = K, but N (t3 ⌧ ) > K so dN dt < 0. When t = t4 = t3 + ⌧ ,
dN
N (t ⌧ ) = K and hence dt = 0 and N has a critical point. As above one can show this point
is a local minimum and the evolution is as depicted in Figure 3.3.
Continuing in this fashion we see that we have an oscillatory solution N (t) which increases
from K to its local maximum in time t2 t1 = ⌧ and decreases from K to its local minimum in
time t4 t3 = ⌧ and hence we might expect an oscillatory solution with period 4⌧ as depicted
in Figure 3.4
Note, however, this argument is a little rough and we do not in fact have precise information
on the time t3 where the solution declines from its maximum value at N (t2 ) to N (t3 ) = K,
but never the less, numerical simulations of (3.0.1) reflect the behaviour our argument above
suggest, oscillations with period governed by the (nondimensional) delay.
30
N (t)
t
t1 t2 = t1 + ⌧ t3 t4 = t3 + ⌧
N (t)
t
t1 t1 + ⌧ t1 + 2⌧ t1 + 3⌧ t1 + 4⌧
Note that according to the above definition, steady states are not periodic functions since we
do not regard constant functions as periodic (T > 0).
3.2 Theorem (No oscillations in ODEs without delay). If N (t) is a solution of the ODE
dN (t)
= f (N (t)) (3.2.1)
dt
with f : R ! R continuous, then N (t) can not be periodic.
Proof. We prove the result via contradiction. Assume the result holds and that the ODE (3.2.1)
has a periodic solution with period T . Multiplying both sides of (3.2.1) by dN
dt and integrating
31
over one period (0, T ), say, gives
Z T ✓ ◆2 Z T
dN dN
= f (N ) (3.2.2)
0 dt 0 dt
As we know that N (t) is a periodic solution, and hence not constant, we have that the left hand
side of the above satisfies Z T✓ ◆
dN 2
>0
0 dt
⇣ ⌘2
since dN dt is strictly positive on some portion of the period (0, T ). On the other hand invest-
igating the right hand side of (3.2.2), we see that by a change of variables
Z T Z N (T ) Z N (0)
dN
f (N ) dt = f (N )dN = f (N )dN = 0
0 dt N (0) N (0)
where we have used the fact that N (t) is periodic with period T and hence N (T ) = N (0) as
well as the fact that the integral of a function over a set of measure zero is zero in the last two
steps. Thus we arrive at a contradiction since the LHS and RHS of (3.2.2) can not be equal.
dn(t)
= f (n(t), n(t ⌧ )),
dt
that has a constant solution (steady state) n(t) = n⇤ . Consider a perturbation from the steady
state, ⌘(t) such that ⌘(t) ⌧ 1, then
n(t) = n⇤ + ⌘(t)
satisfies
dn d(n⇤ + ⌘) d⌘
= = .
dt dt dt
32
From the equation using Taylor expansion we have
dn
= f (n⇤ +⌘(t), n⇤ +⌘(t ⌧ )) = f (n⇤ , n⇤ ) +⌘(t)@1 f (n⇤ , n⇤ )+⌘(t ⌧ )@2 f (n⇤ , n⇤ )+O(⌘ 2 ),
dt | {z }
=0
dN̂ (t̂) ⇣ ⌘
= N̂ (t̂) 1 N̂ (t̂ ⌧ˆ) .
dt̂
For notational ease, we now drop the carets and omit the argument if it is simply t and consider
the nondimensional delayed logistic equation
dN
=N 1 N (t ⌧ ) =: f (N, N (t ⌧ )). (3.3.2)
dt
Steady states are N ⇤ 2 R such that f (N ⇤ , N ⇤ ) = 0. Thus N ⇤ = 0 or N ⇤ = 1.
For linear stability analysis from (3.3.1) we must compute
@1 f (N ⇤ , N ⇤ ) = (1 N ⇤) and @2 f (N ⇤ , N ⇤ ) = N ⇤.
Hence at the steady state N ⇤ = 0 we have that perturbations from the steady state satisfy
d⌘
= ⌘(t)(1 0) + ⌘(t ⌧ ) · 0 = ⌘(t),
dt
multiplying by e gives
t
✓ ◆ t
t d⌘ d ⌘e t
e ⌘ = 0 =) = 0 =) ⌘(t)e = ⌘(0).
dt dt
33
y=
y= e 0.3
y= e /e
y= e
Figure 3.5: Sketch illustrating that we may have either 0, 1 or 2 real solutions to (3.3.3) depend-
ing on the size of the delay.
Thus ⌘(t) = ⌘(0)et and the perturbations grow exponentially so the steady state N ⇤ = 0 is
unstable (as was the case without delay).
At the steady state N ⇤ = 1 we have
d⌘
= ⌘(t)(1 1) + ⌘(t ⌧ ) · ( 1) = ⌘(t ⌧ ).
dt
We look for solutions to the above equation of the form ⌘(t) = ⌘0 e t which gives
d⌘ t dn (t ⌧ )
= ⌘0 e and = ⌘0 e = ⌘0 e t e ⌧
.
dt dt
Thus
t
⌘0 e = ⌘0 e t e ⌧
=) = e ⌧
. (3.3.3)
For stability we require Re( ) < 0.
We split the remainder of the analysis into two cases
Case 1 2 R. We note that in this case (3.3.3) has no solutions unless the delay is sufficiently
small! (see Figure 3.5). In any case if a solution exists we note that e ⌧ > 0 and hence
< 0. Thus the perturbation dies away and the steady state is stable.
Case 2 2 C. Our previous analysis suggested we should see oscillations that do not decay.
We recall from previous chapters that such oscillations are associated with 2 C with
34
Im( ) 6= 0 and Re( ) > 0. Note that in this case the ’s in this case always come in
complex conjugate pairs.
Let 2 C = µ + i! with ! 6= 0 then from (3.3.3) we have
(µ+i!)⌧ µ⌧ µ⌧
µ+i! = e = e cos( !⌧ ) + i sin( !⌧ ) = e cos(!⌧ ) i sin(!⌧ ) .
Equating real and imaginary parts gives
µ⌧ µ⌧
µ= e cos(!⌧ ) !=e sin(!⌧ ). (3.3.4)
For stability we require
µ⌧
Re( ) = µ = e cos(!⌧ ) < 0.
Thus, we need
⇡ ⇡
cos(!⌧ ) > 0 =) < !⌧ < .
2 2
Now we note that for
eµ⌧ !eµ⌧ sin(!⌧ ) 1 2
= = > = ,
⌧ !⌧ !⌧ ⇡/2 ⇡
where we have used the graphical argument of Figure 3.6 for the last inequality. Hence
eµ⌧ 2 ⇡eµ⌧ ⇡
> =) ⌧ < < ,
⌧ ⇡ 2 2
where we have used the fact that for µ < 0, e < 1. Hence the steady state N ⇤ = 1 is
µ⌧
35
y=x
⇡/2 ⇡/2
y = sin(x)
Figure 3.6: Sketch of the curves y = sin(x) and y = x for x 2 [0, ⇡/2] illustrating that the
quotient sin(x)/x for x 2 [ ⇡/2, ⇡/2] is smallest when x = ⇡/2. Not that as the two functions
are odd, the quotient is an even function. It is left as an exercise to show that at the origin the
quotient is one.
36
Chapter 4
Biochemical kinetics
The study of biochemical kinetics concerns the dynamics (i.e., changes in time) of concentra-
tions of substances in biological systems.
d[C]
= k[A][B]
dt
The constant k is known as the rate constant for the reaction.
Many reactions are reversible. In the above example, this would mean that C could disasso-
ciate into its components A and B. This can be denoted as Thus we write
k
A + B )* C. (4.1.2)
k
Applying the Law of mass action to (4.1.2) we obtain the following system of differential equa-
tions for the dynamics of the concentrations (which we denote by a, b anc c for simplicity)
8
>
> da = k c kab
< dt
db
dt = k c kab (4.1.3)
>
>
: dc = kab k c.
dt
37
Note that (4.1.3) implies that
d(a + c) d(b + c)
= 0; = 0,
dt dt
thus the sum of the concentrations a + c and b + c are constant. This reflects that for each
molecule of A or B lost exactly one molecule of C is created.
For the more general reaction
k
A + mB ! nB + pC, (4.1.4)
In order to understand how the abm term arises in the above, consider for example the reaction
k
A + 2B ! C.
38
The Law of mass action tells us that C is produced at a rate that is proportional to the “three”
reactants A, B and B, i.e.,
dc
= kabb = kab2 .
dt
4.1.1 Remark (Applicability of the Law of mass action). If all collisions are equally probable
and there are large numbers of molecules, the rate of change of concentration should obey the
Law of mass action. Thus the law of mass action is a good approximation to reality provided
chemicals are dilute and well mixed.
4.2 Brusselator
The Brusselator is a theoretical model which is used to show that chemical systems could os-
cillate it is based on a hypothetical reaction rather than a specific chemical mechanism. The
reaction under consideration in the Brusselator model is given by
1 k
A ! X
2 k
B+X ! Y +D
3 k
2X + Y ! 3X
4 k
X ! E.
In this model, A and B are assumed to be maintained at a constant level. D and E are assumed
not to participate in any further reactions and thus their concentrations are irrelevant. Accord-
ingly X and Y are the dependent variables.
From the Law of mass action the corresponding differential equations for the concentrations
of X and Y are (
dx
dt = k1 A k2 Bx + k3 x2 y k4 x
dy
dt = k2 Bx k3 x2 y.
In order to nondimensionalise we introduce the following scalings
r r r
k3 k3 k1 k3 Bk2
u= x, v = y, ⌧ = k4 t, a = A , b= .
k4 k4 k4 k4 k4
Substituting gives
r r r r
k4 du k4 k4 k4 2 k4
k4 = k1 A k2 B u + k3 u v k4 u
k3 d⌧ k3 k3 k3 k3
r
du k1 k3 k2
=) = A Bu + u2 v u
d⌧ k4 k4 k4
du
=) = a bu + u2 v u.
d⌧
39
Similarly,
r r r
k4 dv k4 k4 k4 2
k4 = k2 B u k3 u v
k3 d⌧ k3 k3 k3
dv k2
=) = Bu u2 v
d⌧ k4
dv
=) = bu u2 v.
d⌧
Thus the nondimensional system is given by
(
du
= a bu + u2 v u
d⌧
dv
(4.2.1)
d⌧ = bu u2 v.
40
6. Degenerate steady state (Tr(J ⇤ )2 = 4 det(J ⇤ )).
4.2.1 Example (Trapping region for the Brusselator). Simular to when we studied Hopf bifurca-
tions before, we can use the Poincaré-Bendixson theorem to identify initial conditions that must
lead to oscillations. All we need to do is to identify a trapping region for our dynamical system.
A trapping region for the Brusselator model (4.2.1) is bounded by, with k > a a parameter,
a
u= (4.2.2)
b+1
u=k (4.2.3)
v=0 (4.2.4)
b(b + 1)
v= (4.2.5)
a
(b + 1)k a
v = u+ + k. (4.2.6)
k2
An example sketch of a trapping region is shown in figure 4.2.
41
v
Figure 4.1: Nullclines with solution flows on the nullclines for the nondimensional Brusselator
system (4.2.1)
b(b+1)
a
a
u
b+1 k
Figure 4.2: Trapping region for the nondimensional Brusselator system (4.2.1)
42
4.3 Enzyme reaction (Michaelis-Menten)
Biochemical reactions are often controlled by enzymes. Enzyme reactions involve a substance
(substrate) that is converted into another substance (product). The enzyme, which is present at
very low concentrations, increases the rate of reaction by lowering the activator energy, (i.e., it
catalyses the reaction).
In the following reaction scheme, the enzyme E coverts the substrate S into the product P
through a two-step process, represented schematically by,
1 k k2
S + E )* C ! P + E,
k 1
where C denotes the substrate/enzyme complex and k1 , k 1 , k2 are rate constants. (The reverse
reaction P + E ! C is often considered to occur so slowly such that it may be neglected).
Define s = [S], e = [E], c = [C] and p = [P ]. The LMA applied to the above reaction
mechanism gives:
8
> ds
>
> dt = k 1 c k1 se
>
< de = k c + k c k se = (k + k )c k se
dt 1 2 1 1 2 1
> dc
>
> dt = k1 se (k 1 + k2 )c
>
: dp = k c,
dt 2
together with the initial conditions e(0) = e0 , s(0) = s0 , c(0) = p(0) = 0. From the equations
we see that
d(e + c)
=0 =) e + c = e0 ,
dt
i.e., the total amount of enzyme (e = amount of free enzyme, c = amount of enzyme bound to
substrate) is conserved. Also we see that
d(s + c + p)
=0 =) s + c + p = s0 ,
dt
i.e., that the total amount of substrate (original form, bound to enzyme and converted product)
is conserved.
Note this implies we can reduce the system of four ODEs to a system of two ODEs
(
ds
dt = k 1 c k1 s(e0 c)
(4.3.1)
dc
dt = k1 s(e0 c) (k 1 + k2 )c,
together with the initial conditions e(0) = e0 , s(0) = s0 , c(0) = p(0) = 0 and with the conser-
vation laws yielding that e = e0 c and p = s0 s + c.
We observe that
d(s + c)
= k2 c
dt
and hence eventually all the substrate becomes product with the substrate and complex con-
centrations tending to zero (consequently also that the enzyme becomes free) and that (4.3.1)
admits the asymptotic solution given by c = s = 0, p = s0 . This is due to the irreversibility of
the conversion of complex to product.
43
4.3.1 Equilibrium approximation
? solved equation (4.3.1) using an equilibrium assumption. They assumed that k 1 k2 ,
therefore used the approximation
k1 se = k 1 c,
which means that an equilibrium is established between E, S and C, the slow step is the break-
down of C to produce P and E.
Since e + c = e0 we find that
k1 s(e0 c) = k 1c
k1 se0
=) c =
k 1 + k1 s
se0
= ,
km + s
k 1
where km = k1 . Hence the product P of the reaction is produced at the rate
dp vmax s
V = = k2 c = ,
dt km + s
where vmax = k2 e0 is the maximum reaction velocity attained when all the enzyme is in com-
plex with the substrate and further increase of the rate can not be achieved by increasing the
concentration of substrate.
dp
v= dt
vmax
1
2 vmax
s
km
Figure 4.3: Product production rate against substrate concentration under the equilibrium as-
sumption.
44
to a separation of timescales such that, initially there is a fast mixing stage (typically lasting mil-
liseconds) after which the product C remains approximately constant until the substrate has been
consumed. Hence c remains approximately at steady state and we may use the approximation
dc
⇡ 0.
dt
The above approximation is called the quasi-steady-state hypothesis. With this approximation,
from (4.3.1) we have
k1 s(e0 c) ⇡ (k 1 + k2 )c, (4.3.2)
thus,
k1 se0 se0
c⇡ = (4.3.3)
k1 s + k 1 + k2 km + s
k 1 +k2
where km = k1 . Substituting (4.3.2) into the equation for s in (4.3.1) gives
ds vmax s
⇡ k2 c = , (4.3.4)
dt km + s
where vmax = k2 e0 .
Note (4.3.3) and (4.3.4) are only an approximation to the full system and they are valid only
when the enzyme concentration is much lower than the substrate concentration.
Inserting the expression (4.3.3) into the equation for the rate of change of p we obtain
dp vmax s
= v = k2 c = , where vmax = k2 e0 .
dt km + s
The graph of production against substrate concentration looks as in Figure 4.3 albeit with a
different value of km .
Assumption k 1 k2 s0 e0 ( dc
dt ⇡ 0)
dp vmax s dp vmax s
Equation dt = km +s dt = km +s
with vmax = k2 e0 with vmax = k2 e0
and km = kk11 and km = k 1k+k
1
2
45
4.3.4 Fast and slow timescales for the quasi-steady-state approximation
The quasi-steady-state approximation is based on the observation that there is a fast and slow
timescale. The rate of the reactions involving C occur on a fast timescale and on a slow timescale
C is almost constant.
To understand this from a mathematical perspective consider the following nondimension-
alisation of (4.3.1). Let s̄ = s/s0 , c̄ = c/e0 , ē = e/e0 , p̄ = p/p0 and ⌧ = k1 e0 t. Substituting in
the scalings into (4.3.1) we obtain the nondimensional system
(
ds̄ 0
d⌧ = Km c̄ s̄(1 c̄)
(4.3.5)
dc̄
" d⌧ = s̄(1 c̄) Km c̄,
46
Chapter 5
We aim to understand how the rate of growth or decay of an isolated population is determined.
Let us assume that the size Nn of a population at time n completely determines its size at time
n + 1. Thus we have
Nn+1 = f (Nn ),
which is a first order difference equation or recurrence relation. The use of discrete time may
be appropriate if the population is measured at discrete points, so that data for births and deaths
are only available at discrete times. Although we will not pursue this fact further in these notes,
difference equations also naturally arise when one considers discretisations of ODEs. Hence
understanding the behaviour of solutions to difference equations is also relevant if one wishes
to understand the behaviour of numerical solutions when one approximates the solution to an
ODE.
5.0.1 Example (Malthusian equation in discrete time). Consider a continuously breeding popu-
lation measured at discrete points. Let
and let
• d denote the per capita mortality between measurements, i.e., d 2 [0, 1] is the probability
of any given individual dying between measurements of the population.
Thus in between the censuses at times n and n + 1, the total number of births is given by bNn
and the total number of deaths is given by dNn . Therefore the population size at time n + 1 is
given by
47
where the last equality defines 0, which is called the (net) growth ratio. The linear difference
equation (5.0.1) is known as the Malthusian equation in discrete time. The solution of (5.0.1)
with initial population size N0 is
N1 = N0
2
N2 = N1 = N0
..
.
n
Nn = N0 .
(Number of Individuals)
N
N2 N N
N1
N0 N0 N0
N1
N2
... n t ... n t ... n t
1 2 (time) 1 2 1 2
>1 =1 <1
(b > d) (b = d) (b < d)
Figure 5.1: Evolution of the population size under the discrete Malthusian equation for different
net growth rates.
5.0.2 Example (Insect population dynamics). Consider a population of insects that emerge from
their eggs in spring, lay their eggs in the summer and die in the autumn. The number of insects in
the (n + 1)’th generation therefore depends only on the number of insects in the n’th generation
(as the insects from older generations have all died).
Let be the average number of eggs laid by insects in the n’th generation, the number of
insects in the (n + 1)’th generation is given by
Nn+1 = Nn ,
48
The number of insects in the (n + 1)’th generation is now given by
where we have introduced the functions F () and f () which we call the per capita production
and the production respectively.
A model is called density-dependent if the per capita production F depends on N . Note
that for the Malthusian equation (5.0.1), F (N ) = , a constant, hence the model is not density-
dependent whilst for the insect model (5.0.2,) F (N ) = S(Nn ), and hence the model is density-
dependent.
the evolution of models such as (5.1.1) may be investigated graphically using cobweb maps.
One essentially plots iterates Nn+1 against Nn for n = 0, 1, 2, . . . ,. The following list details
the steps in constructing a cobweb map of the model (5.1.1) with initial data N0 .
1. Plot the curve y = f (x) and the line y = x.
2. Mark N0 on the x axis.
3. Draw the vertical line connecting (N0 , 0) and the curve (the point on the curve has co-
ordinates (N0 , N1 )).
4. Draw the horizontal line connecting the computed point (N0 , N1 ) with the line y = x (the
point on the line y = x has coordinates (N1 , N1 ).
5. Draw the vertical connecting the curve and the point (N1 , N1 ) (the point on the curve has
coordinates (N1 , N2 ).
6. Iterate the procedure.
The result is that we obtain the sequence of points N0 , N1 , N2 , . . . that correspond to the solution
of (5.1.1). Figure 5.2 shows a sketch of a cobweb map.
5.1.1 Definition (Steady-state solution). A solution N⇤ to a difference equation of the form
(5.1.1) is called a steady-state solution, equilibrium or fixed point if the solution to the model
(5.1.1) with initial data N⇤ satisfies Nn = N⇤ for all n.
From (5.1.1) we see that this is equivalent to requiring
N⇤ = f (N⇤ ).
49
y
N5
N4
N3
N2
x
N1 N2 N3 N4
Steady-states can be found in a cobweb map as the intersection of the line y = x with the
curve y = f (x).
Nn+p = Nn 8n
and
Nn+q 6= Nn for any n and any q < p.
5.1.3 Definition (Periodic point). A point N0 is called a periodic point with period p 2 Z+ if
N0 = f p (N0 ).
where f p (N0 ) = N0 , is called the periodic orbit or p-cycle of the periodic point N0 .
5.1.5 Example (Cobweb maps and steady states for the Malthusian equations in discrete time).
Recall the Malthusian equation in discrete time (5.0.1),
Nn+1 = f (Nn ) = Nn , 0.
In Figure 5.1 we observed that the population may grow, remain constant or decay from the
initial value depending on the value of . We may use cobweb maps as an alternative means
50
y y y
N3
N2
N1
N1
N1
N2
N3
x x x
N0N1N2 N0 N2N1 N0
>1 =1 0< <1
(Explosion) (Steady-state) (Extinction)
Figure 5.3: Cobweb maps for the Malthusian for different values of the net growth rate .
to verify this fact. Figure 5.3 shows the cobweb maps corresponding to > 1, = 1 and
0 < < 1.
A steady state solution N⇤ satisfies
N⇤ = f (N⇤ ),
hence, from (5.0.1) we have
N⇤ = N⇤ ,
and hence
N⇤ (1 ) = 0.
Thus if = 1 any N⇤ 0 is a steady state whilst if 6= 1 the only steady state is N⇤ = 0.
5.1.6 Example (Beverton-Holt Model). Consider the density dependent model
Nn
Nn+1 = f (Nn ) = , (5.1.2)
K + Nn
The production function f in the model (5.1.2) is shown in Figure 5.4. For small N , f appears
to grow linearly and f saturates as N becomes large asymptotically approaching the value .
The steady states are given by
N⇤
N⇤ = f (N⇤ ) = .
K + N⇤
Thus they satisfy the quadratic
N⇤2 + (K )N⇤ = 0
The steady states therefore correspond to N⇤ = 0 and N⇤ = ( K). We only consider positive
solutions and hence if < K there is a single unique steady state N⇤ = 0. However when
> K there exists a second (positive) steady state corresponding to N⇤ = K > 0. Figure
5.5 shows cobweb maps for the Beverton-Holt model (5.1.2) for < K and for > K, we
notice the existence of two positive steady states for > K.
51
f
5.1.7 Example (Modified Beverton-Holt model). Consider the following density-dependent dif-
ference equation
Nn
Nn+1 = f (Nn ) = . (5.1.3)
1 + Nn2
The steady states are given by
N⇤
N⇤ = .
1 + N⇤2
Thus they satisfy the cubic equation
N⇤3 + (1 )N⇤ = 0.
Hence there is a steady state corresponding to N⇤ = 0 and if > 1 we have another steady state
p
corresponding to N⇤ = 1.
N
Let f (N ) = 1+N 2 , then by the quotient rule,
(1 + N 2 ) N · 2N (1 N 2 )
f 0 (N ) = = .
(1 + N 2 )2 (1 + N 2 )2
Thus for small N , f grows approximately linearly (f 0 ⇡ ) whilst as N gets larger the growth
rate of f falls until the critical point N = 1 (where the derivative of f changes sign) beyond
which f begins to decrease with f ! 0 as N ! 1.
Figure 5.6 shows cobweb maps for the model (5.1.3) for the cases < 1 and > 1,
illustrating the existence of a single unique steady state in the former case and two positive
steady states in the latter.
5.1.8 Note. Information on the slope of f is needed to determine the precise behaviour of solu-
tions close to a steady state value.
52
y
N1
N2
N3
x
N2 N1 N0
<K
y y
N1
N
N23
N3
N2
N1
x x
N0N1 N2 K N2N1 N0
K
>K >K
N0 < K N0 > K
53
y
N1
N2
N3
x
N2N1 N0
If < 1 there is a unique steady state N⇤ = 0 and all initial states converge to 0.
y
N1
N3
N2
x
N0 N2 N1
p
If > 1 there are two steady states N⇤ = 0 and N⇤ = 1.
Figure 5.6: Cobweb maps for the model (5.1.3) of Example 5.1.6.
54
• Stable if for all " > 0 there exists a > 0 such that
In order to understand to stability of a steady state we will linearise the difference equa-
tion and investigate the stability of the steady state for the linearised equation. This technique
is known as linear stability analysis. A consequence of this approach is that our results are
informative only regarding the behaviour of solutions that are “close” to the steady state value.
Linearisation
Consider a steady state N⇤ of the difference equation Nn+1 = f (Nn ). We are interested in
the behaviour of solutions near N⇤ . To investigate this we introduce the difference between the
solution and the steady state value ⌘n , i.e.,
⌘n := Nn N⇤ with |⌘n | ⌧ 1.
⌘n+1 = Nn+1 N⇤
= f (Nn ) N⇤
= f (N⇤ + ⌘n ) N⇤ .
where we have used the fact that Nn+1 = f (Nn ) for all n to obtain the last two equalities.
Assume the function f is differentiable in a neighbourhood of the point N⇤ . Then,
f (N⇤ + h) f (N⇤ )
lim = f 0 (N⇤ ) and f (N⇤ + h) = f (N⇤ ) + hf 0 (N⇤ ) + O(h2 ).
h!0 h
Thus,
⌘n+1 = f (N⇤ + ⌘n ) N⇤
= f (N⇤ ) + ⌘n f 0 (N⇤ ) + O(⌘n2 ) f (N⇤ )
0
= ⌘n f (N⇤ ) + O(⌘n2 )
0
⇡ ⌘n f (N⇤ ),
as |⌘n | ⌧ 1, i.e., we are interested in the behaviour of solutions close to the steady state value
N⇤ , and hence O(⌘n2 ) is small.
Thus we obtain a linear approximation to the nonlinear difference equation for ⌘,
55
The solution to this equation is given by
and hence ⌘˜n ! 0 (the difference to the steady state goes to zero) as n ! 1 if f 0 (N⇤ ) <
1. We therefore say, a steady state N⇤ of Nn+1 = f (Nn ) is locally asymptotically stable if
f 0 (N⇤ ) < 1 and is unstable if f 0 (N⇤ ) > 1.
Let = f 0 (N⇤ ). There are 5 distinct types of stability behaviour dependent on
y N
N2
N0
N⇤
N1
N3 x t
N⇤
N1 N0 N2 (time)
Figure 5.7: Cobweb maps and solution behaviour for the oscillatory unstable case of §5.2 cor-
responding to < 1.
y N
N0
N2 N⇤
N3
N1
x t
N⇤
N1 N2 N0 (time)
Figure 5.8: Cobweb maps and solution behaviour for the oscillatory asymptotically stable case
of §5.2 corresponding to 1 < < 0.
56
y N
N0
N1
N2 N⇤
N3
N̂3
N̂2
N̂0
N̂1
x t
N⇤
N̂0 N̂1N̂2 N2N1 N0 (time)
Figure 5.9: Cobweb maps and solution behaviour for the monotonically asymptotically stable
case of §5.2 corresponding to 0 < < 1.
y
N3
N
N2
N1
N⇤
N̂1
N̂2
N̂3 x t
N⇤
N̂2 N̂1N̂0 NN
0 1 N2 (time)
Figure 5.10: Cobweb maps and solution behaviour for the monotonically unstable case of §5.2
corresponding to > 1.
Figures 5.7—5.11 show cobweb diagrams and solution behaviour versus time for the five differ-
ent cases.
57
y N
N1
N⇤
x t
N⇤ N0 = N1 = N2 = . . . (time)
y N
N2
N⇤
N1
x t
N1 = N3 = N5 = . . . N⇤ N0 = N2 = N4 = . . . (time)
Figure 5.11: Cobweb maps and solution behaviour for the stable but not asymptotically stable
case of §5.2 corresponding to | | = 1, with = 1 (top row) and = 1 (bottom row).
58
5.2.2 Corollary. A periodic point N0 of period p is stable if:
(Apply the stability condition |f 0 (N0 )| < 1 to f p (N0 ) and use the chain rule).
5.3 Bifurcations
We now investigate how changes in parameters influence the asymptotic behaviour of solutions.
In particular we will be interested in identifying bifurcations, i.e., points where small changes in
parameters lead to qualitative changes in the asymptotic behaviour of solutions.
5.3.1 Example (Beverton-Holt model revisited). Consider the Beverton-Holt model (5.1.2),
Nn
Nn+1 = f (Nn ) = , , K > 0. (5.3.1)
K + Nn
Clearly the net production rate F (Nn ) = K+Nn tends to zero as Nn becomes large.
As in Example 5.1.6 the model has a steady state
p corresponding to N⇤ = 0 and if > K we
have another steady state corresponding to N⇤ = K. In order to investigate the stability
of the steady states we compute the derivative of the production function f which yields
(K + N ) N K
f 0 (N ) = =
(K + N )2 (K + N )2
We split the stability analysis into two cases;
Case 1 0 < K
Stability of the steady state N⇤ = 0:
f 0 (0) = ,
K
so the steady state is monotonically asymptotically stable for 0 < < K and stable but
not asymptotically stable for = K.
Case 2 >K
Stability of the steady state N⇤ = 0:
f 0 (0) = > 1,
K
so the steady state N⇤ = 0 is unstable.
Stability of the steady state N⇤ = K:
K K
f 0( K) = = < 1,
(K + K)2
so the steady state is monotonically asymptotically stable.
59
N⇤
N⇤ = K (stable)
N⇤ = 0 (stable) (unstable)
K
Figure 5.12: Bifurcation diagram for the model (5.3.1) with bifurcation parameter .
We may represent the existence and stability of steady states for (5.3.1) as a function of in
the form of a bifurcation diagram as shown in Figure 5.12, here the parameter is called the
bifurcation parameter.
N⇤ = f (N⇤ )
N⇤
= HN⇤ .
1 + N⇤2
Therefore, ✓ ◆
N⇤ 1 +H = 0,
1 + N⇤2
and we conclude that the steady states correspond to either N⇤ = 0 or
= 1 + N⇤2 ,
1+H
which yields r
N⇤ = 1, if > 1 + H,
1+H
60
q
1 H
i.e., if > 1 + H we have a second steady state N⇤ = 1+H .
As before in order to investigate the stability of the steady states we compute the derivative
of the production function f which is given by
(1 + N 2 ) 2 N 2 (1 N 2 )
f 0 (N ) = H= H.
(1 + N 2 )2 (1 + N 2 )2
Case 1 H < H +1
Stability of the steady state N⇤ = 0:
f 0 (0) = H.
Thus the steady state is monotonically asymptotically stable for H < < H+! and stable
but not asymptotically stable for = H + 1.
Case 2 >H +1
Stability of the steady state N⇤ = 0:
f 0 (0) = H>1
r !
0 1 H 1 ( 1 H) / (1 + H)
f = 2 H (5.3.3)
1+H 1+( 1 H) / (1 + H)
( + 2 + 2H) / (1 + H)
= 2 H (5.3.4)
/ (1 + H)
( + 2 + 2H) / (1 + H)
= 2 H (5.3.5)
1/ (1 + H)
(1 + H) ( + 2 + 2H) H
= (5.3.6)
2 (1 + H)2 (1 + H) H
= . (5.3.7)
✓q ◆
1 H
Note f0 1+H is a decreasing function of for > 0 (checking this fact is left as an
exercise).
61
In order to ascertain the stability of this steady state as function of we proceed with the
following calculations
r !
0 1 H 2 (1 + H)2 (1 + 2H)
f = 1 () =1
1+H
() 2(1 + H)2 = (2 + 2H)
() = 1 + H,
and
r !
1 H 2 (1 + H)2 (1 + 2H)
f0 = 1 () = 1
1+H
() 2(1 + H)2 = 2 H
(1 + H)2
() = .
H
✓q ◆
1 H
Thus as f0 1+H is a decreasing function of we identify the following three cases.
q
1 H
Setting N⇤ = 1+H we have,
2
1. If 1+H < < (1+H) H then 1 < f 0 (N⇤ ) < 1 so the steady state is asymptotically stable.
(It is left as an exercise to check the steady state is monotonically asymptotically stable if
2 2(1+H)2 2
1 + H < < 2(1+H) 1+2H and oscillatory asymptotically stable if 1+2H < < (1+H)
H )
(1+H)2
2. If = H then f 0 (N⇤ ) = 1 and N⇤ is stable but not asymptotically stable.
(1+H)2
3. If > H then f 0 (N⇤ ) <
1 and N⇤ is unstable.
✓q ◆
0 1 H
Figure 5.13 shows a sketch of the function f 1+H for fixed H, varying .
As in Example 5.3.1, in Figure 5.14 we plot a bifurcation diagram for the model (5.3.2) that
depicts the stability of steady states as the bifurcation parameter varies.
5.3.3 Example. Harvesting model: periodic steady states. We recall the harvesting model
(5.3.2) given by,
Nn
Nn+1 = f (Nn ) = HNn , > H > 0.
1 + Nn2
We now wish to understand whether there exist periodic solutions when > (1+H)2 /H (recall
that from the analysis of Example 5.3.2 this implies the model has no stable steady states).
We focus on periodic solutions of period 2 (c.f., Definition 5.1.2). Such solutions satisfy
62
f0
1
=1+H = 2(1+H)2
(1+2H)
(1+H)2
= (H)
1
✓q ◆
1 H
Figure 5.13: Sketch of f0 1+H versus .
N⇤
(unstable)
q
1 H
N⇤ = 1+H (stable)
N⇤ = 0 (stable) (unstable)
H 1+H (H + 1)2 /H
Figure 5.14: Bifurcation diagram for the model (5.3.2) with bifurcation parameter .
63
Therefore, N1 = f (f (N1 )) = f 2 (N1 ) and N2 = f (f (N2 )) where we have introduced the
notation f 2 (N ) = f (f (N ). Hence N1 and N2 are steady states of the map f 2 , recalling that
M⇤ is a steady state of a map g if M⇤ = g(M⇤ ), we see that N1 and N2 satisfy
Ni = f 2 (NI ) (5.3.8)
⇣ ⌘
= f Ni /(1 + Ni2 ) HNi (5.3.9)
0 1
Ni /(1 + Ni2 ) HNi ⇣ ⌘
= @ 2
A H Ni /(1 + Ni2 ) HNi , (5.3.10)
1 + Ni /(1 + Ni2 ) HNi
for i = 1, 2. Note that if N⇤ is a steady state of f then it is also a steady state of f 2 as f 2 (N⇤ ) =
f (f (N⇤ )) = f (N⇤ ) = N⇤ . Thus the two steady states solve (5.3.8), any other solutions are
periodic steady states of (5.3.2) with period 2.
Figure 5.15: Asymptotic solution behaviour for the model (5.3.2) with control parameter .
Figure 5.15 shows the long time (large n) behaviour of solutions to the harvesting model
(5.3.2) as is increased. At = 4.5 = (1 + H)2 /H, the non-zero steady state loses stability
and simultaneously a period 2 solution emerges as increases further this solution becomes
64
unstable and progressively larger period (2k ) solutions emerge. This is referred to as period-
doubling or flip bifurcation. For even larger values of the solutions appear to exhibit chaotic
behaviour, with the appearance of a period-3 solution crucial (the analysis of chaotic behaviour
is beyond the scope of the current course).
(i) Show that the trivial steady state is asymptotically stable for 0 < µ < 1.
(ii) Show that the non-trivial steady state is asymptotically stable for 1 < µ < 3.
65
Chapter 6
We now consider how interactions between small numbers of species effect the population dy-
namics of those species in discrete time models.
z n+1 = M z n (6.1.1)
(M I) c = 0, (6.1.2)
det (M I) = 0. (6.1.3)
66
The equation (6.1.3) is a polynomial of degree m in that has m (possibly complex) roots.
Assume that all m roots are real and distinct. The general solution of (6.1.1) is
m
X
n
zn = Ai i ci ,
i=1
where i is the eigenvalue corresponding to the eigenvector ci . The Ai are arbitrary constants
that are determined by the initial data z 0 .
Note that
1. If | i | < 1 for all i = 1, 2, . . . , m then |z n | ! 0 as n ! 1.
2. If | i | 1 for all i = 1, 2, . . . , m with | i | = 1 for some i then z n tends to a constant
(or oscillatory vector) as n ! 1.
3. If | i | > 1 for any i 2 {1, 2, . . . , m} then |z n | ! 1 as n ! 1.
6.1.1 Example (Circulatory system). In the circulatory system, red blood cells (RBCs) are con-
tinuously being destroyed and replaced. Assume that the spleen filters out and destroys a certain
fraction of the cells every day and that the bone marrow produces a number proportional to the
number lost on the previous day. What is the RBC count on the n th day?
Let
67
thus 1 = ⇢ and 2 = 1.
For the eigenvalue 1 = ⇢, the corresponding eigenvector c1 is given by
! ! !
1 ⇢+⇢ 1 1 1 1
c1 = 0 =) c1 = 0 =) c1 =
⇢ ⇢ ⇢ ⇢ 1
Thus, (
Rn = ( ⇢)n A1 + A2
(6.1.5)
Mn = A1 ( ⇢)n + A2 ⇢
! !
Rn A2
As |⇢| < 1, ! as n ! 1. Hence the RBC levels are maintained. (Note
Mn A2 ⇢
we had | 1 | < 1 and 2 = 1, implying that the solution approached a constant asymptotically.)
Note: By considering the number of RBCs in circulation on day n+2, we are able to combine
the system of two difference equations into one second order difference equation. From the first
equation of (6.1.4) we have
Mn+1 = ⇢Rn ,
The equation (6.1.7) is a linear second order difference equation. To solve (6.1.7) we assume
the solution is of the form
Rn = n A
where is to be found and A is given by the problem data. Applying our ansatz in (6.1.7) we
have
n+2 n+1 n
A = (1 ⇢) A+⇢ A.
68
Which implies ⇣ ⌘
n 2
A + (⇢ 1) + ⇢ = 0.
We are interested in nontrivial solutions A 6= 0 hence we look for roots of the polynomial
2
+ (⇢ 1) + ⇢ = 0. (6.1.8)
The polynomial (6.1.8) is sometimes called the characteristic equation of (6.1.7). It may be
factorised to give
( + ⇢)( 1) = 0 =) 1 = ⇢ and 2 = 1.
Note the roots are the eigenvalues of the matrix A of the system of equations 6.1.4. In the case
that we have distinct real roots, as is the case here, the general solution is given by
n n
R n = A1 1 + A2 2 =) Rn = A1 ( ⇢)n + A2 ,
z n+1 = M z n ,
!
↵
where z n 2 R2 and M = is a 2 ⇥ 2 matrix with ↵, , , 2 R. The eigenvalues of
Thus,
2
(↵ + ) + (↵ )=0
2
=) + a + b = 0,
6.1.2 Lemma (Jury condtion). The roots of the polynomial of degree two, p( ) = 2 +a +b = 0
where a, b 2 R will satisfy | i | < 1 for i = 1, 2 if and only if
1. b < 1,
2. 1 + a + b > 0,
3. 1 a + b > 0.
69
Proof . The roots of p( ) are given by
p
a± a2 4b
1,2 = .
2
We will analyse the case of negative and nonegative discriminant separately.
1. a2 4b < 0, in this case the roots are a complex conjugate pair and since b is equal to the
product of the roots, we find that
2 2
b= 1 2 =| 1| =| 2| ,
as the roots are complex conjugate. Hence | i | < 1 for i = 1, 2 if and only if b < 1. We
now show that the last two inequalities of Lemma 6.1.2 are satisfied. We have that
2
a2 4b = |a| 2 4 1+b |a| ,
therefore,
a2 4b < 0
2
=) |a| 2 4 1+b |a| < 0 =) 1 + b |a| >0
=) 1 + b a > 0 and 1 + b + a > 0.
Hence 0 R < 1 if and only if |a| < 1 + b. This implies the latter two inequalities of
Lemma 6.1.2. To deduce the remaining inequality, i.e., b < 1, note that R < 1 implies
| i | < 1, i = 1, 2 which implies | 1 2 | < 1, thus
p p
a+ a2 4b a a2 4b a2 a2 4b
| 1 2| = = = |b| < 1.
2 2 4
70
The inequalities in the Jury conditions are strict, in the case of equality we have the following
results
6.1.3 Example (Circulation revisited). Recall that for the circulation example, the characteristic
polynomial used to determine the eigenvalues was
2
+ (⇢ 1) ⇢ = 0.
although the results may be extended to systems of m nonlinear difference equations with m 2
N.
6.2.1 Definition (Steady states). Steady states of (6.2.1) are constant vectors (N⇤ , P⇤ )T such
that (
N⇤ = f (N⇤ , P⇤ )
(6.2.2)
P⇤ = g(N⇤ , P⇤ ).
6.2.2 Definition (Local and asymptotic stability). A steady state (N⇤ , P⇤ )T of (6.2.1) is locally
stable if given any ✏ > 0 there exists a > 0 such that
71
Linearisation of systems of difference equations
Let (N⇤ , P⇤ )T be a steady state of (6.2.1). We wish to investigate the behaviour of solutions
close to the steady state value. Let Nn = N⇤ + ⌘n and Pn = P⇤ + n where (⌘n , n ) ⌧ 1.
Substituting into (6.2.1) gives
(
Nn+1 = N⇤ + ⌘n+1 = f (Nn , Pn ) = f (N⇤ + ⌘n , P⇤ + n )
(6.2.3)
Pn+1 = P⇤ + n+1 = g(Nn , Pn ) = g(N⇤ + ⌘n , P⇤ + n ).
We assume that the functions f and g are smooth. By Taylor expansion we have
(
@ @
f (N⇤ + ⌘n , P⇤ + n ) = f (N⇤ , P⇤ ) + @N f (N⇤ , P⇤ )⌘n + @P f (N⇤ , P⇤ ) n + O(⌘n2 , n2 )
@ @
g(N⇤ + ⌘n , P⇤ + n ) = g(N⇤ , P⇤ ) + @N g(N⇤ , P⇤ )⌘n + @P g(N⇤ , P⇤ ) n + O(⌘n2 , n2 ).
Hence neglecting the higher order terms and using the fact that N⇤ = f (N⇤ , P⇤ ) and P⇤ =
⌘n+1 , ˜n+1 )T ⇡ (⌘n+1 , n+1 )T
g(N⇤ , p⇤ ) as (N⇤ , P⇤ )T is a steady state, from (6.2.3) we have that (˜
satisfy (
⌘˜n+1 = @N @
f (N⇤ , P⇤ )˜ @
⌘n + @P f (N⇤ , P⇤ ) ˜n
(6.2.4)
˜n+1 = @
g(N⇤ , P⇤ )˜⌘n + g(N⇤ , P⇤ ) ˜n .
@
@N @P
z n+1 = J z n (6.2.5)
!
@ @
where the matrix J = @N f (N⇤ , P⇤ ) @P f (N⇤ , P⇤ ) is called the Jacobian and it is eval-
@ @
@N g(N⇤ , P⇤ ) @P g(N⇤ , P⇤ )
uated at the steady state (N⇤ , P⇤ )T .
Recall that the general solution of (6.2.5) is of the form
2
X
n
zn = Ai i ci ,
i=1
where 1,2 are the eigenvalues of the matrix J with corresponding eigenvectors c1,2 .
If | i | < 1 for i = 1, 2, then |z n | ! 0 as n ! 1. So the perturbations from the steady state
value decay asymptotically and the solution tends to the steady state (N⇤ , P⇤ )T as n ! 1.
If | i | > 1 for i = 1 or i = 2, then |z n | ! 1 as n ! 1. So the perturbations from the
steady state value grow and the solution moves away from the steady state (N⇤ , P⇤ )T .
3. stable if | i | 1 for i = 1, 2.
72
6.3 Models for interacting species
Interactions among species can be classified into three main types
3. Predation or parasitism: One species the predator or parasite has an inhibitory effect on
the other. The other species, the prey or host has a beneficial effect of the predator or
parasite.
Host-Parasitoid interactions
Parasitoids are creatures that have a free living and a parasitic life stage, e.g., some wasps and
flies. The free living adults lay eggs in a host (e.g., caterpillar), the eggs hatch and the young
develop eating the host and killing it. We shall derive a general model for such interactions.
Let, Hn : number of hosts at time n, Pn : number of parasitoids at time n, R0 0: per capita
reproductive ratio of the host in the absence of parasitism, c 0 the average number of eggs
laid by each parasitoid and f (H, P ) 2 [0, 1]: the fraction of hosts not parasitised. The number
of hosts not parasitised at time n is therefore given by
Hn f (Hn , Pn ),
Hn (1 f (Hn , Pn )).
6.3.1 Example (Nicholson-Bailey model). In this model the proportion of hosts that are not
parasitised is assumed to decay exponentially with the number of parasites, i.e., f (H, P ) =
f (P ) = e aP with a > 0. The resulting model is therefore,
(
Hn+1 = R0 Hn e aPn
(6.3.2)
Pn+1 = cHn (1 e aPn ),
73
which implies 8 ⇣ ⌘
<H 1 R e aP⇤ =0
⇤ 0
(6.3.4)
:P⇤ cH⇤ (1 e aP⇤ ) = 0.
Thus we have a trivial steady state corresponding to (H⇤ , P⇤ )T = 0. If there exists a solution to
8⇣ ⌘
< 1 R e aP⇤ =0
0
(6.3.5)
:P⇤ cH⇤ (1 e aP⇤ ) = 0,
then we may have a nontrivial steady state. From the first line of (6.3.5) we have
1
aP⇤
e =
R0
✓ ◆
1
=) aP⇤ = ln
R0
✓ ◆
1 1 1
=) P⇤ = ln = ln(R0 ).
a R0 a
Substituting this into the second line of (6.3.5) gives
1 ⇣ ⌘
ln(R0 ) = cH⇤ 1 e ln(R0 )
a ⇣ ⌘
= cH⇤ 1 eln(1/R0 )
✓ ◆
1
= cH⇤ 1 .
R0
Thus,
✓ ◆!
1 1
H⇤ = ln(R0 )/ c 1
a R0
R0 ln(R0 )
= .
ac(R0 1)
For biological relevance we require H⇤ , P⇤ 0 thus we require R0 > 1 which gives H⇤ > 0
and P⇤ > 0.
In summary the steady states of (6.3.2) correspond to (H⇤ , P⇤ )T = 0 and if R0 > 1 we have
a second biologically meaningful steady state given by
✓ ◆T
T R0 ln(R0 ) 1
(H⇤ , P⇤ ) = , ln(R0 )
ac(R0 1) a
In order to assess the stability of the steady states we compute the Jacobian
0 ⇣ ⌘ ⇣ ⌘ 1
@ aP @ aP
0 1
R0 He R0 He aP aP
B
B
@H
✓ ⇣ ⌘ ◆ @P
✓ ⇣ ⌘ ◆ C @ ⇣R0 e
C ⌘ aR0 He
A.
J (H, P ) = @ A= aP aP
@ aP @ aP c 1 e acHe
@H cH 1 e @P cH 1 e
74
Hence !
R0 0
J (0, 0) = .
0 0
Thus 1 = R0 and 2 = 0. Thus the trivial steady state (N⇤ , P⇤ )T = 0 is asymptotically stable
if R0 < 1, stable but not asymptotically stable if R0 = 1 and unstable if R0 > 1.
⇣ ⌘T
At the nontrivial steady state, (H⇤ , P⇤ )T = R 0 ln(R0 ) 1
ac(R0 1) a , ln(R 0 ) we have
acH⇤
Tr(J ⇤ ) = 1 +
R0
✓ ◆
acH⇤ 1
det(J ⇤ ) = + caH⇤ 1 = acH⇤ .
R0 R0
R0 ln(R0 )
Recall H⇤ = ac(R0 1) , hence
R0 ln(R0 )
det(J ⇤ ) = acH⇤ = > 1,
R0 1
since for R0 > 1,
1 R0 ln(R0 )
ln(R0 ) > 1 =) R0 ln(R0 ) > R0 1 =) > 1.
R0 R0 1
Hence the first of the Jury conditions c.f., Lemma 6.1.2 is not satisfied. The remaining two
conditions are however satisfied as
acH⇤ acH⇤
Tr(J ⇤ ) = 1 + =1+ < 1 + det(J ⇤ )
R0 R0
⇣ ⌘T
R0 ln(R0 ) 1
if R0 > 1. Thus the nontrivial steady state (H⇤ , P⇤ )T = ac(R0 1) , a ln(R0 ) is unstable.
75
Chapter 7
A solution N ⇤ to a delay difference equation of the form (7.0.1) is called a steady state solution
if the solution to (7.0.1) with initial data N ⇤ satisfies
Nn = N ⇤ for all n,
that is, if
N ⇤ = f (N ⇤ , N ⇤ ).
7.0.1 Example (Delay difference logistic equation). The delay difference logistic equation reads
as
Nn+1 = f (Nn , Nn 1 ) = rNn (1 Nn 1 ) (7.0.2)
and admits two steady state solutions, i.e.,
1
N ⇤ = 0 and N⇤ = 1 ,
r
which can be obtained by solving the algebraic equation
N ⇤ = rN ⇤ (1 N ⇤ ).
We will now show via linear stability analysis that the solutions of delay difference equations
can exhibit periodic oscillations.
Nn = N ⇤ + ⌘n
76
where ⌘n is a small perturbation, i.e., |⌘n | ⌧ 1. Substituting this ansatz into (7.0.1) yields
N ⇤ + ⌘n+1 = f (N ⇤ + ⌘n , N ⇤ + ⌘n 1 ).
⌘n+1 = f (N ⇤ , N ⇤ ) N ⇤ + ⌘n @1 f (N ⇤ , N ⇤ ) + ⌘n 1 @2 f (N
⇤
, N ⇤ ) + O(⌘n2 ),
| {z }
=0
where @i denotes the partial derivative with respect to the i0 th argument. Therefore, neglecting
the (small) higher order terms, we obtain the following linearised delay difference equation
governing the evolution of ⌘n
⌘n+1 = ⌘n @1 f (N ⇤ , N ⇤ ) + ⌘n 1 @2 f (N
⇤
, N ⇤ ). (7.1.1)
7.1.1 Example (Linear stability analysis of the delay difference logistic equation). For the delay
difference logistic equation (7.0.2) we have
@1 f (N ⇤ , N ⇤ ) = r(1 N ⇤) and @2 f (N ⇤ , N ⇤ ) = rN ⇤ .
1
In the case where N ⇤ = 1 the above difference equation for ⌘n reads as
r
⌘n+1 = ⌘n + (1 r)⌘n 1.
Let
⌘n+1 = 'n
then
'n+1 = 'n + (1 r)⌘n .
The system of difference equations
(
⌘n+1 = 'n
'n+1 = 'n + (1 r)⌘n
77
1
We will now use the Jury conditions to evaluate the stability of the steady state N ⇤ = 1 .
r
Since
Tr J⇤ = 1 and det J⇤ = r 1,
the eigenvalues of J⇤ are the roots of the polynomial
2
+ (r 1) = 0.
that is,
1 < r < 2.
Since p
5 4r 1±
1,2, =
2
when 1 < r < 5/4 the eigenvalues 1 and 2 will be real and positive. Using the fact that
n n
⌘n = A 1 +B 2
⌘n ! 0 monotonically as n ! 1.
On the other hand, when 5/4 < r < 2 the eigenvalues 1 and 2 will be complex conjugate,
that is, p
1 ± i 4r 5
1,2 = .
2
Let 1 = ⇢e i✓ and 2 = ⇢ei ✓ , then
p
2 ⇢ei ✓ = 1 + i 4 r 5.
p
Equating the magnitude of 2 ⇢ei ✓ and 1 + i 4 r 5 gives
p p
2⇢ = 1 + (4 r 5) ) ⇢ = r 1.
p
Moreover, equating the real parts and the imaginary parts of 2 ⇢ei ✓ and 1 + i 4r 5 yields
p
2 ⇢ cos(✓) = 1 and 2 ⇢ sin(✓) = 4 r 5.
Hence
sin(✓) p p
tan(✓) = = 4r 5 ) ✓ = arctan( 4 r 5).
cos(✓)
Notice that ⇢ and ✓ are increasing functions of r. Since 5/4 < r < 2 we have
78
Using the fact that
n n
⌘n = A 1 +B 2 = A⇢n e in✓
+ B⇢n ei n ✓
and letting
A=a ib and B = a + ib
we find
⌘n = 2 ⇢n a cos(n✓) + i b sin(n✓) .
Since 1/2 < ⇢ < 1 and 0 < ✓ < ⇡/3, if 5/4 < r < 2 then ⌘n will undergo damped oscillations
(i.e. the amplitude of the oscillations will tend to zero as n ! 1) of wavelength
✓ ◆
2⇡ 2⇡ 2⇡
2 , = (6, 1).
✓ ⇡/3 0
On the contrary, at the bifurcation to instability (i.e., when r = 2) periodic oscillations of period
6 will emerge.
79
Appendix A
Background theory
In this Chapter we state (without proof) some theoretical results that are of use.
Consider a steady state N ⇤ = (N⇤ , M⇤ )T of a two-component system
dN
= f (N, M )
dt
dM
= g(N, M ).
dt
The fact that linear stability analysis tells us something relevant about the stability of the steady
state is ensured by the following theorem.
A.1 Theorem (Hartman-Grobaman theorem). Assume the steady state N ⇤ is such that the Jac-
obian matrix evaluated at the steady state has eigenvalues with non-zero real part. Then in
a neighbourhood of the steady state, there is a continuous mapping from the solution of the
linearised problem to the solution of the original nonlinear system.
A.1.1 Remark (Interpretation of the Hartman-Grobman theorem). The theorem, essentially tells
us that qualitatively the inferences from linear stability analysis are valid in a neighbourhood
of the steady state. It is a rigorous justification of our formal Taylor expansion in which we
neglected the higher order terms.
Similar results are available for systems of difference equations (the requirement now is that
the Jacobian matrix has eigenvalues that do not lie on the unit circle, i.e., 1,2 6= 1) and for
delay differential equations.
Note that the Hartman-Grobman theorem tells us nothing in the case that the eigenvalues
have zero real part. We understand such a setting with the aid of the Hopf bifurcation theorem,
which we state in an informal way in the following.
Consider a steady state N ⇤ two component system of the form
dN
= f (N , p),
dt
where p 2 R is a parameter, that we will regard as a bifurcation parameter. A Hopf bifurcation
is said to occur if a pair of complex conjugate eigenvalues of the Jacobian matrix of the system
80
evaluated at N⇤ crosses the imaginary axis with nonzero speed. Let J p0 (N⇤ ) denote the Jacobian
matrix evaluated at the steady state N⇤ .
A Hopf bifurcation occurs at the point p0 if
• The eigenvalues 1,2 are complex in a neighbourhood of p0 , i.e., 1,2 (p) = ↵(p) ± (p)i
in a neighbourhood of p0 .
• ↵(p) = 0 at p = p0 .
and
• @p ↵(p) 6= 0 at p = p0 .
If such a bifurcation occurs, an asymptotically stable steady state loses stability and the Hopf
bifurcation theorem in fact says that for values of p close to p0 a limit cycle or periodic solution
arises, which may or may not be stable.
81
Bibliography
Donald Ludwig, Dixon D Jones, and Crawford S Holling. Qualitative analysis of insect outbreak
systems: the spruce budworm and forest. The Journal of Animal Ecology, pages 315–332,
1978.
Murray R Spiegel. Theory and problems of calculus of finite differences and difference equa-
tions. McGraw-Hill, 1971.
82