6
$\begingroup$

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.

$\endgroup$
16
$\begingroup$

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.

$\endgroup$
1
6
$\begingroup$

First of all, you have to analyze your equations before using RK methods. There are three types of equations, suitable for Runge-Kutta methods.

1. The system is leading into equilibrium (Heat equation or any system with enthropy grow)

2. The system is unstable (if you try to solve heat equation back in time or put a broom into labile position)

3. The system is time-symmetric (Almost any particle dynamics, harmonic oscilator, Keppler problem)

There is a common rumour that implicit methods are better than explicit, but this verdict may be misleading.

The first type of equations is something what is identified as "stiff-problems". We expect exponential dynamical decay into some particular solution. Backward Euler is very suitble for this kind of equations. The problem of Euler method is in its exponential error grow. Specially backward Euler has ability of exponential decay of systems energy. This kind of inconvenience is not problematic in this type of equations. It just come to equilibrium little bit faster.

The second type of equations is really problematic. There is not much hopeful approaches to obtain trustble solution since whole system is rapidly growing and higly sensible to initial values. The only one advice is to use as much higher-order method as you can (no need to be implicit), however you still have to manage inital value sensitivity problem.

The third type needs symmetric method. Like mid-point rule, trapezoid rule or some Gauss-Legendre quadrature method. Just try to satisfy condtition of time symmetry: If you use the same method into final solution and turn back time, you have to get intial values again. This methods are usable in some orbital mechanics in astronomy for example. Euler or Backward Euler are comletely improper in this kind of equations. On example of a simple harmonic oscilator, the Euler cause exponential grow of the amplitude and the Backward Euler cuse exponential decay of the amplitude. And if you use an implicit mid-point rule, the amplitude will be stable even if your simulation runs in billion oscilator periods. I reccomend to try make your own simulation of Euler and Backward Euler on harmonic oscillator equations. Its illustrative as well.

The theorem "implicit methods are better" (which should not to be pure theorem) is seen in case 3 of symmetric problems. All symmetric Runge-Kutta methods must be implicit. Hovewer, its a reason why Runge-Kutta is not so popular here. Much better approach is the Verlet integration (https://en.wikipedia.org/wiki/Verlet_integration) which has comparable results as symmetric implicit RK methods and its much easier to implement and its explicit in many cases.

If you are interested in first type of equaations like heat equation or maybe many equations in fluid dynamics, the "L-stable" methods are for you. This is truly the place where theorem "implicit methods are better" is resonable. But you must be careful! You may obtain equilibrium solution just becouse of decay of the L-stable methods even if the exct solution will never reach some equilibrium state. The stability analysis of equations must be made before numerical implement of any L-stable method and you have to be sure that your equations are actually "stiff". Yust remember. Your methods must be L-stable here. Its true that all L-stable RK methods are implicit but not all implicit methods are L-stable.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.