An explicit solver can creep forward in tiny steps while the curve it computes looks as gentle as a cosine wave. The usual reason is a fast decaying mode in the equation, which the solution of interest never displays but the method still has to handle at every step. Throughout, is the independent variable and . This lesson measures what one step of a method does to such a mode, explains why explicit Euler fails at steps that look harmless, and shows what the implicit Euler method repairs and what it leaves open.
Key terms
Stiffness
Definition An initial-value problem is stiff on an interval when some of its modes decay much faster than the solution being followed changes, so that stability, rather than the accuracy needed for that solution, forces an explicit method to take very small steps. For a linear system with a constant matrix , the fast modes belong to eigenvalues of with and large compared with the rates at which the solution itself varies. For a nonlinear system , the eigenvalues of the Jacobian matrix along the solution play the same role as a local guide. Stiffness is a practical judgment that depends on the interval, the accuracy required and the method, not a property that one formula decides.
In plain words The answer you want moves slowly, but the equation pulls every nearby solution back toward it very hard. An explicit method feels that pull at every step, and its numbers blow up unless the step is tiny, even though the curve itself would allow much larger steps.
Example For consider
The function solves it, because its derivative equals the right side when , and . For any solution, the deviation satisfies , so every solution of the equation is
The solution of interest varies on a time scale of about , while a deviation from it shrinks by a factor of every units of time. Explicit Euler with the step , which looks modest for a cosine, starts from and returns about at and about at . The implicit Euler method with the same step stays within of for .
Test equation and amplification factor
Definition The test equation is with a constant , real or complex. Its nonzero solutions decay to exactly when , and one step of length multiplies them by . A Runge-Kutta method, including explicit and implicit Euler, applied to the test equation with step produces
where the function depends only on the method. The number is the amplification factor of one step, and is the scaled eigenvalue. The test equation stands for one mode of a linear system. If with , where is diagonal with entries , the substitution splits the system into , and these methods treat each exactly as they treat the test equation with . For instance, Euler gives , which multiplies each by .
In plain words Follow one decaying mode through one step and ask what is left of it. The exact equation multiplies the mode by , and the method multiplies it by . When these two numbers behave very differently, the method mistreats that mode.
Example Euler’s method gives , so . For the deviation equation of the stiff example with , the scaled eigenvalue is , and
The exact mode keeps less than a ten-thousandth of itself over one step, while Euler flips its sign and makes it nine times larger. In the forced problem each Euler step also makes a small local error, and these factors of multiply it, which is the blowup described above.
Region of absolute stability
Definition The region of absolute stability of a one-step method with amplification factor is the set of complex numbers with . When lies in it, the numerical solution of the test equation tends to as for every starting value. Some books also include the boundary points where . For Euler’s method the region is the open disk
of radius centered at . For a real this means . For every explicit Runge-Kutta method, is a polynomial that is not constant, so as and the region is bounded.
In plain words The region is the set of scaled eigenvalues that the method damps. A step is stable for a mode only if the step size times the mode’s rate lands inside it, so a faster mode forces a smaller step.
Example With , Euler is absolutely stable only for . The classical Runge-Kutta method has
and its region meets the negative real axis in the interval , to three decimals, so here it needs about . Its higher order buys a slightly larger stable step, not freedom from the restriction. Euler’s disk touches the imaginary axis only at . For an undamped mode with it gives , so the computed oscillation grows for every .
Implicit Euler method
Definition For with step and , the implicit Euler method, also called backward Euler, defines as a solution of
The slope is taken at the new point, so each step requires solving an equation for the unknown . If is Lipschitz in with constant for all and , this equation has exactly one solution, and simple fixed-point iteration converges to it. A stiff problem has a large , and that condition would bring back the small steps, so stiff solvers usually solve the step equation by Newton’s method with the Jacobian . On smooth problems the global error is of order , the same order as explicit Euler. On the test equation the method gives , so for
In plain words Explicit Euler uses the slope where it stands, and implicit Euler uses the slope where it is going to land. The price is an equation to solve at every step. The gain is that a fast decaying mode stays damped.
Example For the stiff example, the implicit step reads
The equation is linear in , and collecting the terms with on the left gives
The denominator comes from solving for the unknown, not from evaluating a future slope at a guessed value. With each step multiplies the deviation from by
apart from a small local error, so the deviation shrinks to of its size where explicit Euler multiplied it by . For a nonlinear the same step is a nonlinear equation for , solved by a few Newton iterations to a chosen tolerance.
A-stability
Definition A method is A-stable if its region of absolute stability contains every complex with . Then, for the test equation with any satisfying , the numerical solution tends to for every step . The implicit Euler method is A-stable. If , then
so . Its region is in fact the whole exterior of the closed disk of radius centered at . No explicit Runge-Kutta method is A-stable, because its region is bounded. A-stability is defined through the linear test equation, so for a nonlinear problem it describes the behavior near a solution through linearization and is not by itself a proof of stability.
In plain words An A-stable method damps every decaying mode of the test equation at every step size, however fast the mode is. The step can then be chosen for accuracy rather than for stability, at least as far as the linear test equation can tell.
Example For implicit Euler, and , and as , so the fastest modes are damped the most. A-stability alone does not promise such strong damping. The trapezoidal rule
has , whose absolute value is also below whenever , so it is A-stable too. But , so a very fast mode is barely reduced and changes sign at every step.
Numerical and physical stability
Definition Physical stability is a property of the differential equation. A solution is stable if perturbations of it stay small, and asymptotically stable if they also decay to . For the test equation the perturbations decay exactly when . Numerical stability is a property of a method used with a particular step on a particular problem. For the test equation it means , so that perturbations of the computed values decay. Accuracy is a third question, how close the computed values are to the true solution, and it is judged from the method’s order, from error estimates and from refinement. A computation can pass any one of these tests and fail another.
In plain words The equation decides whether disturbances ought to die out. The method and its step decide whether the computed disturbances do die out. Neither answer says how many digits of the result are correct.
Example For with , the equation is stable, explicit Euler is not, and implicit Euler is. Implicit Euler is still inaccurate for the transient itself, because one step keeps of the deviation, while the exact factor is . If the fast transient is the object of study, the step must be small compared with . If only the slow cosine matters, strong damping of the transient is exactly what is wanted. The opposite mismatch also occurs. For the growing equation with , implicit Euler has , so the computed values shrink and alternate in sign while the true solution grows by the factor per unit of time.
Check yourself
- For the test equation , find the steps for which explicit Euler is absolutely stable. Then find the amplification factors of explicit and implicit Euler with , and compare them with the exact factor over one step.
Show the answer
With the condition means . For the scaled eigenvalue is . Explicit Euler has , so the computed values flip sign and grow fourfold at every step. Implicit Euler has
so it is stable. The exact factor is , which shows that the implicit values decay, but much more slowly than the true solution.
- A classmate argues that the classical Runge-Kutta method, being fourth order, can handle with where Euler fails. Compute its amplification factor at this step and decide whether the claim is right.
Show the answer
The scaled eigenvalue is , and
Each step multiplies the mode by , which is even worse than Euler’s factor . The method is stable on the negative real axis only for , approximately, so it needs about here. The claim is wrong. The order describes how the error behaves as and says nothing about stability at a fixed step.
- Take the stiff example with the new initial value , so the exact solution is . Compute one implicit Euler step with and compare it with . Is the step stable, and is it accurate?
Show the answer
With the formula from the implicit Euler card gives
The exact value is , so the error is about . The deviation from went from to about , while the true deviation fell to . The step is stable, because it damped the deviation instead of amplifying it. Explicit Euler would give , a deviation of about . Still, the implicit step does not resolve the transient. Each later step divides the leftover deviation by about again, so from on, the computed values stay within of the true solution for . The method damps the transient correctly in the end without following it accurately on the way.