28
Métodos de Runge Kutta Los métodos de Taylor tienen la propiedad de un error local de truncamiento de orden superior, pero la desventaja de requerir el cálculo y la evaluación de las derivadas de f(t, y). Esto resulta algo lento y complicado, en la mayoría de los problemas, razón por la cual, en la práctica casi no se utilizan. El método de Euler, lamentablemente requiere de un paso muy pequeño para una precisión razonable. 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: (1) Como en los métodos anteriores, se determina primero la malla {t 0 , t 1 , ... , t N } de paso h, donde t 0 = a y t N = 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 y i+1 = y i + h f(t i , y i ) en los que el valor de la función f se reemplaza por un promedio ponderado de valores de f en el intervalo t i ≤ t ≤ t i+1 , es decir, (2 ) En esta expresión las ponderaciones w i , i = 1, ..., m son constantes para las que en general se pide que su suma sea igual a 1, es decir, w 1 + w 2 + ... + w m = 1, y cada k j es la función f evaluada en un punto seleccionado (t, y) para el cual t i ≤ t ≤ t i+1 . Se mostrará que los k j 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 segundo orden Ahora se plantea, con m = 2, una fórmula del tipo:

Métodos de Runge Kutta

Embed Size (px)

DESCRIPTION

analisis

Citation preview

Mtodos de Runge KuttaLos mtodos de Taylor tienen la propiedad de un error local de truncamiento de orden superior, pero la desventaja de requerir el clculo y la evaluacin de las derivadas de f(t, y). Esto resulta algo lento y complicado, en la mayora de los problemas, razn por la cual, en la prctica casi no se utilizan. El mtodo de Euler, lamentablemente requiere de 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 Taylor, pero 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:(1)

Como en los mtodos 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 aproximacin de la solucin.En esencia, los mtodos de Runge-Kutta son generalizaciones de la frmula bsica de Euler yi+1= yi+ h f(ti, yi) en los que el valor de la funcin f se reemplaza por un promedio ponderado de valores de f en el intervalo ti t ti+1, es decir,(2)

En esta expresin 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 kjes la funcin f evaluada en un punto seleccionado (t, y) para el cual ti t ti+1. Se mostrar que los kjse definen en forma recursiva.Se define comoorden del mtodoal nmero m, es decir, a la cantidad de trminos que se usan en el promedio ponderado.Runge-Kutta de segundo ordenAhora se plantea, con m = 2, una frmula del tipo:(5)

donde(6)

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

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

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

Reacomodando trminos en (9), resulta:(10)

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

(11)

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

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

Sucede que se tienen cuatro incgnitas, pero tres ecuaciones, con lo que queda un grado de libertad en la solucin del sistema dado en (13). Se trata de usar este grado de libertad para hacer que los coeficientes de h3en 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(14)

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

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 precio que 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 orden, pero estas deducciones resultan excesivamente complicadas. Una de las ms populares, y ms utilizada por su alta precisin, es la de orden 4, que se presenta a continuacin.

MTODOS RUNGE - KUTTADiego LpezMonitorLos mtodos deRunge-Kuttalogran la exactitud del procedimiento de una serie deTaylorsin requerir el clculo de derivadas superiores. Existen muchas variaciones, pero todas se pueden denotar en la forma generalizada de la ecuacin:

Donde(xi,yi,h)es conocida comofuncin incremento, la cual puede interpretarse como una pendiente representativa sobre el intervalo.

Donde lasason constantes y laskson:

Observe que laskson relaciones de recurrencia, esto es,k1aparece en la ecuacin parak2, la cual aparece en la ecuacin parak3, etc.Como cadakes una evaluacin funcional, esta recurrencia hace que los mtodosRunge-Kuttasean eficientes para la programacin. Existen varios tipos de mtodosRunge-Kuttaal emplear diferentes nmeros de trminos en la funcin incremento como la especificada porn.n= 1, es el mtodo deEuler. Una vez se eligen, se evalan lasa,pyqal igualar la funcin incremento a los trminos en la serie de expansin deTaylor. La versin de segundo orden para la ecuacin en su forma generalizada es:

Donde:

