Jump to content

Explicit and implicit methods

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Oleg Alexandrov (talk | contribs) at 02:24, 8 January 2006 (new article, to be continued). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

In mathematics and applications, explicit and implicit methods are approaches to simulate physical processes, or to put it mathematically, they are numerical methods for solving time-variable ordinary and partial differential equations.

Explicit methods calculate the state of a system at next instance in time using the state of the system at the current time, while an implicit method finds it by solving an equation involving both the current system state and the future one. To put it in symbols, if is the current system state and is the state at the next instance in time ( is a small time step), then, for an explicit method

while for an implicit method one solves an equation

to find

It is immediate then that implicit methods require an extra computation (solving the above equation), and can also be much harder to implement. The reason one uses implicit methods is that for great many problems (called stiff problems) using an explicit method requires extremely small time steps for the error of the method to not explode to infinity (see numerical stability), and then it is takes much less computational time to use an implicit method with larger time steps, even taking into account that one needs to solve an equation of the form (1) each time step. As such, the choice between which method to use depends on the specific problem at hand.

Illustration using the forward and backward Euler methods

Consider the ordinary differential equation

with the initial condition Consider a grid for 0≤kn, that is, the time step is and denote for each .

Discretize this equation using the simplest explicit and implicit methods, which are the backward Euler and forward Euler methods (see ordinary differential equations). The forward Euler method

yields

for each while with the backward Euler method

one finds the equation

for . This is a quadratic equation, having one negative and one positive root. The positive root is picked because in the original equation the initial condition is positive, and then at the next time step is given by

(compare this with formula (3)).

In the vast majority of cases the equation to be solved for is much more complicated than a quadratic equation, and no exact solution exists. Then one uses root-finding algorithms, such as Newton's method.