Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Discretization

We consider the initial value problem:

dudt=f(t,u),u(t0)=u0\frac{du}{dt} = f(t, u), \quad u(t_0) = u_0

where uu may be a vector. We assume ff is Lipschitz continuous, guaranteeing a unique solution.

The solution u(t)u(t) is a continuous function, but computers work with discrete data. We discretize the time interval [t0,te][t_0, t_e] into a lattice:

t0<t1<t2<<tN=tet_0 < t_1 < t_2 < \cdots < t_N = t_e

with step sizes hn=tn+1tnh_n = t_{n+1} - t_n. For simplicity, we often use uniform spacing hn=hh_n = h.

A discretization method associates to each lattice a lattice function:

unu(tn),n=0,1,,Nu_n \approx u(t_n), \quad n = 0, 1, \ldots, N

We store only the values {u0,u1,,uN}\{u_0, u_1, \ldots, u_N\}—a finite amount of data representing the continuous solution.

The simplest methods replace derivatives with finite differences:

dudtun+1unh\frac{du}{dt} \approx \frac{u_{n+1} - u_n}{h}

This immediately gives forward Euler: un+1=un+hf(tn,un)u_{n+1} = u_n + h f(t_n, u_n).

The Error Framework for ODEs

The error analysis for ODE solvers mirrors the structure we have seen throughout the course:

ConceptODE Numerics
Per-step accuracyLocal truncation error τn=O(hp)\tau_n = O(h^p)
Global errorEn=unu(tn)E_n = u_n - u(t_n)
Problem sensitivityCondition number eLTe^{LT} (from Lipschitz constant LL)
StabilityAmplification factor 1+hλ1\lvert 1 + h\lambda \rvert \leq 1

Every numerical method introduces local truncation error at each step. The central question: does this error accumulate controllably, or does it explode?

Global error    eLTproblem sensitivity  ×  O(hp)per-step accuracy\text{Global error} \;\leq\; \underbrace{e^{LT}}_{\text{problem sensitivity}} \;\times\; \underbrace{O(h^p)}_{\text{per-step accuracy}}

The factor eLTe^{LT} depends on the problem (its Lipschitz constant LL and integration time TT). Whether the method amplifies or damps these errors depends on the amplification factor, which must stay bounded for the method to be useful. This is the stability requirement.

For stiff problems, where λ|\lambda| is large, explicit methods require impractically small step sizes for stability even when accuracy would permit larger steps. Implicit methods handle such problems gracefully.

Learning Outcomes

After completing this chapter, you should be able to: