Metodos Numericos Trabajo Unidad 6

Métodos númericos. Trabajo de Investigación. Profesor: Ayala Partida Fernando. Unidad VI Alumno: Ayala Valenzuela Emmanu

Views 66 Downloads 4 File size 770KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Métodos númericos. Trabajo de Investigación. Profesor: Ayala Partida Fernando. Unidad VI Alumno: Ayala Valenzuela Emmanuel. No. De Control: C16040713

08/12/2018

Tabla de contenido 6.1 Método de Euler ..................................................................................................................... 3 6.2 Método de Newton-Raphson para sistema de ecuaciones no lineales ...................... 10 6.3 Aplicaciones de sistemas de ecuaciones Diferenciales. ............................................... 18 6.4 Uso de herramientas computacionales. ........................................................................... 21 Bibliografía ....................................................................................................................................... 22

6.1 Método de Euler El método de Euler, llamado así en honor a Leonhard Euler, es un procedimiento de numérica para resolver ecuaciones diferenciales ordinarias (EDO) 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 de valor inicial, y el más simple de los Métodos de Runge-Kutta. El método de Euler es un método de primer orden, lo que significa que el error local es proporcional al cuadrado del tamaño del paso, y el error global es proporcional al tamaño del paso. El método de Euler regularmente sirve como base para construir métodos más complejos. El método de Euler rara vez se utiliza en la práctica para obtener la solución aproximada de un problema de valor inicial, pero 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.

(1)

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):

(2)

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

(3)

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

(4)

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

(5)

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

(6)

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)= a, 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):

(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. Ejemplo 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:

(8)

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).

Análisis del error Al deducir la fórmula de Euler para aproximar la solución de un PVI tipo (1), al pasar de la expresión (5) a la (6), se descartó en la expresión el error, dado por (9)

De esta fórmula surge que el error local de truncamiento en el método es O(h 2). Teniendo en cuenta que, por ser y'' continua, (10)

y también que h = (tN – t0)/N, se tiene que después de N pasos, el error global acumulado es: (11)

Por lo tanto, el error global en el método de Euler es O(h). El procedimiento anterior puede aplicarse a todos los métodos estudiados. El orden del error global resulta siempre uno menos que el orden del error local de truncamiento (el error del cálculo de yi+1 para un solo paso).

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:

(12)

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: (13)

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:

(14)

Se ve claramente en la fórmula dada en (14) 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 lo tanto, se anula en el valor

/h2, por

. 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.

