Page - 211 - in Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python 3.6, Volume Second Edition
Image of the Page - 211 -
Text of the Page - 211 -
8.2 PopulationGrowth:AFirstOrderODE 211
easily deal with almost any differential equation! This is exactly the topic of the
presentchapter.
8.2.1 DerivationoftheModel
It can be instructive to show how an equation like (8.1) arises. Consider some
population of an animal species and let N(t) be the number of individuals in
a certain spatial region, e.g. an island. We are not concerned with the spatial
distributionof theanimals, just thenumberof theminsomeregionwherethereisno
exchangeof individualswithotherregions.DuringatimeintervalΔt, someanimals
willdieandsomewillbeborn.Thenumbersofdeathsandbirthsareexpected tobe
proportional toN. For example, if there are twice as many individuals, we expect
them to get twice as many newborns. In a time intervalΔt, the net growth of the
populationwill thenbe
N(t+Δt)−N(t)= b¯N(t)− d¯N(t),
where b¯N(t) is the number of newborns and d¯N(t) is the number of deaths. If
we double Δt, we expect the proportionality constants b¯ and d¯ to double too, so
it makes sense to think of b¯ and d¯ as proportional to Δt and “factor out” Δt.
That is, we introduce b = b¯/Δt and d = d¯/Δt to be proportionality constants
for newborns and deaths independent of Δt. Also, we introduce r = b − d,
which is the net rate of growth of the population per time unit. Our model then
becomes
N(t+Δt)−N(t)=ΔtrN(t). (8.2)
Equation (8.2) is actually a computational model. GivenN(t), we can advance
thepopulationsize by
N(t+Δt)=N(t)+ΔtrN(t).
This is called a difference equation. If we knowN(t) for some t, e.g.,N(0)=N0,
wecancompute
N(Δt)=N0+ΔtrN0,
N(2Δt)=N(Δt)+ΔtrN(Δt),
N(3Δt)=N(2Δt)+ΔtrN(2Δt),
...
N((k+1)Δt)=N(kΔt)+ΔtrN(kΔt),
Programming for Computations – Python
A Gentle Introduction to Numerical Simulations with Python 3.6, Volume Second Edition
- Title
- Programming for Computations – Python
- Subtitle
- A Gentle Introduction to Numerical Simulations with Python 3.6
- Volume
- Second Edition
- Authors
- Svein Linge
- Hans Petter Langtangen
- Publisher
- Springer Open
- Date
- 2020
- Language
- English
- License
- CC BY 4.0
- ISBN
- 978-3-319-32428-9
- Size
- 17.8 x 25.4 cm
- Pages
- 356
- Keywords
- Programmiersprache, Informatik, programming language, functional, imperative, object-oriented, reflective
- Category
- Informatik