From a Logistic Rate to a Population Estimate
A logistic differential equation describes a population whose growth slows as it approaches a limiting size. If \(P(t)\) is the population at time \(t\), \(r\) is the positive growth-rate constant, and \(K\) is the positive carrying capacity, the model is
The derivative gives the population's instantaneous rate of change. In an Euler approximation, we use that rate at the beginning of a time step to estimate the population change over the whole step. The result is a sequence of estimates, not a claim that the population follows a straight line throughout each interval.
Why This Recurrence Is the Euler Method
For a differential equation \(P'=F(t,P)\), a forward Euler step estimates the next value by adding \(h\) times the current rate: \(P_{n+1}=P_n+hF(t_n,P_n)\). In the logistic model, the rate depends on \(P_n\) but not explicitly on time, so \(F(t_n,P_n)=rP_n(1-P_n/K)\). Substituting this expression gives the recurrence in the definition.
The factor \(h\) is essential. The logistic expression gives a rate of population change per unit time; multiplying by a time interval estimates a change in population. At every step, Euler holds the rate at its value at the start of the step for the purpose of that update.
For units, if \(P\) is measured in individuals and \(t\) in years, then \(r\) has units of inverse years. The product \(rP\) has units of individuals per year, and \(hrP\) has units of individuals. The quantity \(P_{n+1}\) is therefore a population estimate, as required.
Worked Example: Two Steps with a Half-Year Time Increment
Worked Example: Two Steps with a Half-Year Time Increment
A population follows the logistic model with \(P_0=200\) individuals, carrying capacity \(K=1000\) individuals, and growth constant \(r=0.5\) per year. Use Euler's method with \(h=0.5\) year to estimate the population at \(t=0.5\) and \(t=1\) year.
At the start, \(t_0=0\) and \(P_0=200\). The rate at this estimated population is
So the estimated rate is \(80\) individuals per year. Over \(0.5\) year, Euler estimates a change of \(0.5(80)=40\) individuals. Therefore,
At \(t_1=0.5\) year, use \(P_1=240\) to calculate the next rate:
This is \(91.2\) individuals per year. The estimated change over the next half-year is \((0.5)(91.2)=45.6\) individuals, so
The Euler estimates are \(240\) individuals at \(0.5\) year and \(285.6\) individuals at \(1\) year. The second update checks directly: \(285.6-240=45.6\), exactly the change calculated from the rate at the start of that step.
Reading Each Step in Context
The recurrence has a consistent interpretation: begin with the current estimate, calculate the model's rate there, multiply by the time increment, and add the resulting estimated change. The rate is recalculated for every step; the first step's rate is not reused at later times.
At step \(n\), use \(P_n\), the estimated population at time \(t_n\).
Calculate \(rP_n(1-P_n/K)\), in population units per unit time.
Multiply by \(h\) to estimate the change over that interval.
Add the estimated change to \(P_n\) to obtain \(P_{n+1}\).
Worked Example: Tracking a Population Over Four Months
Worked Example: Tracking a Population Over Four Months
Suppose \(P_0=80\) individuals, \(K=800\) individuals, and \(r=0.25\) per month. Use a step of \(h=2\) months to estimate the population at \(t=2\) and \(t=4\) months.
For the first step, the rate at \(P_0=80\) is
Thus, the initial rate is \(18\) individuals per month. The estimated change over two months is \(2(18)=36\) individuals, giving
For the second step, the rate must be evaluated at the updated estimate \(P_1=116\):
The rate is \(24.795\) individuals per month. Over two months, the estimated change is \(2(24.795)=49.59\) individuals. Therefore,
At the end of the two Euler steps, the estimate is \(165.59\) individuals at \(t=4\) months. The final update checks because \(165.59-116=49.59\), the change obtained by multiplying the second-step rate by two months.
A calculated estimate may be fractional even when actual individuals are counted in whole numbers. It is reasonable to preserve the unrounded estimate during the recurrence and round only if the problem asks for a whole-number population. Rounding at each intermediate step can change later estimates.
How a Step Can Pass the Carrying Capacity
For a population estimate below \(K\), the logistic rate is positive, so an Euler step increases the estimate. But the recurrence uses the rate at the start of the interval. If the step is large, that rate may predict an increase that carries the estimate above \(K\).
This behavior can be described precisely. Suppose \(0<P_n<K\), and set \(x_n=P_n/K\) and \(q=rh\). Dividing the recurrence by \(K\) gives
Subtracting this expression from \(1\) yields
Since \(0<x_n<1\), the first factor \(1-x_n\) is positive. Thus the next estimate stays strictly below carrying capacity exactly when \(1-qx_n>0\), or \(rh(P_n/K)<1\). If \(rh(P_n/K)>1\), the next estimate exceeds \(K\). This condition concerns one Euler update; it is not a statement that every choice of step size will behave well over a long calculation.
Worked Example: A Large Step Overshoots
Worked Example: A Large Step Overshoots
Take \(P_0=800\) individuals, \(K=1000\) individuals, \(r=1\) per year, and a step of \(h=2\) years. Calculate the first Euler estimate and check whether it remains below carrying capacity.
The rate at the starting estimate is
This is \(160\) individuals per year. Over two years, Euler estimates an increase of \(2(160)=320\) individuals. Hence
The estimate \(1120\) exceeds the carrying capacity of \(1000\). Indeed, \(rh(P_0/K)=(1)(2)(0.8)=1.6>1\), so the one-step condition predicts an overshoot.
If another two-year step is applied mechanically, the rate at \(1120\) is \(1(1120)(1-1.12)=-134.4\) individuals per year. The next estimate is \(1120+2(-134.4)=851.2\) individuals. This drop illustrates how a large step can make successive estimates swing across the carrying capacity. It is a warning about the numerical update, not a claim that the population truly changes in this way.
A Common Mistake: Forgetting to Multiply by the Time Step
The logistic expression gives a rate, not the population change by itself. In the four-month example, the initial rate was \(18\) individuals per month and the step lasted two months. Writing \(P_1=80+18=98\) incorrectly treats a monthly rate as a two-month change. The units expose the error: individuals plus individuals per month is not a population.
The correct update includes the time increment:
Before calculating, check that \(h\) and \(r\) use compatible time units. For example, a step measured in months must be paired with a growth constant per month, or the units must first be converted consistently.
What the Euler Estimates Mean
Each \(P_n\) is an approximate population assigned to the grid time \(t_n=t_0+nh\). The calculation uses the model's current rate to estimate the change across the next fixed interval. A smaller time increment gives more frequent updates; a larger increment uses the starting rate over a longer interval and can behave poorly, as an overshoot example shows.
Check Your Understanding
Use the recurrence and show enough work to make each update clear.
- For \(P_0=100\), \(K=500\), \(r=0.2\) per year, and \(h=1\) year, calculate \(P_1\).
- In the recurrence, what does \(rP_n(1-P_n/K)\) represent, and why is it multiplied by \(h\)?
- For \(P_n=400\), \(K=500\), and \(rh=1\), will the next estimate be below, equal to, or above carrying capacity? Use the one-step condition.
- Explain why a fractional Euler estimate does not necessarily mean that a real population contains a fractional individual.
- Identify the unit error in adding a rate measured in individuals per month directly to a population measured in individuals.