analisis numerico tarea

37
MÉTODO DE EULER El método de Euler llamado así en honor a Leonhard Euler, es un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado. Se estudia por su simplicidad en la derivación de la fórmula y de la determinación del error. Los métodos de orden superior utilizan las mismas técnicas, pero el álgebra que requieren es mucho más complicada. Con el método de Euler se obtiene una solución aproximada de un problema de valor inicial como el que se muestra en la ecuación (1), en un conjunto finito de puntos. Para empezar, se determina la malla {t0, t1, ... , tN} de paso h, donde t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximación de la solución. Para determinar la fórmula del método, se parte de un desarrollo de Taylor de la función solución y(t), alrededor de un punto de la malla, t i, suponiendo que la función y(t) posee derivadas primera y segunda continuas en (a, b): Evaluando esta expresión en t = t i+1, para cualquier i, se tiene: Pero como ti+1- ti = h, resulta: Como y(t) satisface la ecuación diferencial, en particular es y'(ti) = f(ti, yi), entonces reemplazando en la fórmula anterior resulta: Si se elimina de la fórmula anterior el término del error, se puede escribir:

Upload: mario-medina

Post on 14-Dec-2015

93 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: ANALISIS NUMERICO TAREA

MÉTODO DE EULER

El método de Euler llamado así en honor a Leonhard Euler, es un procedimiento de integración

numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado. Se

estudia por su simplicidad en la derivación de la fórmula y de la determinación del error. Los

métodos de orden superior utilizan las mismas técnicas, pero el álgebra que requieren es mucho

más complicada.

Con el método de Euler se obtiene una solución aproximada de un problema de valor inicial como el que se muestra en la ecuación (1), en un conjunto finito de puntos.

Para empezar, se determina la malla {t0, t1, ... , tN} de paso h, donde t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximación de la solución.

Para determinar la fórmula del método, se parte de un desarrollo de Taylor de la función solución y(t), alrededor de un punto de la malla, ti, suponiendo que la función y(t) posee derivadas primera y segunda continuas en (a, b):

Evaluando esta expresión en t = ti+1, para cualquier i, se tiene:

Pero como ti+1- ti = h, resulta:

Como y(t) satisface la ecuación diferencial, en particular es y'(ti) = f(ti, yi), entonces reemplazando

en la fórmula anterior resulta:

Si se elimina de la fórmula anterior el término del error, se puede escribir:

Page 2: ANALISIS NUMERICO TAREA

Resultando así la fórmula del método de Euler para aproximar la solución en un punto de la malla, teniendo una aproximación en el punto inmediato anterior. Como la condición en el punto a del problema de valor inicial da el valor inicial y(t0)= , se tiene entonces la solución aproximada en todos los puntos de la malla. Si se llaman yi = y(ti), se tiene entonces la fórmula de Euler dada en la fórmula (7):

Implementación del método

A continuación se presenta el algoritmo del método de Euler en pseudocódigo, para resolver un problema de valor inicial del tipo (1). Éste es un algoritmo para una ecuación particular, si se quiere generalizar para una ecuación cualquiera, con f(t, y) arbitraria, se debe ingresar también como argumento la ley de f. Esto se puede implementar en cualquier lenguaje de programación, o en particular, en programas simbólicos o numéricos que permitan programar, como Maple, Mathematica, Scilab o Matlab.

Con los valores obtenidos mediante este algoritmo se puede lograr un gráfico discreto de la solución aproximada, o también se puede aplicar un método de interpolación para obtener una gráfica continua en el intervalo. La lista de valores obtenida con el algoritmo se puede utilizar para comparar resultados, o calcular errores relativos y absolutos respecto de la solución exacta, si se conoce.

En el siguiente teorema se deriva una cota de error para el método de Euler. Ciertas condiciones necesitan verificarse para la función que interviene en la ecuación diferencial. Algunas son condiciones para que el PVI tenga solución única, otras son específicas para obtener la cota.

