7
SOLUCIÓN DE ECUACIONES DIFERENCIALES Método de Runge Kutta El objetivo de los métodos numéricos de runge-kutta, es el análisis y solución de los problemas de valor inicial de ecuaciones diferenciales ordinarias, estos son una extensión del método de Euler para resolver las ecuaciones diferenciales ordinarias, pero con un orden de exactitud más alto que este. Los métodos de Runge-Kutta son una serie de métodos numéricos usados para encontrar aproximaciones de las soluciones de ecuaciones diferenciales y sistemas de ecuaciones diferenciales, lineales y no lineales. Métodos lineales a un paso Son métodos numéricos que para avanzar un paso, sólo dependen del paso anterior, es decir el paso n+1, con más precisión, son métodos de la forma x n+1 =xn +F ( xn,tn,h) x 0=x ( 0) Donde x n es un vector R n , t n es la variable independiente, h el tamaño del paso, y F es una función vectorial (posiblemente no lineal) x n , t n , h. Nótese que lo que tenemos es en realidad un sistema de n ecuaciones. Existen otros métodos llamados multipaso, en los que para avanzar un paso se requiere una función de dos o más pasos anteriores, así como existen métodos no lineales. Teoría en extensión Los métodos de Runge-Kutta son una especialización de los métodos numéricos a un paso. Fundamentalmente, lo que caracteriza a los métodos de Runge-Kutta es que el error en cada paso i es de la forma Ei=Ch k

Rung Kutta

Embed Size (px)

DESCRIPTION

matematicas

Citation preview

Page 1: Rung Kutta

SOLUCIÓN DE ECUACIONES DIFERENCIALES

Método de Runge Kutta

El objetivo de los métodos numéricos de runge-kutta, es el análisis y solución de los problemas de valor inicial de ecuaciones diferenciales ordinarias, estos son una extensión del método de Euler para resolver las ecuaciones diferenciales ordinarias, pero con un orden de exactitud más alto que este.

Los métodos de Runge-Kutta son una serie de métodos numéricos usados para encontrar aproximaciones de las soluciones de ecuaciones diferenciales y sistemas de ecuaciones diferenciales, lineales y no lineales. 

Métodos lineales a un paso

Son métodos numéricos que para avanzar un paso, sólo dependen del paso anterior, es decir el paso n+1, con más precisión, son métodos de la forma 

xn+1=x n+F (x n , t n , h )x 0=x (0)

Donde xn es un vector Rn, tn es la variable independiente, h el

tamaño del paso, y F es una función vectorial (posiblemente no lineal) xn, tn, h.

Nótese que lo que tenemos es en realidad un sistema de n ecuaciones. 

Existen otros métodos llamados multipaso, en los que para avanzar un paso se requiere una función de dos o más pasos anteriores, así

como existen métodos no lineales.

Teoría en extensión

Los métodos de Runge-Kutta son una especialización de los métodos numéricos a un paso. Fundamentalmente, lo que caracteriza a los métodos de Runge-Kutta es que el error en cada paso i es de la forma 

E i=Chk

Siendo C una constante real positiva, al número k se le llama orden del método y h ya sabemos que es el tamaño del paso. En los métodos de Runge-Kutta se llama etapas a las sucesivas evaluaciones de la función f en cada paso. El número de etapas de un

Page 2: Rung Kutta

método de Runge-Kutta es el número de veces que la función es evaluada en cada paso i, Este concepto es importante porque evaluar la función requiere un coste computacional (a veces alto) por tanto se prefieren métodos con el menor número posible de etapas.

Un primer ejemplo es el método de Euler que es de la forma 

El método de Euler (Runge-Kutta de orden 1)xn+1=x n+hF ( xn , t n )

En dicho método el error es de la forma e ≤ Ch y por tanto el método de Euler es de orden 1

Observación: La función se evalúa 1 vez en cada paso, número de etapas: 1.

Un ejemplo de un método de orden 2 es el método del punto medio o también regla del punto medio, que es de la forma 

