Modeling Population Growth using Euler's Method
In section 7.4 of your text you studied problems of exponential growth. If, for example, the population of the United States is represented as a function
, then the basic assumption made in 7.4 is that
satisfies the differential equation
where
is a constant for the population, called the
growth constant
. For example for a population with a birth rate
0.025 (meaning that 2.5% of the people have a child in a given year) and a death rate
0.01, the growth constant would be
0.015. The assumption that the rate of increase of a population is proportional to the size of the population is often called the
Malthus model
, after the English demographer Thomas Malthus who, in the late 18th century used such models to predict future world populations.
You now know that the equation
can be solved explicitly in terms of the natural exponential function. The solution is
, where
is an arbitrary constant usually determined from the initial size of the population. If for example we assume that the population of the United States was 250 million in 1990 and that the growth constant is
0.015, then the population at any future time
is given by
. How realistic does this seem? What population does this predict for the year 2001? For the year 2100? For the year 2500? Is the basic Malthus model a good predictor of future populations, or can better models be devised? You will explore this question as part of CSC #4.
We conclude this worksheet by applying Euler's method to the differential equation
. We do this by copying the program for Euler's Method and changing the first four lines. Experiment with the values of
and maxI. Do you believe that the current growth rate of 0.015 can continue until the year 2100?
>
k:=0.015;
f:=(t,y)->k*y;
P0:=[1990,250];
endOfInterval:=2100;
numPts:=100;
Euler:=P->[P[1]+deltaI,P[2]+deltaI*f(P[1],P[2])]:
deltaI:=evalf((endOfInterval-P0[1])/numPts):
with(math3):
clear(i):
soln:=iterate(Euler,P0,numPts):
plot(soln);;
Go back