Вы находитесь на странице: 1из 20

Mtodos de Runge-Kutta

Los Runge-Kutta no es slo un mtodo sino una importante familia de


mtodos iterativos tanto implcitos como explcitos para aproximar las soluciones
de

ecuaciones

diferenciales

ordinarias

(E.D.Os),

estas

tcnicas

fueron

desarrolladas alrededor de 1900 por los matemticos alemanes Carl David Tolm
Runge y Martin Wilhelm Kutta
El objetivo de los mtodos numricos de Runge-Kutta, es el anlisis y
solucin de los problemas de valor inicial de ecuaciones diferenciales ordinarias
(EDO), estos son una extensin del mtodo de Euler para resolver las (EDOS),
pero con un orden de exactitud ms alto que este .
La convergencia lenta del mtodo de Euler y lo restringido de su regin de
estabilidad absoluta nos lleva a considerar mtodos de orden de convergencia
mayor. El mtodo de Euler se mueve a lo largo de la tangente de una cierta curva
que esta "cerca" a la curva desconocida o buscada. Los mtodos Runge-Kutta
extienden esta idea geomtrica al utilizar varias derivadas o tangentes
intermedias, en lugar de solo una, para aproximar la funcin desconocida. Los
mtodos Runge-Kutta ms simples se obtienen usando dos de estas derivadas
intermedias.
Los mtodos de Runge-Kutta mejoran la aproximacin del mtodo de Euler
para resolver de modo aproximado el P.V.I. y' = f(t, y),

y(t 0) = y0, sin necesidad

de calcular derivadas de orden superior.


Recordemos que, de acuerdo con la teora, la expresin general de los
mtodos explcitos de las etapas de Runge Kutta es:

Donde a ij = 0 para j i

=Ci

Fundamento
Al resolver un PVI o un PF, el objetivo es hallar una funcin y(t) que verifique
en [a,b] los requisitos del problema. Conscientes de la imposibilidad de obtener
una frmula que exprese y(t), nos contentaremos con obtener los valores que la
solucin toma en algunos puntos de [a,b]; es decir, obtendremos una tabla de
valores de y(t) en [a,b]. Esto puede parecer, a primera vista, frustrante, pero para
la mayor parte de las necesidades reales es completamente suficiente; pensemos
que realmente, incluso para una funcin expresada mediante una frmula, un
ordenador solo puede dar sus valores en un nmero finito de puntos, ya que
maneja un nmero limitado de cifras. El valor de la solucin en un punto C
distinto de los considerados se obtiene mediante interpolacin, o resolviendo de
nuevo el problema en el intervalo [a,c].
As, una tcnica de solucin consiste en dividir el intervalo [a,b] mediante una
malla de puntos a = t0 < tl < < tn = b, llamados puntos soporte, y obtener los
valores yi = y(ti), i = 1, 2, , n, de la solucin en los puntos de la malla.
Una manera frecuente y sencilla (no la mejor en todos los casos) de tomar
los ti, consiste en dividir el intervalo [a,b] en n partes iguales, siendo n un natural.
As, los puntos son ti = a + ih, i = 0, , n. Al valor h =(b - a)/n se lo denomina paso
de integracin. Utilizaremos en lo sucesivo paso constante en todos los casos.
Sin embargo, las tcnicas ms eficientes requieren de un ajuste adaptativo
del paso, acomodndose continuamente al comportamiento de la solucin en las
cercanas del punto de clculo actual; por ejemplo, si se sospecha que la solucin
es rpidamente variable ser necesario disminuir el paso, lo que supone realizar
ms operaciones y estar sujeto a errores de redondeo; pero si la solucin vara
poco, con pasos ms largos se obtendrn buenas aproximaciones y se ahorrar
esfuerzo computacional y evitar innecesarios errores de redondeo.

Los mtodos de Runge-Kutta logran la exactitud del procedimiento de una


serie de Taylor sin requerir el clculo de derivadas superiores. Existen muchas
variaciones, pero todas se pueden denotar en la forma generalizada de la
ecuacin:
yi + 1 = yi + (xi,yi,h)h
Donde (xi,yi,h) es conocida como funcin incremento, la cual puede
interpretarse como una pendiente representativa sobre el intervalo.