Teorema: Sea el conjunto D = {(t, y) | a ≤ t ≤ b,-∞ ≤ y ≤ ∞} y f(t, y) continua en D, tal que satisface una condición de Lipschitz en D en la variable y. Sea y(t) la solución única del PVI y' = f(t, y), a ≤ t ≤ b, y(a) = α, y supongamos que existe una constante M tal que |y'' (t)| ≤ M t [a,b]. Sean w0, w1, …, wN las aproximaciones generadas con el método de Euler para N entero positivo. Entonces, para cada i = 0, 1, …, N, se cumple:

Page 3: ANALISIS NUMERICO TAREA

Observación: Este teorema tiene como punto débil el requisito de conocer una cota de la derivada segunda de la solución, ya que en general, la solución exacta no se conoce. Algunas veces, es posible obtener una cota del error de la derivada segunda sin conocer explícitamente la función solución. Por ejemplo, si existen las derivadas parciales de la función f(t, y), aplicando la regla de la cadena, se tiene que:

Por lo tanto, si se conocen cotas de f y las derivadas parciales de f, se puede tener una cota de y''.

La importancia principal de la fórmula de cota de error del método de Euler dada en (12) consiste en que dicha cota depende linealmente del tamaño del paso h. Esto implica que, al disminuir el tamaño del paso, las aproximaciones deberán ser más precisas. Pero en el resultado del teorema anterior, no se tiene en cuenta el efecto que el error de redondeo ejerce sobre el tamaño del paso. A medida que h se hace más pequeño, aumenta la cantidad de cálculos, y se puede predecir un mayor error de redondeo. Entonces, para determinar una cota del error, se debe tener en cuenta el error de redondeo, y se puede establecer el siguiente teorema:

Teorema: Considere el PVI y' = f(t, y), a ≤ t ≤ b, y(a) = α, con f continua y tal que satisface una condición de Lipschitz en la variable y con constante L, en el conjunto D = {(t, y) | a ≤ t ≤ b,-∞ ≤ y ≤ ∞}. Sea y(t) la solución única del PVI, y supongamos que existe una constante M tal que |y'' (t)| ≤ M t [a,b]. Sean w0, w1, …, wN las aproximaciones generadas con el método de Euler para N entero positivo, donde cada una tiene un error de redondeo asociado δ i. Si |δi| ≤ δ para cada i de 0 a N, entonces, para cada i = 0, 1, …, N, se cumple:

Se ve claramente en la fórmula anterior que cuando el valor de h se hace muy pequeño, la cota del error puede aumentar, ya que h aparece en el denominador de un cociente. La cota de error aquí obtenida, ya no es lineal en h.

Si se considera la expresión E(h) = h M/2 + /h, tenemos que tiende a infinito cuando h tiende a cero. Con esto, se ve que cuando h tiende a cero, el error aumenta. Podemos establecer una cota inferior para h, de manera de evitar este problema. Si calculamos la derivada de

E(h), tenemos que E'(h) = M/2 - /h2, por lo tanto, se anula en el valor . En este valor de h, E'(h) pasa de ser negativa a positiva, con lo que se puede concluir que en dicho valor E(h) presenta un mínimo. Esto indica que éste es el valor mínimo que se puede tomar para h. En general, el valor de es lo bastante pequeño como para que esta cota más baja no influya en la aplicación del método de Euler.

Page 4: ANALISIS NUMERICO TAREA

EJERCICIOS RESUELTOS

2.- Consideremos el siguiente problema de valor inicial.

La fórmula de Euler para este problema, tomando N puntos en el intervalo [1, 2] (sin contar el punto de partida a = 1), resulta:

Page 5: ANALISIS NUMERICO TAREA

Aplicamos el método de Euler para un paso h = 0,2.

Teniendo en cuenta que h = 0,2, la cantidad de puntos en el intervalo resulta ser N = 5, y entonces la tabla de valores obtenida con la fórmula dada en (8) resulta:

i t y

0 1,00 2,0000 1 1,20 2,4000 2 1,40 2,9760 3 1,60 3,8093 4 1,80 5,0282 5 2,00 6,8384

Ahora, aplicamos la fórmula el método de Euler con N = 20 y N = 50. Representamos gráficamente los puntos obtenidos, comparándolos con la solución exacta, dada por la función

