IB Maths AA HLTopic 5 — CalculusPaper 1 & 2HL~12 min read
The Logistic Equation
Pure exponential growth dN/dt = kN predicts unlimited growth — unrealistic for any real population. The logistic equation dN/dt = kN(a − N) builds in a carrying capacity a. Growth is rapid when N is small, slows as N approaches a, and stops at N = a. The solution curve is the famous S-shape. Solving uses separation of variables + partial fractions.
📘 What you need to know
Standard logistic equation: dN/dt = kN(a − N), where k > 0 sets the growth rate and a > 0 is the carrying capacity (maximum population).
Identify by factoring: an equation like dN/dt = αN − βN² factors as βN(α/β − N), so k = β and a = α/β.
Solve by separation + partial fractions: 1/[N(a − N)] = (1/a)[1/N + 1/(a − N)]. The partial fraction step is essential.
Three behaviour regimes: if 0 < N0 < a, population grows toward a (S-curve); if N0 > a, population decays toward a; if N0 = 0 or a, population stays constant.
Long-term behaviour: lim t → ∞ N(t) = a (the carrying capacity, regardless of starting value > 0).
Small N approximation: when N ≪ a, the equation behaves like dN/dt ≈ kaN (pure exponential with rate ka).
Inflection point: at N = a/2 (half the carrying capacity) — the growth rate dN/dt is maximum here.
Exam questions often ask: solve for N(t); find N at a specific time; find time to reach a specific N; find carrying capacity from the equation or long-term behaviour.
The S-curve and what each piece means
Standard logistic equationdNdt = kN(a − N) with k > 0, a > 0
For small N, the logistic curve closely follows the pure exponential (orange dashed). But as N approaches the carrying capacity a = 1000, the logistic levels off into the characteristic S-shape, while the exponential predicts unbounded growth (off the chart). The inflection point at N = a/2 marks the moment of fastest growth.
The factoring trick — recognizing logistic form
Logistic form
dN/dt = kN(a − N)
Two factors: N (current population) and (a − N) (room remaining). Growth rate maximized at N = a/2.
Expanded form (often given in questions)
dN/dt = αN − βN²
Factor out: = βN(α/β − N). So k = β and a = α/β. Always factor out the coefficient of N² to find k.
Example: dN/dt = 0.1N − 0.0002N² = 0.0002N(500 − N). So k = 0.0002 and a = 500. The carrying capacity 500 is the ratio of the two original coefficients: 0.1 / 0.0002 = 500.
🧭 Recipe — solving the logistic equation
Identify k and a. Factor dN/dt = kN(a − N). Note the initial condition N(0) = N0.
Separate variables: 1/[N(a − N)] dN = k dt.
Apply partial fractions: 1/[N(a − N)] = (1/a)[1/N + 1/(a − N)]. Integrate both sides: (1/a)[ln N − ln(a − N)] = kt + c.
Multiply by a and exponentiate: ln[N/(a − N)] = akt + c′ → N/(a − N) = A·eakt.
Apply IC to find A, then solve for N: N = a·A·eakt / (1 + A·eakt). Interpret in context (carrying capacity, time-to-reach).
Worked examples
WE 1
Identify k and a from expanded form
Show that dN/dt = 0.1N − 0.0002N² is a logistic equation, and state the values of k and the carrying capacity a.
Step 1 — factor out N0.1 N – 0.0002 N² = N(0.1 – 0.0002 N)Step 2 — factor the coefficient of N out of the bracketN(0.1 – 0.0002 N) = 0.0002 N (0.1/0.0002 – N) = 0.0002 N (500 – N)Step 3 — compare with standard form k N(a – N)⟹ k = 0.0002, a = 500k = 0.0002, a = 500 (carrying capacity)the carrying capacity is the ratio of the two original coefficients: a = (coeff of N) / (coeff of N²) = 0.1/0.0002 = 500. Once you spot this, you can read off a immediately without doing the factor explicitly.
WE 2
Setup from words
A population N is modelled by logistic growth with carrying capacity 5000 and growth constant 0.0005. Initially there are 100 individuals. Write down the DE and the initial condition.
Step 1 — apply standard logistic form dN/dt = kN(a – N)k = 0.0005, a = 5000Step 2 — write the DE and ICdN/dt = 0.0005 N (5000 – N)N(0) = 100dNdt = 0.0005 N(5000 − N), N(0) = 100in IB exam questions, the constants k and a are typically given numerically; your job is to plug them into the standard form and add the IC. Easy marks if you recognize the structure.
WE 3
Full solve — separation + partial fractions
Solve dN/dt = 0.001N(2000 − N) given N(0) = 500. Express your answer in the form N(t) = … .
Step 1 — separate variables1/(N(2000-N)) dN = 0.001 dtStep 2 — partial fractions1/(N(2000-N)) = A/N + B/(2000-N)1 = A(2000-N) + BNN=0: A = 1/2000; N=2000: B = 1/2000⟹ 1/(N(2000-N)) = (1/2000)[1/N + 1/(2000-N)]Step 3 — integrate both sides(1/2000)[ln N – ln|2000-N|] = 0.001 t + cMultiply by 2000:ln|N/(2000-N)| = 2t + c’N/(2000-N) = A e^(2t) (drop modulus, 0 < N < 2000)Step 4 — apply IC N(0) = 500500/(2000-500) = 500/1500 = 1/3 = AN/(2000-N) = (1/3) e^(2t)Step 5 — solve for N3N = (2000-N) e^(2t)3N + N e^(2t) = 2000 e^(2t)N(3 + e^(2t)) = 2000 e^(2t)N(t) = 2000 e²ᵗ3 + e²ᵗverify: N(0) = 2000·1/(3+1) = 500 ✓. The key step is partial fractions — without it, you can’t integrate 1/[N(a-N)]. Multiplying by a after integrating is the standard cleanup move.
WE 4
Find population at given time, and carrying capacity
Continuing from WE 3, where N(t) = 2000e²ᵗ/(3 + e²ᵗ):
(a) Find N(1) to the nearest whole number.
(b) Find the carrying capacity by taking the limit as t → ∞.
(a) Step 1 — substitute t = 1N(1) = 2000 e² / (3 + e²)e² ≈ 7.389N(1) ≈ 2000(7.389) / (3 + 7.389) = 14778 / 10.389 ≈ 1422.47(a) N(1) ≈ 1422(b) Step 1 — take limit as t → ∞lim t→∞ N(t) = lim 2000 e^(2t) / (3 + e^(2t))Divide top and bottom by e^(2t):= lim 2000 / (3/e^(2t) + 1)As t → ∞, 3/e^(2t) → 0:= 2000 / (0 + 1) = 2000(b) Carrying capacity = 2000the carrying capacity 2000 also appears DIRECTLY in the original DE as the “(2000 − N)” factor. You can read off a from the DE without solving — but the limit confirms it.
WE 5
Inverse problem — find time to reach a given N
Using the same model N(t) = 2000e²ᵗ/(3 + e²ᵗ), find the value of t at which N = 1500.
Step 1 — set N(t) = 1500 and solve1500 = 2000 e^(2t) / (3 + e^(2t))1500(3 + e^(2t)) = 2000 e^(2t)4500 + 1500 e^(2t) = 2000 e^(2t)4500 = 500 e^(2t)e^(2t) = 9Step 2 — take ln of both sides2t = ln 9 = 2 ln 3t = ln 3t = ln 3 ≈ 1.10verify: at t = ln 3, e^(2t) = e^(2 ln 3) = e^(ln 9) = 9. Then N = 2000(9)/(3+9) = 18000/12 = 1500 ✓. The inverse problem (given N, find t) shows up regularly on Paper 2.
WE 6
Compare logistic vs pure exponential
A population satisfies dN/dt = 0.002N(1000 − N) with N(0) = 50. The solution is N(t) = 1000e²ᵗ/(19 + e²ᵗ).
Compare N(2) under this logistic model with the prediction of pure exponential growth dN/dt = 2N (same small-N rate) with the same IC.
Step 1 — small-N approximationFor N ≪ 1000: dN/dt ≈ 0.002 · N · 1000 = 2N⟹ pure exponential: N_exp(t) = 50 e^(2t)Step 2 — compute both at t = 2e⁴ ≈ 54.598Logistic: N(2) = 1000(54.598) / (19 + 54.598) = 54598 / 73.598 ≈ 741.8Exponential: N_exp(2) = 50(54.598) ≈ 2729.9Step 3 — interpretLogistic prediction: ≈ 742 (saturating below carrying capacity 1000)Exponential prediction: ≈ 2730 (already 2.7× the carrying capacity — impossible)Logistic N(2) ≈ 742; pure exponential predicts ≈ 2730 — the logistic shows realistic saturation as N approaches 1000.pure exponential growth is only a good approximation when N is small relative to the carrying capacity. At t=2 the logistic has reached ≈74% of capacity, where the slowdown is dominant. Logistic is the realistic model; exponential breaks down past N ≈ a/2.
💡 Top tips
Spot the carrying capacity at once: in dN/dt = αN − βN², the carrying capacity is α/β. The growth rate constant k is β.
Read a off the (a − N) factor: when the DE is given in the form kN(a − N), the number subtracted from N IS the carrying capacity.
Partial fractions decomposition: 1/[N(a − N)] = (1/a)[1/N + 1/(a − N)]. Memorize this — it’s the same pattern every time.
Multiply by a after integrating to clean up the 1/a coefficient, then exponentiate. Watch the sign in ln(a − N) when differentiating — you get an extra minus.
Limit confirms carrying capacity: lim t → ∞ N(t) = a. Divide top and bottom by the dominant eakt to evaluate cleanly.
⚠ Common mistakes
Sign error in ln(a − N): when integrating 1/(a − N) dN, the answer is −ln|a − N|, not +ln|a − N| (chain rule with d/dN(a − N) = −1).
Skipping partial fractions: 1/[N(a − N)] is NOT 1/N · 1/(a − N) for integration purposes — you must split via partial fractions first.
Forgetting to multiply by a after integrating: the (1/a) factor from partial fractions stays unless you clear it before exponentiating, leading to confusing exponents.
Confusing the exponent: in Aeakt, the exponent has BOTH a AND k (because of the multiply-by-a step). Many students write just ekt and lose marks.
Mixing up k and a: in dN/dt = 0.001N(2000 − N), k = 0.001 (small) and a = 2000 (large). Don’t swap them.
You’ve finished the Differential Equations chapter! 🎉 You’ve now covered all four analytical techniques (separation, integrating factor, homogeneous substitution, logistic), plus Euler’s numerical method, plus a modelling toolkit for translating real-world rate problems into DEs. The next AA HL chapter in Topic 5 is Maclaurin Series — using polynomial expansions to approximate functions near x = 0. After that comes l’Hôpital’s Rule & Maclaurin for Limits, which uses these series to evaluate tricky indeterminate-form limits.
Need help with Calculus?
Get 1-on-1 help from an IB examiner who knows exactly what Paper 1 & 2 are looking for.