Donde las a son constantes y las k son:


k1 = f(xi,yi)
k2 = f(xi + p1h,yi + q11k1h)
k3 = f(xi + p2h,yi + q21k1h + q22k2h)
Observe que las k son relaciones de recurrencia, esto es, k1 aparece en la
ecuacin para k2, la cual aparece en la ecuacin para k3, etc.
Como cada k es una evaluacin funcional, esta recurrencia hace que los
mtodos Runge-Kutta sean eficientes para la programacin. Existen varios tipos
de mtodos Runge-Kutta al emplear diferentes nmeros de trminos en la funcin
incremento como la especificada por n.
n = 1, es el mtodo de Euler. Una vez se elige n, se evalan las a, p y q al
igualar la funcin incremento a los trminos en la serie de Taylor
Condiciones de Orden
Los mtodos de Runge-Kutta son mtodos de un paso con funcin de
incremento

Si hacemos hn = 0, entonces ki = f(xn,yn) para todo i = 1,2,...,s. As,

Por tanto, un mtodo de Runge-Kutta es consistente si y solo si

Por otra parte, puesto que las etapas ki son evaluaciones de la funcin f, no
es difcil convencerse de que satisface una condicin de Lipschitz con respecto
a su segunda variable si f satisface una condicin de Lipschitz en y. As pues, la
condicin de consistencia es suciente para garantizar la convergencia. Veamos
que tambin es necesaria.

Teorema
Un mtodo de Runge-Kutta es convergente si y solo si es consistente.
Prueba
Si es convergente, en particular lo es para el problema
y'(x) = 1, y(0) = 0,
Cuya solucin es y(x) = x. El mtodo, aplicado a este problema con paso jo

h, se reduce a
yn+1 = yn+h
Tomando como valor de arranque y0 = 0 tenemos que la solucin numrica
viene dada por

yn = nh

= xn

Por tanto

y(xn) yn =

xn

La solucin numrica converge a la terica si y solo si se cumple la condicin


de consistencia.
Mtodos de Runge-Kutta de 2do. Orden
El mtodo de Runge Kutta es un mtodo numrico de resolucin de
ecuaciones diferenciales que surge como una mejora del mtodo de Euler. El
mtodo de Euler se puede considerar como un mtodo de Runge Kutta de primer
orden, el de Heun, es un mtodo de Runge Kutta de orden dos.
y x y x0 hy ' x0

h2
y ' ' x0
2

h x x0

La expansin en serie de Taylor de


una funcin y(x) alrededor de un punto x=x0 , truncada en el tercer trmino, es
decir, en la segunda derivada

Tamao del paso


Esquema de Discretizacin del Mtodo de Runge-Kutta de orden 2:
h
k

y i 1 y i hF x i , yi 1
2
2

k1 hF ( x i , yi )
x i 1 x i h

yi es la coordenada y del punto anterior


xi es la coordenada x del punto anterior
F(xi,yi) es la derivada evaluada en el punto anterior
F(xi+h/2,yi+k1/2) es la derivada evaluada en el punto anterior con el cambio de
variable
Ecuacin diferencial de segundo orden
Vamos a aplicar el procedimiento de Runge-Kutta a una ecuacin diferencial de
segundo orden.

Con las condiciones iniciales

Una ecuacin diferencial de segundo orden es equivalente a un sistema de


dos ecuaciones diferenciales de primer orden, por lo que aplicaremos el mismo
esquema.

Comparando esta tabla con la de un sistema de dos ecuaciones diferenciales


de primer orden, vemos que la segunda columna es la misma, excepto por cambio
de nombre de la funcin, f en vez de g, y de la variable, v en vez de y. En la
primera columna, las variables k1, k2, k3, k4 pueden calcularse directamente sin
efectuar llamadas a una funcin.
Sistema de dos ecuaciones diferenciales de segundo orden
Sea el sistema de dos ecuaciones diferenciales de segundo orden