Los valores dea1,a2,p1yq11son evaluados al igualar el trmino de segundo orden de la ecuacin dada con la expansin de la serie deTaylor.Desarrollando tres ecuaciones para evaluar las cuatro incgnitas: Como se tienen tres ecuaciones con cuatro incgnitas se tiene que suponer el valor de una de ellas. Suponiendo que se especific un valor paraa2, se puede resolver de manera simultnea el sistema de ecuaciones obtenido:

Como se puede elegir un nmero infinito de valores paraa2, hay un nmero infinito de mtodosRunge-Kuttade segundo orden.Cada versin podra dar exactamente los mismos resultados si la solucin de laEDOfuera cuadrtica, lineal o una constante.a2= 1/2: Mtodo deHeuncon un solo corrector, donde:

a2= 1 : Mtodo delpunto medio.

a2= 2/3: Mtodo deRalston.

Siguiendo el mismo razonamiento paran= 3, o sea,Runge-Kuttade tercer orden, el resultado son seis ecuaciones con ocho incgnitas, por lo tanto se deben suponer dos valores con antelacin para poder desarrollar el sistema de ecuaciones. Una versin ampliamente usada es:

ste es el ms popular de los mtodosRunge-Kuttade cuarto orden:

Metodo de Runge - KuttaEl 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.Los mtodos de Runge-Kutta (RK) 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 25.1:

Dondees conocida como funcin incremento, la cual puede interpretarse como una pendiente representativa sobre el intervalo. La funcin incremento se escribe por lo general como:

Donde las a son constantes y las k son:

Observe que lasson relaciones de recurrencia. Esto es,aparece en la ecuacin para, la cual aparece en la ecuacin para, etc. Como cada k es una evaluacin funcional, esta recurrencia hace que los mtodossean eficientes para clculos en computadora.Es posible concebir varios tipos de mtodos Runge-Kutta al emplear diferentes nmeros de trminos en la funcin incremento como la especificada por n. Observe que el mtodo Rungue-Kutta (RK) de primer orden cones, de hecho, el mtodo de Euler.Una vez que se elige n, se evalan las a, p y q al igualar la ecuacin 25.28 a los trminos en la serie de expansin de Taylor. As, al menos para las versiones de orden inferior, el nmero de trminos n con frecuencia representa el orden de la aproximacin. Por ejemplo, los mtodos RK de segundo orden usan la funcin incremento con dos trminosEsos mtodos de segundo orden sern exactos si la solucin de la ecuacin diferencial es cuadrtica. Adems, como los trminos con h^3 y mayores son eliminados durante la derivacin, el error de truncamiento local esy el global es. En secciones subsecuentes desarrollaremos mtodos RK de tercer y cuarto ordenPara esos casos, los errores de truncamiento global sony, respectivamente.

Mtodos Runge-Kutta de segundo orden.

La versin de segundo orden de la ecuacin anterior es:

Donde:

Al usar la ecuacin debemos determinar los valores para las constantes a1, a2, p1 y p11. Para ello, recordamos que la serie de Taylor de segundo orden paraen trminos deyesta escrita como:

ecu. 1

Dondedebe determinarse por diferentencias usando las reglas de la cadena

ecu. 2

Si sustituimos la ecuacin ecu. 2 en la ecuacin ecu. 1 se tiene

La estrategia bsica que habr de resaltarse en los mtodos Runge- Kutta es el uso de manipulaciones algebraicas para resolver los valores de, lo cual provoca que las ecuaciones

y la anterior sean equivalentes.Para ello, primero usamos una serie de Taylor para expandir la ecuacin. La serie de Taylor para una funcin de dos variables se define como:

Si se aplica este mtodo para expandir la ecuacintiene

Este resultado podr sustituirse junto con la ecuacinypara dar

O, al agrupar trminos,

Ahora si comparamos trminos comunes en las ecuaciones anteriores determinamos que para hacer equivalentes a las dos ecuaciones, se debe cumplir lo siguiente:

