6.2 Métodos de un paso: Método de Euler, Método de Euler mejorado y Método de Runge-Kutta
Método de Euler
El método de Euler es un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado.
El método de Euler es el más simple de los métodos numéricos para resolver un problema del siguiente tipo:
Consiste en multiplicar los intervalos que van de x0 a xf en n subintervalos de ancho h;
Osea:
de manera que se obtiene un conjunto discreto de n+1 puntos: x0, x1, x2, ... , xn del intervalo de interés [x0,xf]. Para cualquiera de estos puntos de cumple que:
Es
posible tener varios tipos de métodos de Runge-Kutta empleando
diferentes números de términos en la función incremento especificada por
n. Observe que el método de Runge-Kutta (RK) de primer orden con n = 1
es, de hecho, el método de Euler. Una vez que se elige n, se evalúan las
a, p y q igualando la ecuación (25.28) a los términos en la expansión
de la serie de Taylor (cuadro 25.1). Así, al menos para las versiones de
orden inferior, el número de términos, n, por lo común representa el
orden de la aproximación. Por ejemplo, en la siguiente sección, los
métodos RK de segundo orden usan la función incremento con dos términos
(n = 2). Esos métodos de segundo orden serán exactos si la solución de
la ecuación diferencial es cuadrática. Además, como los términos con h3 y
mayores se eliminan durante la deducción, el error de truncamiento
local es O(h3) y el global es O(h2). En secciones subsecuentes
desarrollaremos los métodos RK de tercer y cuarto órdenes (n = 3 y 4,
respectivamente). En tales casos, los errores de truncamiento global son
O(h3) y O(h4
Método de Euler
El método de Euler es un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado.
El método de Euler es el más simple de los métodos numéricos para resolver un problema del siguiente tipo:
Consiste en multiplicar los intervalos que van de x0 a xf en n subintervalos de ancho h;
Osea:
de manera que se obtiene un conjunto discreto de n+1 puntos: x0, x1, x2, ... , xn del intervalo de interés [x0,xf]. Para cualquiera de estos puntos de cumple que:
La
condición inicial y(x0)=y0, representa el punto P0=(x0,y0) por donde
pasa la curva solución de la ecuación del plantamiento inicial, la cual
se denotará cmo F(x)=y.
Ya teniendo el punto P0 se puede evaluar la primera derivada de F(x) en ese punto; por lo tanto:
Con
esta información se traza una recta, aquella que pasa por Po y
dependiente f(xo,yo). Esta rect aproxima F(x) en vecinidad de xo. Tómese
la recta como reemplazo de F(x) y localícese en ella (la recta) el
valor de y correspondiente a x1. Entonces, podemos deducir según la
Gráfica A:
Se resuelve para y1:
Es
evidente que la ordenada y1 calculada de esta manera no es igual a
F(x1), pues existe un pequeño error. Sin embargo, el valor y1 sirve para
que se aproxime a F'(x) en el punto P=(x1,y1) y repetir el
procedimiento anterior a fin de generar la sucesión de aproximaciones
siguiente:
Método de Euler Mejorado.
Este
método se basa en la misma idea del método anterior, pero hace un
refinamiento en la aproximación tomando un promedio entre ciertas
pendientes.
La fórmula es la siguiente:
Donde:
Para entender esta fórmula, analicemos el primer paso de aproximación, con base en la siguiente gráfica:
En
la gráfica, ve,os que la pendiente promedio correspondiente a la
pendiente de la recta bisectriz de la recta tangente a la curva en el
punto de la condición inicial a la "recta tangente" a la curva en el
punto (x1,y1). Finalmente, esta recta bisectriz se traslada
paralelamente hasta el punto de la condición incial, y se considera el
valor de esta recta en el punto x=x1 como la aproximación de Euler
Mejorada. A continuación se muestra un vídeo demostrativo del Método de
Euler y de Euler Mejorado, con ejemplo:
Método de Runge-Kutta
Los
métodos de Runge-Kutta (RK) logran la exactitud del procedimiento de la
serie de Taylor sin necesitar el cálculo de derivadas de orden superior
yi+1 = yi + f(xi, yi, h)h
donde
f(xi, yi, h) se conoce como función incremento, la cual puede
interpretarse como una pendiente representativa en el intervalo. La
función incremento se escribe en forma general como
f = a1k1 + a2k2 + · · · + ankn
donde las a son constantes y las k son
k1 = ƒ(xi, yi)
k2 = ƒ(xi + p1h, yi + q11k1h)
k3 = ƒ(xi + p2h, yi + q21k1h + q22k2h)
· · ·
kn = ƒ(xi + pn–1h, yi + qn–1,1k1h + qn–1,2k2h +···+ qn–1,n–1kn–1h)
donde
las p y las q son constantes. Observe que las k son relaciones de
recurrencia. Es decir, k1 aparece en la ecuación k2, la cual aparece en
la ecuación k3, etcétera. Como cada k es una evaluación funcional, esta
recurrencia vuelve eficientes a los métodos RK para cálculos en
computadora.
CODIGO:function [t,x] =euler(f,t0,tf,x0,n)
h=(tf-t0)/n; t=t0:h:tf; x=zeros(n+1,1); %reserva memoria para n+1 elementos del vector x x(1)=x0; for i=1:n x(i+1)=x(i)+f(t(i),x(i))*h; end end
Comentarios
Publicar un comentario