El método del punto medio (Runge-Kutta de orden 2)

X n+1=X n+h f (Xn+h2f ( Xn ,t n ) , tn+

h2)

En dicho método el error es de la forma e ≤ Ch2 y por tanto el método del punto medio es de orden 2

Observación: El número de veces que se evalúa la función en cada paso del método es 2, número de etapas: 2.

Runge-kutta estándar de orden 4 (Runge-Kutta de orden 4)

X n+1=x n+h/6 (k 1+2k 2+2k3+k 4)

Donde 

k 1=f (x n , t n) 

Page 3: Rung Kutta

k 2=f (x n+hk 1/2 , t n+h /2) k 3=f ( xn+hk 2 /2 , t n+h/2) k 4=f (x n+hk 3 , t n+h) 

Ahora el error es de la forma e ≤ Ch4 y por tanto el método es de orden 4 

Observación: El número de veces que se evalúa la función en cada paso del método es 4, número de etapas: 4.

Podemos adoptar la siguiente definición como métodos Runge-Kutta: 

Un método Runge-Kutta de s etapas y de orden p es un método numérico de la forma: X n+1=x n+h(∑si=1b i k i)

Conk i=f (x n+∑s j=1a ij k k ,t n+hc i) 

Y el error cumple la condición 

Max∨X (t t )−x i∨≤Ch t p

Es decir para dar un método de Runge-Kutta, tenemos que dar los números 

b i , c i , aij , 

Es decir s2+2 s números 

Una particularidad interesante de los métodos Runge-Kutta es que no necesitan calcular derivadas de la función f para avanzar. El precio a pagar por ello es el de evaluar más veces la propia función f con el consiguiente coste de operaciones. 

Tableros de Butcher Dado un método de Runge-kutta, construimos un tablero de la forma 

Page 4: Rung Kutta

 

O bien, se puede escribir el tablero de Butcher como 

 Donde A∈M sxs ,b∈R s,C∈R s

Por ejemplo, el tablero de Butcher para el método de Euler es 

 

Para la regla del punto medio de orden 2 

 

Y para el Runge-Kutta estándar de orden 4 

Page 5: Rung Kutta

 

Un método de Runge-Kutta se dice que es consistente si el error de truncación global tiende a cero cuando el tamaño del paso tiende a cero.

 Se puede demostrar que una condición necesaria y suficiente para la consistencia de un método de Runge-Kutta es que la suma de los bits

sea igual a 1, es decir :  

1=∑s j=1b iAdemás el método será de orden 2 si cumple que

1=2∑s j=1∑si=1a i b j 

Se pueden dar condiciones análogas para métodos con orden 3, 4,…, n

Métodos de Runge-Kutta explícitos 

En un método de Runge-Kutta explícito, los bits dados en la definición no aparecen como función de ellos mismos, aparecen despejados. De modo más un poco más preciso, en un método de Runge-Kutta explícito, la matriz A del tablero de Butcher es "casi 'triangular inferior'", con lo que queremos decir que es triangular inferior y además su diagonal también está formada por ceros, o sea, es de la forma 

Page 6: Rung Kutta

 

Teorema Un método de Runge-Kutta explícito de s etapas no puede tener un orden mayor que s.

Se sabe que no hay métodos de Runge-Kutta explícitos de s etapas con orden s, para s mayor o igual que 5. 

Además se sabe que no hay métodos de Runge-Kutta explícitos de s etapas con orden s-1, para s mayor o igual que 7. 

Con más generalidad se tiene la siguiente tabla 

¿Qué tamaño de paso es necesario? La respuesta a esta pregunta es que depende del problema concreto y del grado de precisión deseado. 

Un detalle a tener en cuenta en los métodos de Runge-Kutta es que pierden bastante precisión cuando la derivada de la función a analizar es muy grande o cambia muchas veces de signo, En tales casos es necesario un tamaño de paso bien pequeño para obtener un grado de precisión aceptable.