Las anteriores tres ecuaciones simultaneas contienen las cuatro constantes desconocidas. Como hay una incgnitas ms que el numero de ecuaciones, no existe un conjunto nico de constantes que satisfagan las ecuaciones. Sin embargo, al suponer un valor para una de las constantes, podemos determinar las otras tres. En consecuencia, existe una familia de mtodos de segundo orden ms que una sola versin.Como tenemos tres ecuaciones con cuatro incgnitas, debemos suponer el valor de una de estas incgnitas para determinar las otras tres. Suponga que especificamos un valor para a2. Entonces se puede resolver de manera simultnea las ecuaciones 25.31 a 25.33 para obtener:

Debido a que podemos elegir un nmero finito de valores para a2, hay un nmero interminable de mtodos RK de segundo orden. Cada versin podra dar exactamente los mismos resultados si la solucin de la EDO fuera cuadrtica, lineal o una constante. Sin embargo, se obtienen diferentes resultados cuando la solucin es ms complicada. A continuacin presentamos tres de las versiones ms comnmente y usadas y preferidas:Mtodo de Heun con solo corrector (a2 = ). Si suponemos que a2 es 1/2 , las ecuaciones (25.34) y (25.35) podran resolverse para a1 = y p1 = qI 1= 1. Estos parmetros, al ser sustituidos en la ecuacin (25.30), dan

Donde

Observe que k1 es la pendiente al inicio del intervalo y k2 es la del final. En consecuencia, este mtodo Runge-Kutta de segundo orden es de hecho la tcnica de Heun sin iteracin.El mtodo de punto medio (a2 = 1). Si suponemos que a2 es 1, entonces, y la ecuacin es ahora

Donde

Este es el mtodo del punto medio.Mtodo Ralston (). Ralston y Rabinowitz determinaron que al seleccionarse obtiene un lmite mnimo sobre el error de truncamiento para los algoritmos de RK de segundo orden. Para esta versin,

Donde

EjemploComparacin de varios esquemas RK de segundo orden.Enunciado: Use el mtodo de punto medio y el mtodo de Ralston para integrar numricamente la ecuacin:

Desdehastausando un tamao de paso de 0.5. La condicin inicial enCompare los resultados con los valores obtenidos con otro algoritmo RK de segundo orden: el mtodo de Heun sin corrector de iteracin.

Solucin: El primer paso en el mtodo de punto medio es el uso de la ecuacin para calcular:

Sin embargo, como la EDO es una funcin solo de x, tal resultado carece de relevancia sobre el segundo paso para calcular:

Observe que tal estimacin de la pendiente es mucho ms cercana al valor promedio para el intervalo (4.4375) que la pendiente al inicio del intervalo (8.5) que podra haber sido usada por el procedimiento de Euler. La pendiente en el punto medio puede entonces sustituirse en la ecuacin 25.37 para predecir.

El clculo se repite, y los resultados se resumen en la figura 25.14 y la tabla 25.3.

Por medio del mtodo de Ralston, k1 para el primer intervalo es tambin igual a 8.5 y:

La pendiente promedio se calcula por

La cual se usara para predecir

Observe que todos los metodos RK se segundo orden son superiores al metodo de Euler

Mtodo de EulerSe llama mtodo de Euler al mtodo numrico consistente en ir incrementando paso a paso la variable independiente y hallando la siguienteimagencon la derivada.La primera derivada proporciona una estimacin directa de la pendiente en Xi (ver Grfico N01).[1]Dondef(Xi, Yi) es la ecuacin diferencial evaluada en Xi y Yi, Tal estimacin podr substituirse en la ecuacin [2] nos queda que:[2]Esta frmula es conocida como el mtodo de Euler (punto medio). Se predice un nuevo valor de Y por medio de la pendiente (igual a la primera derivada en el valor original de X).

Error para el mtodo de EulerLa solucin numrica de las ecuaciones diferenciales ordinarias (EDO) involucra dos tipos de error.1) Errores de Truncamiento, o discretizacion, causados por lanaturalezade lastcnicasempleadas para aproximarlos valoresde y.2) Errores de Redondeo, que son el resultado del nmero limite de cifras significativas que pueden retener unacomputadora. Mtodo de Euler MejoradoEste mtodo se basa en la misma idea del mtodo anterior, pero hace un refinamiento en la aproximacin, tomando un promedio entre ciertas pendientes.La frmula es la siguiente:

Donde

Para entender esta frmula, analicemos el primer paso de la aproximacin, con base en la siguiente grfica:

En la grfica, vemos que la pendiente promediocorresponde a la pendiente de la recta bisectriz de la recta tangente a la curva en el punto de la condicin inicial y la "recta tangente" a la curva en el puntodondees la aproximacin obtenida con la primera frmula de Euler. Finalmente, esta recta bisectriz se traslada paralelamente hasta el punto de la condicin inicial, y se considera el valor de esta recta en el puntocomo la aproximacin de Euler mejorada.

Metodo de Euler y Euler Mejorado.Una de las tcnicas ms simples para aproximar soluciones de una ecuacin diferencial es el mtodo de Euler, o de las rectas tangentes.La primera derivada proporciona una estimacin directa de la pendiente en

Donde es la ecuacin diferencial evaluada eny. Tal estimacion podra sustituirse ne la ecuacin:Esta frmula es conocida como el mtodo de Euler (o de Euler-Cauchy o de punto medio). Se predice un nuevo valor de por medio de la pendiente (igual a la primera derivada en el valor original de x) que habr de extrapolarse en la forma lineal sobre el tamao de paso h.Anlisis de error para el mtodo de Euler.

La solucin numrica de los EDO involucra dos tipos de error:

1.- Errores de truncamiento, o discretizacion, causados por la naturaleza de las tcnicas empleadas para aproximar los valores de y.

2.- Errores de redondeo, que son el resultado del nmero limite de cifras significativas que puede retener una computadora.

Los errores de truncamiento se componen de dos partes. La primera es un error de truncamiento local que resulta de una aplicacin del mtodo en cuestin sobre un paso sencillo. La segunda es un error de truncamiento propagado que resulta de las aproximaciones producidas durante los pasos previos. La suma de los dos es el total, o error de truncamiento global.Se puede obtener cierto conocimiento acerca de la magnitud y propiedades del error de truncamiento al derivar el mtodo de Euler directamente de la expansin de la serie de Taylor. Para ello, observe que la ecuacin diferencial sujeta a integracin ser de la forma general:

Dondeyyson las variables independiente y dependiente, respectivamente. Si la solucin tiene derivadas continuas, puede representarse por una expansin de la serie de Taylor con respecto a los valores de iniciocmo:

Dondetermino remanente, definido como:

Donde E esta en algn lugar en el intervalo de a. Es posible desarrollar una forma alternativa al sustituir la ecuacin en las ecuaciones para obtener:

Dondeespecifica que el error de funcionamiento local es proporcional al tamao de paso elevado a la potenciaesima.Al comparar las ecuaciones puede verse que el mtodo de Euler corresponde a la serie de Taylor hasta e incluyendo el termino. Adems, la comparacin indica que ocurre un error de truncamiento porque aproximamos la solucin verdadera mediante un numero finito de trminos de la serie de Taylor. De esta forma truncamos, o dejamos fuera, una parte de la solucin verdadera. Al restar la ecuacin se tiene:

Donde Et = error de truncamiento local verdadero. Para h lo suficientemente pequea, los errores en los trminos de la ecuacin disminuyen con frecuencia en tanto aumenta el orden y el resultado a menudo es representado como:

O

Ejemplo.Enunciado del problema. Use el mtodo de Euler para integrar numricamente la ecuacin:

Desdehastacon un tamao de paso 0.5. La condicin inicial enes. Recuerde que la solucin exacta la da la ecuacin:

Solucin. Se puede usar la ecuacin para implementar el mtodo de Euler:

Dondey la pendiente estimada enes

Por tanto,

La solucin real enes

Tabla 1. Comparacin de los valores verdadero y aproximado de la integral de, con la condicin inicial de queen. Los valores aproximados se calcularon mediante el mtodo de Euler comn tamao de paso de 0.5. El error local se refiere al error incurrido sobre un solo paso. Se calcula con una expansin de la serie de Taylor. El error global es la discrepancia total debida a los pasos anteriores as como a los actuales.

As, el error es

O, expresada como error relativo porcentual. Para el segundo paso,