Con las condiciones iniciales

Este sistema, se puede transformar en un sistema equivalente formado por


cuatro ecuaciones diferenciales de primer orden. Aplicando dos veces el esquema
descrito para una ecuacin diferencial de segundo orden, obtenemos el esquema
descrito en las siguientes tablas

Mtodos de Runge-Kutta de 3er. Orden


La expansin en serie de Taylor de una funcin y(x) alrededor de un punto x
= x0, truncada en el cuarto trmino, es decir, en la tercera derivada
h2
h3
y x y x0 hy ' x0
y ' ' x0
y ' ' ' x0
2
6
h x x0

Tamao del paso


Esquema de Discretizacin del Mtodo de Runge-Kutta de orden 3:

yi 1 y i

1
k1 4k2 k3
6

k1 hF ( x i , yi )
h
k

k 2 hF x i , y i 1
2
2

x i 1 x i h

k3 hF x i h, yi 2k 2 k1

Para i = 0,, n-1. La solucin se da a lo largo del intervalo (to, to+ hn).

Procedimiento de tercer orden


Para n = 3 es probable efectuar un desarrollo similar al del mtodo de
segundo orden, el resultado son seis ecuaciones con ocho incgnitas, por lo tanto
se deben suponer dos valores de las incgnitas con antelacin para poder
desarrollar el sistema de ecuaciones. Una versin ampliamente usada es:

Donde:
k1 = f (xi, yi)

k3 = f (xi + h, yi k1h + 2k2h)


Si la EDO est en funcin solo de x, este mtodo de tercer orden se reduce a
la regla de Simpson 1/3. En cualquier caso, los mtodos de tercer orden tienen
errores local y global, y dan resultados exactos cuando la solucin es una cubica.
Al tratarse de polinomios ser tambin exacta cuando la ecuacin diferencial sea

cubica y la solucin sea de cuarto grado. Esto se debe a que la regla de Simpson
1/3 ofrece estimaciones exactas de la integral para cubicas.
La regla de Simpson 1/3 se puede expresar usando el formato de la
ecuacin:
I (b-a) f(x0) + 4f(x1) + f(x2)
.

6
Donde a=x0, b=x2 y x1= el punto a la mitad entre a y b, que est dado por:
(b+a)/2, el punto medio esta ponderado por dos tercios y los puntos extremos

por un sexto.
Tiene un error de truncamiento de:
Et:= - 1 (h) 5 f (4) () como h= (b-a)/2 entonces
.

90
Et:= - (b-a) 5 f (4) ()

2880
Donde se encuentra en algn lugar en el intervalo de [a, b].
Nota: : el smbolo indica que (b-a) esta elevado a la 5.

Algoritmo Mtodo Runge-Kutta de 2do Orden


%Metodo Runge-Kutta de 2doOrden
%dv/du=v+u^2/sprt(v)
u=1;
v=1;
t=0;
tmax=3;
h=0.2;
n=tmax-t/h;

for i=1:n
v(i+1)=v(i)+h
k1=h*(v(i)+u(i)^2)/sqrt(v(i))
u(i+1)=u(i)+h*((v(i)+h/2)+(u(i)+k1/2))/sqrt(v(i))
end
%graficas%
subplot (3,2,1);
plot(u,v,'y-o');
title('Metodo Runge-Kutta 2doOrden. u vs v');
xlabel('valores u');
ylabel('valores v');
legend('v real, u aprox')

valores v

Grafico Mtodo Runge Kutta 2do Orden


Metodo Runge-Kutta 2doOrden. u vs v
2
v real, u aprox
1.5
1

1.5

2
2.5
valores u

Algoritmo Mtodo Runge-Kutta de 3er Orden


%Metodo Runge-Kutta de 3er Orden
%dv/du=v+u^2/sprt(v)
u=1;
v=1;
t=0;
tmax=3;
h=0.2;
n=tmax-t/h;

