[Math] What’s the difference between explicit and implicit Runge-Kutta methods

numerical methodsordinary differential equationsrunge-kutta-methods

I have been working on numerical analysis, just as a hobby. I am only aware of the basic fourth order Runge-Kutta method in order to solve problems. When I was digging deep into it, I found there are types, mainly explicit and implicit, but I was finding it hard to understand them. I did try reading through this article, but it still couldn't help me much.

I would be glad if you could explain in layman's terms.

Best Answer

Runge-Kutta methods are methods for numerically estimating solutions to differential equations of the form $y^\prime=f(x,y)$. One is interested in both explicit and implicit methods, as they have quite different applications.

To simplify things, I'll consider the two simplest Runge-Kutta methods that are usually ascribed to Euler.

The (usual) Euler method is the simplest example of an explicit method:

$$y_1=y_0+h\;f(x_0,y_0)$$

The backward Euler method is the simplest implicit method:

$$y_1=y_0+h\;f(x_1,y_1)$$

To explain the notation: $(x_0,y_0)$ is the initial point, from which the Runge-Kutta method "launches" itself to generate a new point, $(x_1,y_1)$, where $x_1=x_0+h$ and $h$ is a so-called "step size".

The Euler method is an explicit method in that the expression for $y_1$ depends only on $x_0$ and $y_0$. On the other hand, backward Euler is an implicit method, since the right-hand side also contains $y_1$; that is, $y_1$ is implicitly defined.

Why would we need to consider both, when the explicit methods look simpler? That is because the implicit methods are in fact the most efficient way to handle so-called stiff differential equations, which are differential equations that usually feature a rapidly decaying solution. Explicit methods need to take very tiny values of $h$ to accurately estimate the solution, and this takes lots of time. Implicit methods allow for a more reasonably sized $h$, but you are now required to use an associated method for solving the implicit equation, like Newton-Raphson. Even with that overhead, implicit methods are more efficient for stiff equations.

Of course, if the equations are not stiff, one uses explicit RK methods.

Related Question