Stability Analysis Euler PDF
Stability Analysis Euler PDF
Siyang Wang
September 26, 2013
y 0 = y (1)
y(0) = y, (2)
yk+1 = yk + hf (tk , yk ).
yk+1 = yk + hyk
= (1 + h)yk .
yk = (1 + h)k y. (3)
y(t) = yet .
(To see this, we take derivative with respect to t on both sides of the above
equation, we have y 0 (t) = yet = y, which is the same as the ODE.) If we
restrict such that its real part is negative, i.e. Re() < 0, then the exact
solution eventually decays to 0 as t goes to infinite (Do you know why?).
Numerically, this corresponds to the case that yk goes to 0 when k goes to
infinite in Equation (3). To satisfy this, we have to require
|1 + h| < 1. (4)
Inequality (4) is the stability condition for forward Euler method. We can
also plot the stability condition to visualize the stability region as shown in
Figure 1.
1 < 1 + h < 1
2 < h < 0
0 < h < 2/
(1 h)yk+1 = yk
which gives
1
yk+1 = yk .
(1 h)
Therefore, by induction, we get
k
1
yk = y (6)
1 h
Again, we restrict to have negative real part so that the exact solution
decays to 0 when t goes to infinite. Correspondingly, the numerical solution
should have the same behaviour. Thus, we require
1
| |<1 (7)
1 h
Before we claim the stability condition of backward Euler method, we can
visualize inequality (7) in Figure 2.
Remember that we restrict that the real part of is negative. This corre-
sponds to the left half plane, which is covered by the stability region. This
means that backward Euler method is unconditionally stable.
If we restrict that is a real number (which is often the case in practice),
then we can see the unconditional stability from inequality (7):
|1 h| > 1
1 h > 1 or 1 h < 1
h < 0 or h > 2
Since h > 0 (h is the step size, it must be a positive number) and < 0,
we always have h < 0. Thus, backward Euler method is unconditionally
stable.
Figure 2: Stability region (shadowed) for backward Euler method
Remark
Implicit methods are in gerenal unconditionally stable. For a stiff problem,
explicit methods need to take very small time steps. And implicit methods
could be preferred in this case.
In MATLAB, we have ODE solvers suitable for stiff problems, for example
ode15s.