Se ve en los gráficos obtenidos, que a medida que nos alejamos del valor inicial, la solución aproximada pierde precisión (se aleja de la solución exacta), para el paso h = 1/20. Cuando se achica el paso, la solución mejora (h = 1/50).

Page 6: ANALISIS NUMERICO TAREA

3.- Dada la siguiente ecuación diferencial con la condición inicial:

Aproximar

Aplicamos el método de Euler y para ello, observamos que la distancia

entre y no es lo suficientemente pequeña. Si didimos esta distancia entre

cinco obtenemos un valor de y por lo tanto, obtendremos la aproximación deseada en cinco pasos.

De esta forma, tenemos los siguientes datos:

Sustituyendo estos datos en la formula de Euler, tenemos, en un primer paso:

Aplicando nuevamente la formula de Euler, tenemos, en un segundo paso:

Y así sucesivamente hasta obtener . Resumimos los resultados en la siguiente tabla:

n

0 0 1

1 0.1 1

2 0.2 1.02

3 0.3 1.0608

4 0.4 1.12445

5 0.5 1.2144

Concluímos que el valor aproximado, usando el método de Euler es:

Page 7: ANALISIS NUMERICO TAREA

Puesto que en este caso, conocemos el valor verdadero, podemos usarlo para calcular el error relativo porcentual que se cometió al aplicar la fórmula de Euler. Tenemos que:

4.- Aplicar el método de Euler para aproximar , dada la ecuación diferencial.

Nuevamente vemos que nos conviene dividir en pasos la aproximación. Así, elegimos

nuevamente para obtener el resultado final en tres pasos. Por lo tanto, aplicamos el método de Euler con los siguientes datos:

En un primer paso, tenemos que:

Resumimos los resultados en la siguiente tabla:

n

0 1 2

1 1.1 2.3

2 1.2 2.6855

3 1.3 3.1901

De lo cual, concluímos que la aproximación buscada es:

Page 8: ANALISIS NUMERICO TAREA

5.- Use el método de Euler para integrar numéricamente la siguiente ecuación diferencial:

6.- Calcular mediante el método de Euler

Calculamos el valor de tomando en cuenta que el valor de divisiones es de ; por lo tanto quedaría así:

Antes de aplicar el método, veamos un esquema de cómo trabajaría el método en este caso concreto:

Los valores iniciales de y vienen dados por:

, .

Page 9: ANALISIS NUMERICO TAREA

Teniendo dichos valores podemos comenzar con el método. Se harán aproximaciones de hasta trece decimales. La función seno se evaluará en grados.

Por lo que el resultado obtenido es: ; posteriormente procederemos a encontrar el valor relativo entre el valor exacto de la ecuación que es

.

Finalmente se calcula el error relativo:

8.- Usar el método de Euler para aproximar la solución del P.V.I. dado en los puntos x = 0.1, 0.2, 0.3, 0.4, 0.5 usando tamaño de paso h = 0.1.

Page 10: ANALISIS NUMERICO TAREA

7.- Usar el método de Euler para aproximar la solución del P.V.I. dado en los puntos x = 0.1, 0.2, 0.3, 0.4, 0.5 usando tamaño de paso h = 0.1.

Page 11: ANALISIS NUMERICO TAREA

9.- Sea el problema de valor inicial:

Page 12: ANALISIS NUMERICO TAREA

10.- Utilizar el método de Euler para aproximar la solución del problema de valor inicial:

Page 13: ANALISIS NUMERICO TAREA

MÉTODO DE TAYLOR

Se presenta de nuevo el problema de valor inicial cuya solución se intenta aproximar:

Como en el método de Euler, se determina primero la malla {t0, t1, ... , tN} de paso h, donde t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximación de la solución.

El método de Euler se obtuvo aplicando el desarrollo de una función en polinomios de Taylor con n = 1, para aproximar la solución de la ecuación diferencial del problema (1). El error local de este método, dado por el error de la fórmula de Taylor, resultó O(h2), llevando a un error global de O(h). Con el objeto de encontrar un método que mejore las propiedades de convergencia, se pueden utilizar, de la misma manera, polinomios de Taylor de mayor grado.