for i=1:n
v(i+1)=v(i)+h
k1=h*(v(i)+u(i)^2)/sqrt(v(i))
k2=h*((v(i)+h/2)+(u(i)+k1/2)^2/sqrt(1+h/2))
k3=h*((v(i)+h)+(u(i)+2*k2-k1)^2/sqrt(v(i)+h/2))
u(i+1)=u(i)+(1/6)*(k1+(4*k2)+k3)
end
%graficas%
subplot (3,2,1);
plot(u,v,'r-o');
title('Metodo Runge-Kutta 2doOrden. u vs v');
xlabel('valores u');
ylabel('valores v');
legend('v real, u aprox')

valores v

Grafico Metodo Runge Kutta 3er Orden


Metodo Runge-Kutta 2doOrden. u vs v
2
v real, u aprox
1.5
1

2
4
valores u

x i 1 x i h
k1 y hF ( xi , yi , zi )
k1 y

h
k
yi 1 yi hF xi , yi
, zi 1 z
2
2
2

k1z hG ( xi , yi , zi )
k
k
h

zi 1 zi hG xi , yi 1 , zi 1 z
2
2
2

Esquema de Discretizacin del


Mtodo de Runge-Kutta de Orden 2 Para Sistemas de EDO:

k1 y hF ( xi , yi , zi )

h
k
k2 y hF xi , yi 1 y , zi 1z
2
2
2

k3 y hF xi h, yi 2k2 y k1 y , zi 2k2 z k1z

k1z hG ( xi , yi , zi )

h
k
k2 z hG xi , yi 1 y , zi 1z
2
2
2

k3 z hG xi h, yi 2k2 y k1 y , zi 2k2 z k1z

yi 1 yi

1
k1y 4k2 y k3 y
6

zi 1 zi

1
k1z 4k2 z k3 z
6

xi 1 x i h
Esqu
ema de Discretizacin del Mtodo de Runge-Kutta de Orden 3 Para Sistemas
de EDO:

Aplicaciones del Mtodo de Runge-Kutta


Aplicaciones a la Fsica:
Movimiento Armnico Simple:
La Ley de Hooke:
Supongamos que un cuerpo de masa M est sujeto al extremo de un resorte
flexible suspendido de un soporte rgido (por ejemplo un techo), como se muestra
en la figura 5.1b. Cuando M se reemplaza por un cuerpo diferente Mi, el
alargamiento del resorte ser, por supuesto, distinto.
Por la Ley de Hooke, el resorte mismo ejerce una fuerza de restitucin F
opuesta a la direccin del alargamiento y proporcional a su magnitud s. Dicho en
trminos simples, F = ks, en donde k es una constante de proporcionalidad.
Aunque cuerpos de distinto peso producen distintos alargamientos del resorte, tal
elemento elstico esta esencialmente caracterizado por l numero k. Por ejemplo,
si un cuerpo que pesa 10lb. alarga el resorte en 1/2 pie, entonces,
10 = k (1/2) implica que k = 20 lb/pie.
Luego, necesariamente una masa que pesa 8 lb. alarga el mismo resorte en
2/5 pie.

Segunda Ley de Newton:


Despus que una masa M se sujeta a un resorte, aquella lo alargara en una
magnitud s y alcanzara la posicin de equilibrio en la cual su peso W es
equilibrado por la fuerza de restitucin ks. El peso es definido por:
W=m.g

En donde la masa puede medirse en Kilogramos, gramos o geolibras (slugs)


y g = 9.8 mt/s, p80 cm/s o 32pie/s, respectivamente. Tal como se indica la figura
5.2b,la condicin de equilibrio es m.g = ks o bien m.g - ks = 0. Si ahora la masa se
desplaza de su posicin de equilibrio en una magnitud x y despus se suelta, la
fuerza neta F correspondiente a este caso dinmico est dada por la segunda ley
del movimiento de Newton, F = ma, en donde a es la aceleracin dw/dt.
Suponiendo que sobre el sistema no actan fuerzas exteriores (movimiento

vibratorio libre), entonces podemos igualar F a la resultante del peso y la fuerza de


restitucin:
mdx/dt = - k (s + x) + mg
= - kx + mg - ks = - kx
Cero

Aplicaciones del Mtodo Runge-Kutta a la Industria


