Stiffness and implicit methods

Level AdvancedDifficulty ★★★★★Concept⌖ Open in the map

What is it?

Systems with very different time scales (a stiff spring on a slow body) force explicit methods to take tiny steps just to stay stable. Implicit methods, yk+1=yk+hf(yk+1)y_{k+1} = y_k + h f(y_{k+1}), are stable for any step at the price of solving an equation each step.

Formulas

yk+1=yk+h f(tk+1,yk+1),y′=λy⇒yk+1=yk1−hλy_{k+1} = y_k + h\,f(t_{k+1}, y_{k+1}), \qquad y' = \lambda y \Rightarrow y_{k+1} = \frac{y_k}{1 - h\lambda}
implicit Euler: stable for every h>0h > 0 when λ<0\lambda < 0

Where it shows up in computing

  • Physics engines★★★★★frequentPhysics and simulation

    Cloth and soft bodies use implicit integration (Baraff–Witkin) so stiff springs do not explode.

  • Scientific computing★★★★★frequentScientific computing and algorithms

    Chemical kinetics and circuit simulation (SPICE) rely on stiff solvers (BDF, Rosenbrock).

Where is it used?

Computing topics reachable from here, through the chain of ideas that leads to them:

This page has the essentials. A fuller treatment (intuition, formal definition, worked example) is on the way.

↑ ↓ to navigate · ↵ · Esc