Sei sulla pagina 1di 6

1

Deduccin de las Ecuaciones del Mtodo de Runge-Kutta


El problema consiste en encontrar una solucin numrica a la ecuacin diferencial dy ordinaria de primer orden: = f ( x, y ) sujeta a la condicin inicial y ( x0 ) = y 0 . El dx objetivo consiste en encontrar aproximaciones satisfactorias para los valores de la solucin y ( x ) en un conjunto especificado de valores de x denotados como x1 , x 2 , x3 , x 4 " . Los valores exactos los denotaremos como y ( x1 ), y ( x 2 ), y ( x3 )" y sus valores aproximados los denotaremos como y1 , y 2 , y3 , y 4 " Empezamos aproximando el valor de y en el punto x1 = x0 + x , esto es, y ( x1 ) = y 0 + y . La manera mas simple de hacer esto consiste en aproximar y por la estimacin acostumbrada para el verdadero incremento, o sea y dy = y ( x0 )x . La ecuacin diferencial misma nos da el valor de la derivada en el punto ( x0 , y 0 ) , esto es, y ( x0 ) = f ( x0 , y 0 ) ; y entonces y f ( x0 , y 0 )x y por lo tanto

y ( x1 ) = y 0 + y y 0 + f ( x0 , y 0 )x = y1 Una vez que y1 ha sido obtenida como la aproximacin a y ( x1 ) , el mismo procedimiento puede repetirse en ( x1 , y1 ) para obtener y ( x 2 ) = y ( x1 ) + y y1 + f (x1 , y1 )x = y 2 ; y as sucesivamente hasta donde se necesite. Este mtodo se conoce con el nombre de Mtodo de Euler
Ahora bien, habiendo obtenido y1 como una primera aproximacin a y ( x1 ) por el mtodo de Euler, podemos usar ahora la ecuacin diferencial para calcular y en el nuevo punto P1 : ( x1 , y1 ) y usar entonces el promedio de las derivadas en los puntos P0 : ( x0 , y 0 ) y P1 : ( x1 , y1 ) para obtener una mejor aproximacin de y , y por tanto de y ( x1 ) antes de calcular la siguiente aproximacin y ( x 2 ) . Este mtodo nos da el 1 valor y [ y ( x0 ) + y ( x1 )]x , y la estimacin mejorada del siguiente punto es 2 entonces: y 0 + y y 0 +

1 [ f (x0 , y0 ) + f (x1 , y1 )]x = ( y1 )2 . Este proceso se conoce 2 con el nombre de Mtodo Modificado de Euler
Otra posibilidad adicional, despus de haber obtenido y1 como una primera aproximacin a y ( x1 ) por el mtodo de Euler, consiste en reaproximar y y y ( x1 ) usando la derivada en el punto medio de P0 : ( x0 , y 0 ) y P1 : ( x1 , y1 ) en lugar de usar el promedio de las derivadas, esto es en el punto:

x + x1 y 0 + y1 M : 0 , . Esto nos da la estimacin mejorada 2 2 1 x x + x1 y 0 + y1 , , y 0 + f ( x0 , y 0 )x x , y esto nos da una y f 0 x = f x0 + 2 2 2 2


1 x , y 0 + f ( x0 , y 0 )x x . tercera aproximacin a y ( x1 ) como: ( y1 )3 = y 0 + f x0 + 2 2 Este proceso se conoce con el nombre de Mtodo de Runge
El mtodo de Runge-Kutta es bsicamente una generalizacin de esos tres procedimientos simples en el que en cada paso se calculan tres o mas estimaciones de y . El valor de y que se usa entonces para calcular el siguiente valor de y es una combinacin lineal de esas estimaciones en la cual las constantes de combinacin se escogen para hacer el error tan pequeo como sea posible. En el mtodo de Runge-Kutta de tercer orden se toman los siguientes tres estimados de y : (y )1 = f (x0 , y 0 )x que es la estimacin del mtodo de Euler; (y )2 = f [x0 + px, y 0 + p(y )1 ]x ; 0 < p < 1 ; que es parecido al estimado del 1 mtodo de Runge excepto que en lugar de evaluar en el punto medio (con p = ) la 2 derivada se calcula en un punto P : [x0 + px, y 0 + p(y )1 ] , que todava no se ha determinado; y (y )3 = f [x0 + qx, y 0 + r (y )2 + (q r )(y )1 ]x ; 0 < q , r < 1 en donde q y r deben de calcularse. Finalmente el valor de y que se usa finalmente para calcular y1 se toma como: (y )4 = a(y )1 + b(y )2 + c(y )3 en donde a,b,c son parmetros que igual que los parmetros p,q,r deben escogerse para dar la mas alta precisin al estimar y . Los detalles de este clculo pueden consultarse en el libro Advanced Engineering Mathematics de C.R.Wylie; Third Edition, McGraw-Hill, 1966. Dicho procedimiento nos lleva a un sistema de cuatro ecuaciones con seis 1 1 1 ; p 2b + q 2 c = ; prc = incgnitas: a + b + c = 1 ; pb + qc = de donde 2 3 6 pueden despejarse cuatro de los parmetros en funcin de los otros dos, obteniendo: 6 pq 3( p + q ) + 2 2 3q 2 3p q(q p ) ; b= ; c= a= ; r= 6 pq 6 p( p q ) 6q(q p ) p(2 3 p ) Puesto que p y q son arbitrarias, tenemos entonces una familia de frmulas biparmetricas que pueden usarse para resolver la ecuacin diferencial de primer 4 orden con una precisin del orden de (x ) .

