CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Wiki > Runge Kutta methods

Runge Kutta methods

From CFD-Wiki

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
-
Runge Kutta (RK) methods are an important class of methods for integrating initial value problems formed by [[ODE]]s. Runge Kutta methods encompass a wide selection of numerical methods and some commonly used methods such as Explicit or Implicit [[Euler Method]], the implicit midpoint rule and the trapezoidal rule are actually simplified versions of a general RK method.
+
Runge Kutta (RK) methods are an important class of methods for integrating initial value problems formed by [[ODE]]s. Runge Kutta methods encompass a wide selection of numerical methods and some commonly used methods such as Explicit or Implicit [[Euler method]], the implicit midpoint rule and the trapezoidal rule are actually simplified versions of a general RK method.
For the ODE,
For the ODE,

Revision as of 01:11, 24 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 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}




Return to Numerical Methods

My wiki