Álgebra/Análisis numérico/Solución Numérica de Ecuaciones Diferenciales/Métodos Runge-Kutta
Definición
[editar]Los métodos de Runge-Kutta logran la exactitud del procedimiento de una serie de Taylor sin requerir el cálculo de derivadas superiores. Existen muchas variaciones, pero todas se pueden denotar en la forma generalizada de la ecuación:
y'_{i + 1} = y_i + \phi (x_i ,y_i ,h)h
Donde φ(xi,yi,h) es conocida como función incremento, la cual puede interpretarse como una pendiente representativa sobre el intervalo.
\phi = a_1 k_1 + a_2 k_2 + \ldots + a_n k_n
Donde las a son constantes y las k son:
{k_1 = f(x_i ,y_i ) \cr k_2 = f(x_i + p_1 h,y_i + q_{11} k_1 h) \cr k_3 = f(x_i + p_2 h,y_i + q_{21} k_1 h + q_{22} k_2 h) \cr}
Observe que las k son relaciones de recurrencia, esto es, k1 aparece en la ecuación para k2, la cual aparece en la ecuación para k3, etc.
Como cada k es una evaluación funcional, esta recurrencia hace que los métodos Runge-Kutta sean eficientes para la programación. Existen varios tipos de métodos Runge-Kutta al emplear diferentes números de términos en la función incremento como la especificada por n.
n = 1, es el método de Euler. Una vez se elige n, se evalúan las a, p y q al igualar la función incremento a los términos en la serie de expansión de Taylor. La versión de segundo orden para la ecuación en su forma generalizada es:
y_{i + 1} = y_i + (a_1 k_1 + a_2 k_2 )h
Donde:
{k_1 = f(x_i ,y_i ) \cr k_2 = f(x_i + p_1 h,q_{11} k_1 h) \cr}
Los valores de a1, a2, p1 y q11 son evaluados al igualar el término de segundo orden de la ecuación dada con la expansión de la serie de Taylor.
Desarrollando tres ecuaciones para evaluar las cuatro incógnitas:
a_1 + a_2 = 1 a_1 p_2 = {1 \over 2} a_2 q_{11} = {1 \over 2}
Como se tienen tres ecuaciones con cuatro incógnitas se tiene que suponer el valor de una de ellas. Suponiendo que se especificó un valor para a2, se puede resolver de manera simultánea el sistema de ecuaciones obtenido:
{a_1 = 1 - a_2 \cr p_1 = q_{11} = {1 \over {2a_2 }} \cr}
Como se puede elegir un número infinito de valores para a2, hay un número infinito de métodos Runge-Kutta de segundo orden.
Cada versión podría dar exactamente los mismos resultados si la solución de la EDO fuera cuadrática, lineal o una constante.
a2 = 1/2: Método de Heun con un solo corrector, donde:
{y_{i + 1} = y_i + \left( {{{k_1 } \over 2} + {{k_2 } \over 2}} \right)h\cr k_1 = f(x_i ,y_i ) \cr k_2 = f(x_i + h,y_i + k_1 h) \cr} a2 = 1 : Método del punto medio.
{y_{i + 1} = y_i + k_2 h \cr k_1 = f(x_i ,y_i ) \cr k_2 = f\left( {x_i + {h \over 2},y_i + k_1 {h \over 2}} \right) \cr} a2 = 2/3: Método de Ralston.
{y_{i + 1} = y_i + \left( {{{k_1 } \over 3} + {{2k_2 } \over 3}} \right)h \cr k_1 = f(x_i ,y_i ) \cr k_2 = f\left( {x_i + {{3h} \over 4},y_i + 3k_1 {h \over 4}} \right) \cr} Siguiendo el mismo razonamiento para n = 3, o sea, Runge-Kutta de tercer orden, el resultado son seis ecuaciones con ocho incógnitas, por lo tanto se deben suponer dos valores con antelación para poder desarrollar el sistema de ecuaciones. Una versión ampliamente usada es:
{y_{i + 1} = y_i + \left( {{{k_1 + 4k_2 + k_3 } \over 6}} \right)h \cr k_1 = f(x_i ,y_i ) \cr k_2 = f\left( {x_i + {h \over 2},y_i + k_1 {h \over 2}} \right) \cr k_3 = f(x_i + h,y_i - k_1 h + 2k_2 h) \cr} Éste es el más popular de los métodos Runge-Kutta de cuarto orden:
{y_{i + 1} = y_i + \left( {{{k_1 + 2k_2 + 2k_3 + k_4 } \over 6}} \right)h \cr k_1 = f(x_i ,y_i ) \cr k_2 = f\left( {x_i + {h \over 2},y_i + k_1 {h \over 2}} \right) \cr k_3 = f\left( {x_i + {h \over 2},y_i + k_2 {h \over 2}} \right) \cr k_4 = f\left( {x_i + h,y_i + k_3 h} \right) \cr}