6.2 Método de Newton-Raphson para sistema de ecuaciones no lineales Los métodos de Runge-Kutta son un conjunto de métodos genéricos iterativos, explícitos e implícitos, de resolución numérica de ecuaciones diferenciales. Este conjunto de métodos fue inicialmente desarrollado alrededor del año 1900 por los matemáticos C. Runge y M. W. 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 {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,

(2)

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 t i ≤ 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 (2) resulta

(3)

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:

(4)

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:

(5)

donde

(6)

y las constantes a, b,

,

se deben determinar, de manera que la expresión (5)

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: (7 ) donde el subíndice i indica que todas las derivadas están evaluadas en el punto (t i, yi). Reemplazando k1 y teniendo en cuenta la expresión de k2, usando (7) tenemos que:

(8 )

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

(9 )

Reacomodando términos en (9), resulta:

(10 )

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:

(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 h 2, se tiene:

(13)

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

(14)

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

(15)

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 RungeKutta 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:

(16)

Si bien con facilidad se pueden deducir otras fórmulas, el algoritmo expresado en (16) 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 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.

Ejemplo 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

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.

6.3 Aplicaciones de sistemas de ecuaciones Diferenciales. Las ecuaciones diferenciales, debido a que relacionan los valores de una función con los de su(s) derivada(s), son una herramienta fundamental en el tratamiento matemático de cualquier fenómeno dinámico, es decir, que involucre magnitudes que cambian con el tiempo (o con cualquier otra magnitud). Por ello, sus campos de aplicación son numerosos en física, química, biología, economía. Ley de desintegración radiactiva Los núcleos de determinados elementos químicos (radiactivos) se desintegran, transformándose en otros y emitiendo radiaciones. Se sabe que la velocidad de desintegración de una sustancia radiactiva (es decir, el número de átomos que se desintegran por unidad de tiempo) en un instante dado es proporcional al número de átomos de dicha sustancia existentes en ese instante. En consecuencia, si se denota por A (t) el número de ´átomos de la sustancia original presentes en el instante t, se puede escribir: A 0 (t) = −a (t) Donde el signo menos se debe a que la velocidad es negativa (el número de ´átomos disminuye) y la constante de proporcionalidad, λ > 0, se llama constante de descomposición o de decaimiento, y es propia de cada sustancia radiactiva.

Ley de enfriamiento de Newton En determinadas condiciones, la velocidad a la que cambia la temperatura de un objeto es proporcional a la diferencia entre su temperatura y la del medio en que se encuentra. Si se denota por T (t) la temperatura del objeto en el instante t, la ley anterior se expresa matemáticamente mediante la siguiente ecuación diferencial ordinaria: T 0 (t) = −k (T (t) − M) Donde M es la temperatura del medio (que se supone constante) y k es la constante de proporcionalidad, propia del objeto. Dinámica de poblaciones El comportamiento de una población de seres vivos cuyo número de individuos varía en el tiempo puede también ser matemáticamente modelada mediante ecuaciones diferenciales. Se presenta aquí un caso sencillo. En determinadas condiciones, el crecimiento de algunas poblaciones se rige por la siguiente ley, denominada logística: p 0 (t) = r p (t) − m p2 (t).

En esta ecuación p (t) representa el número de individuos de la población existentes en el instante t. El primer término de la derecha de esta ecuación (r p (t)) expresa matemáticamente el crecimiento natural de la población, debido a la reproducción: la población crece de forma proporcional al número de individuos de la misma. El segundo término (−m p2 (t)) intenta expresar el hecho de que, si los recursos (alimentos) son limitados, entonces los individuos de la población “compiten” por ellos, impidiendo un crecimiento ilimitado. Este término hace disminuir la velocidad a la que crece la población, razón por la que lleva signo menos.

Dinámica de poblaciones Modelo presa-depredador El caso, mucho más complicado desde el punto de vista matemático, en que hay dos especies diferentes que interaccionan, también se puede representar mediante ecuaciones diferenciales ordinarias. Por ejemplo, se considera el caso de un sistema presa-predador, es decir, de un eco-sistema con dos poblaciones de dos especies distintas, en donde una de ellas es el alimento de la otra. Se denota por p1 (t) el número de individuos de la población de presas y por p2 (t) el número de individuos de la población de predadores.

En determinadas condiciones, un tal sistema se comporta según la ley siguiente, llamada modelo de Lotka-Volterra: ( p 0 1 (t) = r1p1(t) − d1p1(t)p2(t) p 0 2 (t) = −r2p2(t) + d2p1(t)p2(t). Este modelo es distinto de los anteriores, ya que aquí se tiene un sistema diferencial, es decir un sistema, con dos incógnitas p1 (t) y p2(t), de dos ecuaciones diferenciales que relacionan las incógnitas con sus derivadas y con las otras incógnitas. El término r1p1 (t) de la primera ecuación representa el crecimiento natural (positivo) de la población de presas, en ausencia de predadores. El correspondiente término −r2p2 (t) de la segunda ecuación representa el crecimiento de la población de predadores en ausencia de presas, que es negativo por falta de alimento. Los términos −d1p1 (t) p2 (t) y d2p1(t)p2(t), por su parte, tienen en cuenta la interacción entre ambas especies, que resulta en un decrecimiento de la población de presas y un crecimiento de la población de predadores (todos los coeficientes se suponen positivos).

6.4 Uso de herramientas computacionales. 

MATHEMATICA: incluye un amplio rango de funciones matemáticas, soporta operaciones de álgebra lineal, realiza todo tipo de operaciones algebraicas, opera con funciones, derivadas e integrales y, entre otras muchas cosas, incorpora un módulo gráfico que tiene salida en formato.



DERIVE: El Derive se utiliza para mejorar los resultados obtenidos con la metodología tradicional. Puede ser utilizado en la enseñanza de Álgebra Lineal y en el Cálculo Diferencial e Integral. En algunos casos, Geometría y Matemática Discreta. El Derive es una potente calculadora, que puede ser aprovechada para motivar la introducción de nuevos métodos y conceptos; también para prevenir la fe ciega en el ordenador. (Ejemplos: discusión de sistemas con parámetros, diagonalización de matrices de orden superior a cinco para introducir métodos numéricos.)



MAPLE: permite un ambiente para resolución de problemas matemáticos complejos que involucran expresiones algebraicas, simbólicas, cálculos numéricos de alta precisión e visualización matemática.



MathCAD: incluye funciones de cálculo y gráficas en dos y tres dimensiones; puede producir documentos con texto y gráficas; puede usar un coprocesador matemático en las máquinas que lo tengan incorporado.

Bibliografía



Explicación gráfica del Método Runge Kutta



Weisstein, Eric W. «Runge-Kutta Method». En Weisstein, Eric W. MathWorld (en inglés). Wolfram Research.



TEMA 1 Problemas de Valor Inicial para Ecuaciones Diferenciales Ordinarias: Métodos Numéricos de un paso.



Nieves, Antonio (2007). Métodos numéricos aplicados a la ingeniería. Grupo editorial Patria.