Se supone que la solución y(t) del problema de valor inicial (1) tiene (n+1) derivadas continuas. Si se hace un desarrollo de Taylor de la función y(t) alrededor del punto t i se tiene:

para algún número ξi entre ti y t. Si se evalúa la expresión (2) en t = ti+1, para cualquier i, y como ti+1 - ti = h, se tiene, para ξi entre ti y ti+1

Como y satisface la ecuación diferencial, en particular es y'(ti ) = f(ti,yi), y derivando sucesivamente (teniendo en cuenta que y es función de t, por lo que se deberá aplicar la regla de la cadena), se tiene:

y''(ti ) = f'(ti, yi) = (ft 1 + fy y')i = (ft + fy f)i

y'''(ti ) = f''(ti, yi) = [ftt 1 + fty y' + fyt 1 + fy' f + fy f ']i = [ftt + fty f + (fyt 1 + fyy y')f + fy (ft + fy f)]i

= [ftt + 2fty f + fyy f 2 + fy ft + fy2 f)]i

y en general, y(n)(ti ) = f(n-1)(ti,yi) (utilizando la expresión corta)

Al sustituir estos resultados en la ecuación (3), se obtiene:

Page 14: ANALISIS NUMERICO TAREA

La ecuación dada por (4) se llama ecuación de diferencias, y define el método de Taylor de orden n, que se obtiene suprimiendo el término de error que contiene el valor desconocido ξi.

Por lo tanto, la fórmula del método de Taylor de orden n resulta:

Método de Taylor de orden 2

Según la expresión (5) para n = 2, el método de Taylor de orden 2 es:

Esta fórmula tiene un error local de O(h3), y un error global de O(h2). Es más precisa que la fórmula de Euler, pero requiere el cálculo de la derivada de la función f(t, y).

Método de Taylor de orden 4

Según la expresión (5) para n = 4, el método de Taylor de orden 4 es:

EJERCICIOS RESUELTOS

1.- Sea el problema de valor inicial

A continuación, se aplican las fórmulas de los métodos de Euler, Taylor de orden 2 y 4 al problema de valor inicial, y se comparan los errores, teniendo en cuenta la solución exacta, que en este caso se puede calcular.

Calcular, aplicando la regla de la cadena, las derivadas de orden 1, 2 y 3 de la función f(t, y) = t y:

f '(t, y(t)) = y + t y' = y + t (t y) = y(1 + t2)

f ''(t, y(t)) = y'(1 + t2) + y 2 t = t y (1 + t2) + 2 t y = (3 t + t3) y

Page 15: ANALISIS NUMERICO TAREA

f '''(t, y(t)) = (3 + 3 t2) y + (3 t + t3) y' = (3 + 3 t2) y + (3 t + t3) t y = (3+ 6 t2 + t4) y

Reemplazando la fórmula iterativa para el método de Euler resulta:

Reemplazando las derivadas correspondientes se obtiene la fórmula del método de Taylor de orden 2:

Por último, reemplazando las derivadas, resulta la fórmula del método de Taylor de orden 4:

Con el valor de h = 0,25 se obtuvieron los valores que se muestran en la tabla, para los métodos de Euler y de Taylor de orden 2 y 4, los errores absolutos de todos los métodos, respecto de la solución exacta, que en este caso se puede calcular en forma analítica, mediante separación de variables.

t exacta Euler Error Euler Taylor 2 Error Taylor 2 Taylor 4

Error Taylor 4

0,00 1,00000000

1,00000000 0,00000000 1,00000000 0,00000000 1,00000000 0,00000000

0,25 1,03174341

1,00000000

0,031743407

1,031250000

0,000493407

1,031738281 5,1265E-06

0,50 1,13314845 1,0625000

0,070648453

1,129943848

0,003204605

1,133103361 4,50921E-05

0,75 1,32478476 1,1953125

0,129472259

1,315325260

0,009459499

1,324639601

0,000145158

1,00 1,64872127

1,41943359

0,229287677

1,626173613

0,022547658

1,648348707

0,000372564

1,25 2,18420081

1,77429199

0,409908819

2,134352867

0,049847944

2,183310836

0,000889975

1,50 3,08021685