Dos casos especiales del Mtodo de Runge-Kutta de Tercer Orden vale la pena anotar. Para listarlos usaremos la notacin convencional: x = h ; (y )1 = k1 ; (y )2 = k 2 ; (y )3 = k 3

a=

CASO 1:

1 3 ; b=0 ; c= ; 4 4 1 y (y )4 = (k1 + 3k 3 ) 4 k1 = f ( x0 , y 0 )h 1 1 k 2 = f x0 + h, y 0 + k1 h 3 3 2 2 k 3 = f x0 + h, y 0 + k 2 h 3 3

p=

1 2 ; q=r= 3 3

a=

CASO 2:

1 3 2 ; b=c= ; p=q=r= 4 8 3 1 y (y )4 = (2k1 + 3k 2 + 3k 3 ) 8 k1 = f ( x0 , y 0 )h

2 2 k 2 = f x0 + h, y 0 + k1 h 3 3 2 2 k 3 = f x0 + h, y 0 + k 2 h 3 3
La discusin anterior puede extenderse sin dificultad, (excepto los detalles), para llegar a procedimientos de solucin en los cuales el error es del orden de h 5 = (x )5 En particular los dos conjuntos de frmulas siguientes son bastante tiles:

y (y )5 =

1 (k1 + 2k 2 + 2k 3 + k 4 ) 6 k1 = f ( x0 , y 0 )h 1 1 k 2 = f x0 + h, y 0 + k1 h 2 2 1 1 k 3 = f x0 + h, y 0 + k 2 h 2 2 k 4 = f ( x0 + h, y 0 + k 3 )h

CASO 3:

1 (k1 + 3k 2 + 3k 3 + k 4 ) 8 k1 = f ( x0 , y 0 )h y (y )5 =
CASO 4:

1 1 k 2 = f x0 + h, y 0 + k1 h 3 3 2 1 k 3 = f x0 + h, y 0 k1 + k 2 h 3 3 k 4 = f ( x0 + h, y 0 + k1 k 2 + k 3 )h

El proceso de solucin basado en el CASO 3 se conoce usualmente como El Mtodo de Runge-Kutta

Ejemplo de solucin de una Ecuacin Diferencial de Primer Orden por el Mtodo de Runge-Kutta: y'=2xy n 0 1 2 3 4 5 6 7 8 9 10 Xn 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 2.00 Yn 1.0000 1.2337 1.5527 1.9937 2.6116 3.4902 4.7586 6.6188 9.3923 13.5969 20.0813 k1 0.20000 0.27141 0.37265 0.51836 0.73126 1.04706 1.52274 2.25040 3.38121 5.16682 8.03251 k2 k3 0.23100 0.23426 0.31496 0.31997 0.43475 0.44252 0.60827 0.62041 0.86341 0.88257 1.24426 1.27483 1.82157 1.87088 2.71041 2.79091 4.10066 4.23375 6.31032 6.53331 9.87998 10.25872 k4 kprom 0.27154 0.23367 0.37287 0.31902 0.51876 0.44099 0.73195 0.61795 1.04826 0.87858 1.52481 1.26834 2.25401 1.86028 3.38751 2.77342 5.17788 4.20465 8.05208 6.48436 12.74279 ########

Mtodo de Runge Kutta ejemplo resuelto con detalles


y = 2 xy ; f ( x, y ) = 2 xy ; y (1) = 1 ; h = 0.10 k1

k1 = hf ( x n , y n ) k h k 2 = hf x n + , y n + 1 2 2 k prom =
k2

k h k 3 = hf x n + , y n + 2 2 2 k 4 = hf ( x n + h, y n + k 3 )

1 (k1 + 2k 2 + 2k 3 + k 4 ) 6
k4

x n +1 = x n + h

y n +1 = y n + k prom

k3
h = 1.0500 2 k y1 + 2 = 1.1155 2 f = 2.34255 k 3 = 0.234255 x1 + h = 1.1500 2 k y 2 + 2 = 1.3911 2 f = 3.199716 k 3 = 0.319971 x2 + h = 1.2500 2 k y 3 + 2 = 1.7701 2 f = 4.42519 k 3 = 0.44252 x3 +

k prom

x1 = 1.0000
1
x1 = 1.0000 y1 = 1.0000

y1 = 1.0000 f = 2.0000 k1 = 0.2000

h = 1.0500 2 k y1 + 1 = 1.1000 2 f = 2.3100 k 2 = 0.2310 x1 + h = 1.1500 2 k y 2 + 1 = 1.3694 2 f = 3.14962 k 2 = 0.314962 x2 + h = 1.2500 2 k y 3 + 1 = 1.7390 2 f = 4.34756 k 2 = 0.434756 x3 +

x1 + h = 1.1000 y1 + k 3 = 1.2342 f = 2.715361 k 4 = 0.271536 k prom = 0.233674

x 2 = 1.1000
2
x 2 = 1.1000 y 2 = 1.2337

x 2 + h = 1.2000 y 2 + k 3 = 1.5537 f = 3.7288 k 4 = 0.37288 k prom = 0.319024

y 2 = 1.2337 f = 2.714083 k1 = 0.27141

x3 = 1.2000
3

x3 + h = 1.3000 y 3 + k 3 = 1.99522 f = 5.187572 k 4 = 0.51876 k prom = 0.440994

x3 = 1.2000

y 3 = 1.5527

y 3 = 1.5527 f = 3.72648 k1 = 0.37265

x 4 = 1.3000

y 4 = 1.9937

Potrebbero piacerti anche