HOME

TheInfoList



OR:

Explicit and implicit methods are approaches used in
numerical analysis Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of numerical methods t ...
for obtaining numerical approximations to the solutions of time-dependent ordinary and
partial differential equation In mathematics, a partial differential equation (PDE) is an equation which imposes relations between the various partial derivatives of a multivariable function. The function is often thought of as an "unknown" to be solved for, similarly to ...
s, as is required in
computer simulation Computer simulation is the process of mathematical modelling, performed on a computer, which is designed to predict the behaviour of, or the outcome of, a real-world or physical system. The reliability of some mathematical models can be deter ...
s of physical processes. ''Explicit methods'' calculate the state of a system at a later time from the state of the system at the current time, while ''implicit methods'' find a solution by solving an equation involving both the current state of the system and the later one. Mathematically, if Y(t) is the current system state and Y(t+\Delta t) is the state at the later time (\Delta t is a small time step), then, for an explicit method : Y(t+\Delta t) = F(Y(t))\, while for an implicit method one solves an equation : G\Big(Y(t), Y(t+\Delta t)\Big)=0 \qquad (1)\, to find Y(t+\Delta t).


Computation

Implicit methods require an extra computation (solving the above equation), and they can be much harder to implement. Implicit methods are used because many problems arising in practice are stiff, for which the use of an explicit method requires impractically small time steps \Delta t to keep the error in the result bounded (see
numerical stability In the mathematical subfield of numerical analysis, numerical stability is a generally desirable property of numerical algorithms. The precise definition of stability depends on the context. One is numerical linear algebra and the other is algorit ...
). For such problems, to achieve given accuracy, it 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) at each time step. That said, whether one should use an explicit or implicit method depends upon the problem to be solved. Since the implicit method cannot be carried out for each kind of differential operator, it is sometimes advisable to make use of the so called operator splitting method, which means that the differential operator is rewritten as the sum of two complementary operators :Y(t+\Delta t) = F(Y(t+\Delta t))+G(Y(t)),\, while one is treated explicitly and the other implicitly. For usual applications the implicit term is chosen to be linear while the explicit term can be nonlinear. This combination of the former method is called ''Implicit-Explicit Method'' (short IMEX,L.Pareschi, G.Russo:
Implicit-Explicit Runge-Kutta schemes for stiff systems of differential equations
', Recent Trends in Numerical Analysis, Vol. 3, 269-289, 2000
).


Illustration using the forward and backward Euler methods

Consider the
ordinary differential equation In mathematics, an ordinary differential equation (ODE) is a differential equation whose unknown(s) consists of one (or more) function(s) of one variable and involves the derivatives of those functions. The term ''ordinary'' is used in contrast ...
: \frac = -y^2, \ t\in , aquad \quad (2) with the initial condition y(0)=1. Consider a grid t_k=a\frac for 0 ≤ ''k'' ≤ ''n'', that is, the time step is \Delta t=a/n, and denote y_k=y(t_k) for each k. Discretize this equation using the simplest explicit and implicit methods, which are the ''forward Euler'' and ''backward Euler '' methods (see
numerical ordinary differential equations Numerical methods for ordinary differential equations are methods used to find numerical approximations to the solutions of ordinary differential equations (ODEs). Their use is also known as "numerical integration", although this term can also ...
) and compare the obtained schemes. ;Forward Euler method: The forward
Euler method In mathematics and computational science, the Euler method (also called forward Euler method) is a first-order numerical procedure for solving ordinary differential equations (ODEs) with a given initial value. It is the most basic explicit me ...
:\left(\frac\right)_k \approx \frac = - y_k^2 yields : y_=y_k-\Delta t y_k^2 \quad \quad \quad(3)\, for each k=0, 1, \dots, n. This is an explicit formula for y_. ;Backward Euler method: With the
backward Euler method In numerical analysis and scientific computing, the backward Euler method (or implicit Euler method) is one of the most basic numerical methods for the solution of ordinary differential equations. It is similar to the (standard) Euler method, but d ...
:\frac = - y_^2 one finds the implicit equation : y_+\Delta t y_^2=y_k for y_ (compare this with formula (3) where y_ was given explicitly rather than as an unknown in an equation). This is a
quadratic equation In algebra, a quadratic equation () is any equation that can be rearranged in standard form as ax^2 + bx + c = 0\,, where represents an unknown value, and , , and represent known numbers, where . (If and then the equation is linear, not quadr ...
, having one negative and one positive
root In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the sur ...
. The positive root is picked because in the original equation the initial condition is positive, and then y at the next time step is given by : y_=\frac. \quad \quad (4) In the vast majority of cases, the equation to be solved when using an implicit scheme is much more complicated than a quadratic equation, and no analytical solution exists. Then one uses
root-finding algorithm In mathematics and computing, a root-finding algorithm is an algorithm for finding zeros, also called "roots", of continuous functions. A zero of a function , from the real numbers to real numbers or from the complex numbers to the complex numbe ...
s, such as
Newton's method In numerical analysis, Newton's method, also known as the Newton–Raphson method, named after Isaac Newton and Joseph Raphson, is a root-finding algorithm which produces successively better approximations to the roots (or zeroes) of a real-val ...
, to find the numerical solution. ;Crank-Nicolson method: With the Crank-Nicolson method :\frac = -\fracy_^2 -\fracy_^2 one finds the implicit equation : y_+\frac\Delta t y_^2=y_k - \frac\Delta t y_^2 for y_ (compare this with formula (3) where y_ was given explicitly rather than as an unknown in an equation). This can be numerically solved using
root-finding algorithm In mathematics and computing, a root-finding algorithm is an algorithm for finding zeros, also called "roots", of continuous functions. A zero of a function , from the real numbers to real numbers or from the complex numbers to the complex numbe ...
s, such as
Newton's method In numerical analysis, Newton's method, also known as the Newton–Raphson method, named after Isaac Newton and Joseph Raphson, is a root-finding algorithm which produces successively better approximations to the roots (or zeroes) of a real-val ...
, to obtain y_. Crank-Nicolson can be viewed as a form of more general IMEX (''Im''plicit-''Ex''plicit) schemes. ;Forward-Backward Euler method: In order to apply the IMEX-scheme, consider a slightly different differential equation: : \frac = y-y^2, \ t\in , aquad \quad (5) It follows that : \left(\frac\right)_k \approx y_-y_^2, \ t\in , a/math> and therefore : y_=\frac \quad\quad(6) for each k=0, 1, \dots, n.


See also

*
Courant–Friedrichs–Lewy condition In mathematics, the convergence condition by Courant–Friedrichs–Lewy is a necessary condition for convergence while solving certain partial differential equations (usually hyperbolic PDEs) numerically. It arises in the numerical analysis of ex ...
*
SIMPLE algorithm In computational fluid dynamics (CFD), the SIMPLE algorithm is a widely used numerical procedure to solve the Navier–Stokes equations. ''SIMPLE'' is an acronym for Semi-Implicit Method for Pressure Linked Equations. The SIMPLE algorithm was dev ...
, a semi-implicit method for pressure-linked equations


Sources

{{DEFAULTSORT:Explicit And Implicit Methods Numerical differential equations