Martnez, Liliana ngeles. Dimensionamiento y Simulacin de un secador por
aspersin de nivel piloto. Tesis presentada para obtener el Ttulo de Maestro en
Ciencias en Bioprocesos. Instituto Politcnico Nacional. Unidad Profesional
Interdisciplinaria Biotecnologa.
En: www.biotecnologia.upibi.ipn.mx/recursos/posgrado/Tesis/mc_langeles.pdf

Caiza,

Luis.; Sandoval, Marcelo Francisco. , Quintero Montoya, Olga L.

Modelo de Simulacin de una Columna de Destilacin Binaria basada en Mtodos


Numricos. Colegio Politcnico de la Universidad de San Francisco de Quito,
Cumbay Quito Ecuador.
En. http://dspace.epn.edu.ec/bitstream/123456789/1455/1/P26.pdf

Implementacin de Sistemas Numricos en el Computador


El computador funciona bsicamente con datos numricos, es decir que todo
lo que se trabaja en el computador, ya sean: grficos, dibujos, palabras, sonido,
video, es convertido a informacin numrica.

Sistema Decimal
Este sistema consta de diez smbolos, que van desde el numero 0 hasta el
numero 9, los cuales le dan la caracterstica principal este sistema conocido. Estos
smbolos numricos tambin forman unidades numricas compuestas, al tomarlos
como exponentes de un nmero, que se encargara de regular el procedimiento,
este nmero es llamado base. El numero base va a ser 10, por tal motivo tambin
es conocido como sistema de numeracin en base 10.

Sistema Binario
Este es un sistema numrico que utilizan los sistemas digitales para contar.
Se dice binario a aquello que tiene dos partes. Muchas cosas en los sistemas
digitales son binarias: los impulsos elctricos que circulan en los circuitos son de
baja o alta tensin. A diferencia del sistema decimal que utiliza 10 cifras del 0 al
9, el sistema numrico binario utiliza solo dos cifras el 0 y el 11. En el sistema
binario las columnas no representan la unidad, la decena, la centena, como en el
sistema decimal, si no la unidad (2 0), el doble (21), el doble (22). De modo que al
sumar en la misma columna 1 y 1, dar como resultado 0, llevndonos 1 a la
columna de la izquierda. Para los sistemas digitales es fcil, hasta el punto que
reduce todas las operaciones a sumas y restas de nmeros binarios. Tambin las
palabras, los nmeros y los dibujos se traducen en el computador en secuencias
de 1 y 0.
Sistema de numeracin Octal
Este sistema consta de ocho smbolos desde el 0 hasta el 7, es muy poco
utilizado en los computadores. La facilidad con la que se pueden convertir entre el
sistema octal y el binario, hace que el sistema octal sea atractivo como un medio
taquigrfico de expresin de nmeros binarios grandes. Cuando se trabaja con

gran cantidad de nmeros binarios de muchos bits, es ms adecuado y eficaz


escribirlos en octal y no en binarios.
Sistema de Numeracin Hexadecimal
Este sistema consta de 16 smbolos donde

desde el 0 hasta el 9 son

nmeros y del 10 hasta el 15 son letras. La ventaja de este sistema de numeracin


es que se utiliza para convertir directamente nmeros binarios de 4 bits. En donde
un solo digito hexadecimal puede representar 4 nmeros binarios o 4 bits

Conclusin
El Mtodo de Runge Kutta es mejor que el mtodo de Euler, pero an as es
posible aumentar la precisin achicando los pasos entre los puntos o
implementando el mtodo de orden superior.
Es el mtodo ms utilizado para resolver numricamente problemas de
ecuaciones diferenciales ordinarias con condiciones iniciales es el mtodo de
Runge-Kutte, el cual proporciona un pequeo margen de error con respecto a la
solucin real del problema y es fcilmente programable en un software para
realizar iteraciones necesarias.
El dominio de los mtodos numricos, en combinacin con las capacidades y
potencialidades de la programacin de computadoras resuelve problemas de
ingeniera de manera ms fcil y eficientemente.

Вам также может понравиться