# Runge Kutta methods

(Difference between revisions)
 Revision as of 18:27, 23 November 2005 (view source)← Older edit Revision as of 18:29, 23 November 2005 (view source)Newer edit → Line 16: Line 16: ==Algorithm== ==Algorithm== - ::$\dot y = f\left( {x,y} \right)$ + ::$y^\prime = f\left( {t,y} \right)$ - ::$k_1 = hf\left( {x_n ,y_n } \right)$ + ::$k_1 = hf\left( {t_n ,y_n } \right)$ - ::$k_2 = hf\left( {x_n + {h \over 2},y_n + {{k_1 } \over 2}} \right)$ + ::$k_2 = hf\left( {t_n + {h \over 2},y_n + {{k_1 } \over 2}} \right)$ - ::$k_3 = hf\left( {x_n + {h \over 2},y_n + {{k_2 } \over 2}} \right)$ + ::$k_3 = hf\left( {t_n + {h \over 2},y_n + {{k_2 } \over 2}} \right)$ - ::$k_4 = hf\left( {x_n + h,y_n + k_3 } \right)$ + ::$k_4 = hf\left( {t_n + h,y_n + k_3 } \right)$ ::$y_{n + 1} = y_n + {{k_1 } \over 6} + {{k_2 } \over 3} + {{k_3 } \over 3} + {{k_4 } \over 6}$ ::$y_{n + 1} = y_n + {{k_1 } \over 6} + {{k_2 } \over 3} + {{k_3 } \over 3} + {{k_4 } \over 6}$

## Revision as of 18:29, 23 November 2005

Runge Kutta (RK) methods are an important class of methods for integrating initial value problems formed by ODEs. Runge Kutta methods encompass a wide selection of numerical methods and some commonly used methods such as Explicit or Implicit Euler's Method, the implicit midpoint rule and the trapezoidal rule are actually simplified versions of a general RK method.

For the ODE,

$y^\prime = f(t,y)$

the basic idea is to build a series of "stages", $k_i$ that approximate the solution $y$ at various points using samples of $f$ from other stages. Finally, the numerical solution $u_{n+1}$ is constructed from a linear combination of $u_n$ and all the precomputed stages.

Since the computation of one stage may involve other stages $k_i$ the right hand side $f$ is evaluated in a complicated nonlinear way. The most famous classical RK scheme is described below.

# Fourth order Runge-Kutta method

The fourth order Runge-Kutta method could be summarized as:

## Algorithm

$y^\prime = f\left( {t,y} \right)$
$k_1 = hf\left( {t_n ,y_n } \right)$
$k_2 = hf\left( {t_n + {h \over 2},y_n + {{k_1 } \over 2}} \right)$
$k_3 = hf\left( {t_n + {h \over 2},y_n + {{k_2 } \over 2}} \right)$
$k_4 = hf\left( {t_n + h,y_n + k_3 } \right)$
$y_{n + 1} = y_n + {{k_1 } \over 6} + {{k_2 } \over 3} + {{k_3 } \over 3} + {{k_4 } \over 6}$