Você está na página 1de 7

Mtodos de Runge Kutta

Los mtodos de Taylor tienen la propiedad de un error local de truncamiento de orden superior, pero la d
requerir el clculo y la evaluacin de las derivadas de f(t, y). Esto resulta algo lento y complicado, en la m
los problemas, razn por la cual, en la prctica casi no se utilizan. El mtodo de Euler, lamentablemente
un paso muy pequeo para una precisin razonable.

Los mtodos de Runge kutta tienen el error local de truncamiento del mismo orden que los mtodos de T
prescinden del clculo y evaluacin de las derivadas de la funcin f(t, y).
Se presenta de nuevo el problema de valor inicial cuya solucin se intenta aproximar:

Como en los mtodos anteriores, se determina primero la malla {t0, t1, ... , tN} de paso h, donde t0 = a y
estos puntos es donde se va a obtener la aproximacin de la solucin.

En esencia, los mtodos de Runge-Kutta son generalizaciones de la frmula bsica de Euler y i+1 = yi + h
que el valor de la funcin f se reemplaza por un promedio ponderado de valores de f en el intervalo ti t
decir,

En esta expresin las ponderaciones wi, i = 1, ..., m son constantes para las que en general se pide que
igual a 1, es decir, w1 + w2 + ... + wm = 1, y cada kj es la funcin f evaluada en un punto seleccionado (t,
cual ti t ti+1. Se mostrar que los kj se definen en forma recursiva.

Se define como orden del mtodo al nmero m, es decir, a la cantidad de trminos que se usan en el p
ponderado.
Runge-Kutta de primer orden
Si m = 1, entonces se toma w1 = 1 y la frmula (2) resulta

Igualando esta frmula al desarrollo de Taylor de orden 1 de la funcin y(t), alrededor del punto t i, y calc
punto ti+1:

y teniendo en cuenta que yi y(ti), resulta k1= f(ti, yi), obteniendo as la frmula de Euler yi+1 = yi + h f(
tanto, se dice tambin que el mtodo de Euler es un mtodo de Runge Kutta de primer orden.
Runge-Kutta de segundo orden
Ahora se plantea, con m = 2, una frmula del tipo:

donde

y las constantes a, b, , se deben determinar, de manera que la expresin (5) coincida con el desarrollo
y de orden ms alto posible.
Para ello, utilizando un desarrollo de Taylor para funciones de dos variables, tenemos que:

donde el subndice i indica que todas las derivadas estn evaluadas en el punto (ti, yi).
Reemplazando k1 y teniendo en cuenta la expresin de k2, usando (7) tenemos que:

agrupando los trminos de (8) por las potencias de h, y reemplazando en la expresin (5) el valor de k1 y k2, resulta

Reacomodando trminos en (9), resulta:

Por otro lado, se hace un desarrollo de Taylor de orden 3 de la funcin y(t), calculado en el punto ti+1, ob

Aplicando regla de la cadena para las derivadas de f, se tiene:

Comparando las expresiones (10) y (12), e igualando los coeficientes de h y h 2, se tiene:

Sucede que se tienen cuatro incgnitas, pero tres ecuaciones, con lo que queda un grado de libertad en l
sistema dado en (13). Se trata de usar este grado de libertad para hacer que los coeficientes de h 3 en las
(10) y (12) coincidan. Esto obviamente no se logra para cualquier f.
Hay muchas soluciones para el sistema (13), una de ellas es

obteniendo as la siguiente frmula, del mtodo de Runge Kutta de orden 2:

para i desde 0 hasta N-1, tomando un mallado {ti, i = 0, .., N}


Este mtodo tiene un error local de O(h3), y global de O(h2).

Mejora entonces el mtodo de Euler, por lo que se espera poder usar con este mtodo un paso mayor. El
debe pagarse en este caso, es el de evaluar dos veces la funcin en cada iteracin.

De la misma manera que se realiz arriba, se pueden derivar frmulas de Runge-Kutta de cualquier orde
deducciones resultan excesivamente complicadas. Una de las ms populares, y ms utilizada por su alta
la de orden 4, que se presenta a continuacin.
Runge-Kutta de cuarto orden

Si ahora m = 4, se obtiene, con un desarrollo del tipo del anterior, la siguiente frmula, para i desde 0 ha

Si bien con facilidad se pueden deducir otras frmulas, el algoritmo expresado en (16) se denomina mto
Runge-Kutta de cuarto orden, o mtodo clsico de Runge-Kutta, abreviado como RK4. Este algoritmo es
extendido, y reconocido como una valiosa herramienta de clculo, por la buena aproximacin que produc

Esta frmula tiene un error de truncamiento local de O(h5), y un error global de O(h4). De nuevo, el prec
debe pagar por la mejora en el error, es una mayor cantidad de evaluaciones de la funcin, resultando en
tiempo de clculo si la funcin es complicada. Tiene la ventaja, sobre el mtodo de Taylor de orden 4 (cu
global es tambin O(h4), que no requiere el clculo de las derivadas de f.
Implementacin del mtodo RK4

Se presenta a continuacin el pseudocdigo del mtodo RK4, para ser implementado en cualquier lengua
programacin, o software simblico.

Ejemplo

Con el mtodo RK4, obtener una aproximacin del valor de y(1,5) para el siguiente problema de valor ini
un paso h = 0,1.

El primer paso para resolver este problema es determinar la malla de puntos en donde se va a obtener la
Como en este caso h est dado, se tiene que N = (1,5 - 1)/0,1 = 5.

Por lo tanto, los puntos en donde se va a determinar la solucin, dados por la frmula ti = 1 + 0,1 i, para
=1,2,3,4,5, son:
t1
t2
t3
t4
t5

=
=
=
=
=

1,1
1,2
1,3
1,4
1,5

Una vez establecida la malla del problema, tenemos, para i = 0:

Resulta entonces,

y aplicando sucesivamente la frmula de RK4, para i desde 1 hasta 4, se obtienen los datos que se mues
siguiente tabla, donde adems se muestra el valor de la solucin exacta para cada punto de la malla.

Al analizar la tabla anterior y comparar los resultados obtenidos con el mtodo RK4 con los valores reales
qu es tan difundido este mtodo. En la prxima tabla se comparan los mtodos de Euler y Runge Kutta
para el mismo problema.

Você também pode gostar