2,32875824

0,751458609

2,972253113

0,107963736

3,078122306

0,002094543

1,75 4,62395315

3,20204258

1,421910573

4,388717487

0,235235665

4,618968259

0,004984894

2,00 7,3890561 4,60293621

2,786119891

6,865942788

0,523113311

7,376895196

0,012160903

Page 16: ANALISIS NUMERICO TAREA

En el siguiente gráfico se pueden ver las soluciones obtenidas con los distintos métodos, y la proximidad a la solución exacta de cada una de ellas.

2.- Aplicar el método de Taylor de ordenes 2 y 4 al problema de valor inicial:

Solución:

Es necesario hallar

luego

Page 17: ANALISIS NUMERICO TAREA

para m el método de Taylor de orden 2 es:

donde

3.- Encuentre un valor aproximado para utilizando un polinomio de grado dos y estime el error.

Solución. Los datos a considerar en la fórmula de taylor son:

a) f(x) =

b) xo = 27

f(27) = 3

La fórmula de Taylor, es este caso nos queda:

y al sustituir x =28, obtenemos:

= 3.036579789.

Page 18: ANALISIS NUMERICO TAREA

En la expresión para el error al aproximar con un polinomio de grado 2

E2 =

El error siempre lo obtendremos en términos de un valor c entre 27 y 28, sin embargo como esta indeterminada c aparece en la fracción de la derecha, el error será lo más grande posible cuando el denominador sea lo más pequeño posible, lográndose esto en c = 27, es decir:

y en consecuencia la aproximación se obtuvo con un error que no excede de 0.000056

4.- Encuentre un valor aproximado para utilizando un polinomio de Taylor de grado 3 y estime el error.

Solución. Obsérvese que = e0.5, es decir se nos pide evaluar a la función exponencial en 0.5, el cual es un valor cercano a x0 = 0, punto en que conocemos a la función exponencial y a sus derivadas.

Así pues encontremos la fórmula de Taylor

para f(x) = ex en xo = 0 y posteriormente evaluaremos en x = 0.5

Como la función exponencial y todas sus derivadas son iguales, f (n) (0) = 1, la fórmula nos queda:

evaluando en x = 0.5, tenemos:

e0.5 = 1.64583333 + E3

E3 =

Page 19: ANALISIS NUMERICO TAREA

Como f (4) (x) = ex , para x [0, 1], es decir la derivada está acotada por 3 y en consecuencia

= 0.0078125.

En base a todo lo anterior, podemos afirmar que:

1.645833333 con un error que no excede de 8 milésimas.

5.- ¿De qué grado hay que tomar el polinomio de Taylor para encontrar una aproximación a con un error que no exceda de una diezmilésima?

Solución. En referencia al ejemplo anterior, el error que se comete al utilizar un polinomio de Taylor de grado n es:

En =

De nuevo la (n+1)-ésima derivada está acotada por 3, obteniendo:

Para n = 4, = 0.00078, es decir el error no excede de 7 diezmilésimas.

Para n = 5, = 0.000065, es decir el error no excede de 6 cienmilésimas,

Por lo tanto debe tomarse un polinomio de grado 5.

La fórmula de Taylor para f(x) = ex en xo = 0 para n = 5 es:

y evaluando en x = 0.5, obtenemos:

= 1.648697917

Page 20: ANALISIS NUMERICO TAREA

6.- ¿De qué grado hay que tomar el polinomio de Taylor para encontrar una aproximación al número e de Euler con un error que no exceda de una millonésima?

Solución. Nótese que tomaremos f(x) = ex con xo = 0 y x = 1, y aunque 1 esté "alejado" del 0, como las derivadas están acotadas, podemos encontrar la aproximación con el grado de precisión que se desee con tal de tomar un polinomio de Taylor de grado "suficientemente grande".

Veamos pues de que grado tendremos que tomar el polinomio.

El error que se comete al utilizar un polinomio de Taylor de grado n es:

En =

De nuevo la (n+1)-ésima derivada está acotada por 3, obteniendo:

Para n = 5, = 0.0039, es decir el error no excede de 3 milésimas.

Para n = 8, = 0.000008, es decir el error no excede de 8 millonésimas.

