Re: explicit versus implicit method for the heat equation



Chris wrote:

hi all,

Many people are solving the one-dimensional heat (diffusion) equation using central finite differences in space and forward Euler in time. Then, the time step dt is restricted by the well-known stability condition dt<dx^2/2/D.

To be able to take larger time steps, some people therefore use the implicit backward Euler scheme. Then, the time step can indeed be chosen larger than in the explicit case.

However, as both time integration methods are first order methods, and the error of the full numerical scheme (including spatial and temporal discretisation errors) is

e=O(C1*dt+C2*dx^2),

I am wondering if putting much effort in using the backward Euler scheme (which requires to solve a linear system) has much sense. Isn't the time step dt in this case also restricted to a condition dt<O(dx^2) due to accuracy arguments?

Yes and No. If you have 'rough' initial values (at time "t=0") AND
you want to follow the initial, short transient phase, you're right,
you have to take small time steps. (Note, the same situation
can occur for "positive time" if you have time dependent source
terms our the equation is non-linear)

Note, even if the solution is (looks) smooth the time step of an
explicit scheme is restricted by the highest possible frequencies
even if these aren't present in the current solution. If the time
step is too large, even tiny high frequency parts (e.g. due to rounding
errors) blow up immediately.
On the contrary, with an implicit scheme which is A-stable (or L-stable
if the eigenvalues of the operator in space are real) high frequency
components will be damped out immediately for all time steps.


Or more generally stated: does it only make sense to use implicit time integration schemes to alleviate the stability restriction if the order of those schemes is at least 2 (still for the 1D diffusion equation of course)?

No, see above

Helmut Jarausch

Lehrstuhl fuer Numerische Mathematik
RWTH - Aachen University
D 52056 Aachen, Germany
.