La solucin real enes 3.0 y, por lo tanto, el error relativo porcentual es deEl clculo se repite y los resultados se compilan en la tabla y la figura anteriores. Observe que aunque el clculo captura la tendencia general de la solucin verdadera, el error es considerable. Como se analiza en la siguiente seccin, este error se puede reducir al usar un tamao de paso ms pequeo.El ejemplo anterior usa un polinomio simple para la ecuacin diferencial con el fin de facilitar el siguiente anlisis de error. De esta forma:

Obviamente, un caso ms general involucra varios EDO que dependen de ambos, x e y.

AplicacionesMtodo de Euler y de Euler modificado un circuito elctrico contiene una impedancia, una resistencia y una capacidad, la ecuacin que rige este problema LRC cuando el sistema no esta sometido a ningn potencial es de tipo:

Se tomar con caractersticas del circuito una reactancia L de .4H, R= 300 y una capacidad de .001 F.En el tiempo inicial (t=0), la intensidad es de 3A y su derivada (es decir la carga elctrica) de .5A/s. CSolucinPrimero se debe transformar este problema en un conjunto de ecuaciones de primer orden. Se tomara Q igual a la derivada de la intensidad de corriente.

Si se utiliza el mtodo de EUler tradicional se tiene que resolver dichas ecuaciones empleando las formulas:

La tabla de resultados obtenida con un paso de .0005 es:

Si ahora se utiliza el de Euler modificado las formula son:

Cabe recalcar que el problema se toma muy inestable si ese utilizan valores mas altos para L

MTODO DE EULER MEJORADO Este mtodo se basa en la misma idea del mtodo euler, pero hace un refinamiento en la aproximacin, tomando un promedio entre ciertas pendientes. La frmula es la siguiente: donde Para entender esta frmula, analicemos el primer paso de la aproximacin, con base en la siguiente grfica:

En la grfica, vemos que la pendiente promedio corresponde a la pendiente de la recta bisectriz de la recta tangente a la curva en el punto de la condicin inicial y la recta tangente a la curva en el punto , donde es la aproximacin obtenida con la primera frmula de Euler. Finalmente, esta recta bisectriz se traslada paralelamente hasta el punto de la condicin inicial, y se considera el valor de esta recta en el punto como la aproximacin de Euler mejorada. Ejemplo 1Aplicar el mtodo de Euler mejorado, para aproximar si:

SolucinVemos que este es el mismo ejemplo 1 del mtodo anterior. As que definimos y encontraremos la aproximacin despus de cinco iteraciones. A diferencia del mtodo de Euler 1, en cada iteracin requerimos de dos clculos en vez de uno solo: el de primero y posteriormente el de . Para aclarar el mtodo veamos con detalle las primeras dos iteraciones. Primero que nada, aclaramos que tenemos los siguientes datos iniciales: En nuestra primera iteracin tenemos:

Ntese que el valor de coincide con el (Euler 1), y es el nico valor que va a coincidir, pues para calcular se usar y no . Esto lo veremos claramente en la siguiente iteracin:

Ntese que ya no coinciden los valores de (Euler 1) y el de . El proceso debe seguirse hasta la quinta iteracin. Resumimos los resultados en la siguiente tabla: n

0 0 1

1 0.1 1.01

2 0.2 1.040704

3 0.3 1.093988

4 0.4 1.173192

5 0.5 1.28336

Conclumos entonces que la aproximacin obtenida con el mtodo de Euler mejorado es:

Con fines de comparacin, calculamos el error relativo verdadero: Vemos que efectivamente se ha obtenido una mejor aproximacin con este mtodo, reduciendo el error relativo verdadero de un 5.4% hasta un 0.05%. En nuestro tercer mtodo veremos cmo se reduce an ms este error prcticamente a un 0%! Veamos un segundo ejemplo.

Ejemplo 2Aplicar el mtodo de Euler mejorado para aproximar y(1.3) si tenemos :

SolucinTenemos los siguientes datos:

En una primera iteracin, tenemos lo siguiente:

Resumimos los resultados en la siguiente tabla: n

0 1 2

1 1.1 2.385

2 1.2 2.742925

3 1.3 3.07635

Conclumos entonces que la aproximacin buscada es:

5.1. MTODO DE BISECCINVer Animacin...Sifes una funcin continua sobre el intervalo [a,b] y sif(a)f(b)