Para n = 9, = 0.0000008, es decir el error no excede de 8 diezmillonésimas.

Por lo tanto debe tomarse un polinomio de grado 9.

La fórmula de Taylor para f(x) = ex en xo = 0 para n = 9 es:

expresado en notación sumatoria:

y evaluando en x = 1, obtenemos:

= 2.718281526

Page 21: ANALISIS NUMERICO TAREA

7.- Resolver el problema de valor inicial

Page 22: ANALISIS NUMERICO TAREA

8.- Aplicar el método de Taylor de órdenes dos y cuatro al problema de valor inicial.

Page 23: ANALISIS NUMERICO TAREA

9.-

Page 24: ANALISIS NUMERICO TAREA

10.-

MÉTODOS DE RUNGE KUTTA

Los métodos de Runge kutta tienen el error local de truncamiento del mismo orden que los métodos de Taylor, pero prescinden del cálculo y evaluación de las derivadas de la función f(t, y).

Se presenta de nuevo el problema de valor inicial cuya solución se intenta aproximar:

Como en los métodos anteriores, se determina primero la malla {t0, t1, ... , tN} de paso h, donde t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximación de la solución.

En esencia, los métodos de Runge-Kutta son generalizaciones de la fórmula básica de Euler yi+1 = yi + h f(ti, yi) en los que el valor de la función f se reemplaza por un promedio ponderado de valores de f en el intervalo ti ≤ t ≤ ti+1, es decir,

Page 25: ANALISIS NUMERICO TAREA

En esta expresión las ponderaciones wi, i = 1, ..., m son constantes para las que en general se pide que su suma sea igual a 1, es decir, w1 + w2 + ... + wm = 1, y cada kj es la función f evaluada en un punto seleccionado (t, y) para el cual ti ≤ t ≤ ti+1. Se mostrará que los kj se definen en forma recursiva.

Se define como orden del método al número m, es decir, a la cantidad de términos que se usan en el promedio ponderado.

Runge-Kutta de primer orden

Si m = 1, entonces se toma w1 = 1 y la fórmula anterior resulta

Igualando esta fórmula al desarrollo de Taylor de orden 1 de la función y(t), alrededor del punto ti, y calculado en el punto ti+1:

y teniendo en cuenta que yi y(ti), resulta k1= f(ti, yi), obteniendo así la fórmula de Euler yi+1 = yi + h f(ti, yi). Por lo tanto, se dice también que el método de Euler es un método de Runge Kutta de primer orden.

Runge-Kutta de segundo orden

Ahora se plantea, con m = 2, una fórmula del tipo:

donde

y las constantes a, b, , se deben determinar, de manera que la expresión coincida con el desarrollo de Taylor de y de orden más alto posible.

Para ello, utilizando un desarrollo de Taylor para funciones de dos variables, tenemos que:

donde el subíndice i indica que todas las derivadas están evaluadas en el punto (ti, yi).

Reemplazando k1 y teniendo en cuenta la expresión de k2, tenemos que:

Page 26: ANALISIS NUMERICO TAREA

agrupando los términos de (8) por las potencias de h, y reemplazando en la expresión (5) el valor de k1 y k2, resulta

Reacomodando los términos, resulta:

Por otro lado, se hace un desarrollo de Taylor de orden 3 de la función y(t), calculado en el punto ti+1, obteniendo:

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 h2, se tiene:

Sucede que se tienen cuatro incógnitas, pero tres ecuaciones, con lo que queda un grado de libertad en la solución del sistema dado en (13). Se trata de usar este grado de libertad para hacer que los coeficientes de h3 en las expresiones (10) y (12) coincidan. Esto obviamente no se logra para cualquier f.

Hay muchas soluciones para el sistema (13), una de ellas es

Page 27: ANALISIS NUMERICO TAREA

obteniendo así la siguiente fórmula, del método de Runge Kutta de orden 2:

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

Este método tiene un error local de O(h3), y global de O(h2).

Mejora entonces el método de Euler, por lo que se espera poder usar con este método un paso mayor. El precio que debe pagarse en este caso, es el de evaluar dos veces la función en cada iteración.

De la misma manera que se realizó arriba, se pueden derivar fórmulas de Runge-Kutta de cualquier orden, pero estas deducciones resultan excesivamente complicadas. Una de las más populares, y más utilizada por su alta precisión, es la de orden 4, que se presenta a continuación.

Runge-Kutta de cuarto orden

Si ahora m = 4, se obtiene, con un desarrollo del tipo del anterior, la siguiente fórmula, para i desde 0 hasta N-1:

Si bien con facilidad se pueden deducir otras fórmulas, el algoritmo expresado anteriormente se denomina método de Runge-Kutta de cuarto orden, o método clásico de Runge-Kutta, abreviado como RK4. Este algoritmo es de uso extendido, y reconocido como una valiosa herramienta de cálculo, por la buena aproximación que produce.

Esta fórmula tiene un error de truncamiento local de O(h5), y un error global de O(h4). De nuevo, el precio que se debe pagar por la mejora en el error, es una mayor cantidad de evaluaciones de

Page 28: ANALISIS NUMERICO TAREA

la función, resultando en un mayor tiempo de cálculo si la función es complicada. Tiene la ventaja, sobre el método de Taylor de orden 4 (cuyo error global es también O(h4), que no requiere el cálculo de las derivadas de f.

Implementación del método RK4

Se presenta a continuación el pseudocódigo del método RK4, para ser implementado en cualquier lenguaje de programación, o software simbólico.

EJERCICIOS RESUELTOS

1.- Con el método RK4, obtener una aproximación del valor de y(1,5) para el siguiente problema de valor inicial, tomando 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 solución.

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 solución, dados por la fórmula ti = 1 + 0,1 i, para i =1,2,3,4,5, son:

t1 = 1,1 t2 = 1,2 t3 = 1,3

Page 29: ANALISIS NUMERICO TAREA

t4 = 1,4 t5 = 1,5

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

Resulta entonces,

y aplicando sucesivamente la fórmula de RK4, para i desde 1 hasta 4, se obtienen los datos que se muestran en la siguiente tabla, donde además se muestra el valor de la solución exacta para cada punto de la malla.

Al analizar la tabla anterior y comparar los resultados obtenidos con el método RK4 con los valores reales, se ve por qué es tan difundido este método. En la próxima tabla se comparan los métodos de Euler y Runge Kutta de orden 4 para el mismo problema.

Page 30: ANALISIS NUMERICO TAREA

2.- Usar el metodo de Runge-Kutta para aproximar

dada la siguiente ecuacion diferencial:

Primero, identificamos el mismo ejemplo 1 de los dos métodos anteriores. Segundo, se

procede con los mismos datos:

Para poder calcular el valor de , debemos calcular primeros los valores de

Se tiene entonces que:

con el fin de un mayor entendimiento de las fórmulas, vea la siguiente iteración:

Page 31: ANALISIS NUMERICO TAREA

El proceso debe repetirse hasta obtener:

iEn la siguiente tabla, se resumen los resultados de las iteraciones:

Se concluye que el valor obtenido con el metodo de Runge-Kutta es:

Finalmente se calcula el error relativo verdadero:

3.- Usar el metodo de Runge-Kutta para aproximar dada la ecuacion diferencial:

Igual que siempre, si se toma: se llega a la aproximacion en dos pasos.

Con esta aclaracion, se tienen los siguientes datos:

Primera Iteracion:

Page 32: ANALISIS NUMERICO TAREA

Segunda iteracion:

entonces que el valor buscado es:

4.-

Page 33: ANALISIS NUMERICO TAREA

5.-

Page 34: ANALISIS NUMERICO TAREA

6.-

7.- Encontrar el valor aproximado de y(1), por el método de Runga-Kutta de cuarto orden, del

siguiente problema de valores iniciales:

Page 35: ANALISIS NUMERICO TAREA

8.- Aplicar el método de Runge-Kutta de orden cuatro para obtener un valor aproximado de x(1)

e y(1)en el siguiente problema de valor inicial:

Page 36: ANALISIS NUMERICO TAREA

9.-

Page 37: ANALISIS NUMERICO TAREA

10.-