2011 runge kutta

12
Notas de clase de Instrumentación Prof: Lucelly Reyes H Método numérico de Runge Kutta Uno de los métodos más utilizados para resolver numéricamente problemas de ecuaciones diferenciales ordinarias con condiciones iniciales es el método de Runge-Kutta de cuarto orden, el cual proporciona un pequeño margen de error con respecto a la solución real del problema y es fácilmente programable en un software para realizar las iteraciones necesarias. El método de Runge-Kutta se utiliza para resolver ecuaciones diferenciales de la forma explícita: ) 1 ( ) ( ) , ( ) ( o o y x y y x f dx x dy o en su forma implícita: o o y x y con dx dy y x f ) ( 0 ) , , ( Y es sumamente útil para casos en los que la solución no puede hallarse por los métodos convencionales (como separación de variables). Hay variaciones en el método de Runge-Kutta de cuarto orden pero el más utilizado es el método en el cual se elige un tamaño de paso h y un número máximo de iteraciones n. El método RK4 para este problema esta dado por la siguiente ecuación: 4 3 2 1 1 2 2 6 1 k k k k y y i i Para i=0,…,n-1. La solución se da a lo largo del intervalo (x o ,x o +h n ) Donde 3 4 2 3 1 2 1 , . , 2 , 2 . 2 , 2 . ), , ( . k y h x f h k k y h x f h k k y h x f h k y x f h k i i i i i i i i Así, el siguiente valor (y i+1 ) es determinado por el presente valor (y i ) más el producto del tamaño del intervalo (h) por una pendiente estimada. La pendiente es un promedio ponderado de pendientes: k 1 es la pendiente al principio del intervalo;

Upload: diego-guzman

Post on 14-Apr-2017

423 views

Category:

Education


1 download

TRANSCRIPT

Page 1: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

Método numérico de Runge Kutta

Uno de los métodos más utilizados para resolver numéricamente problemas de ecuaciones diferenciales ordinarias con condiciones iniciales es el método de Runge-Kutta de cuarto orden, el cual proporciona un pequeño margen de error con respecto a la solución real del problema y es fácilmente programable en un software para realizar las iteraciones necesarias. El método de Runge-Kutta se utiliza para resolver ecuaciones diferenciales de la forma explícita:

)1(

)(

),()(

oo yxy

yxfdx

xdy

o en su forma implícita:

oo yxycondx

dyyxf )(0),,(

Y es sumamente útil para casos en los que la solución no puede hallarse por los métodos convencionales (como separación de variables). Hay variaciones en el método de Runge-Kutta de cuarto orden pero el más utilizado es el método en el cual se elige un tamaño de paso h y un número máximo de iteraciones n.

El método RK4 para este problema esta dado por la siguiente ecuación:

43211 226

1kkkkyy ii

Para i=0,…,n-1. La solución se da a lo largo del intervalo (xo,xo+hn)

Donde

342

3

121

,.,2

,2

.

2,

2.),,(.

kyhxfhkk

yh

xfhk

ky

hxfhkyxfhk

iiii

iiii

Así, el siguiente valor (yi+1) es determinado por el presente valor (yi) más el producto del tamaño del intervalo (h) por una pendiente estimada. La pendiente es un promedio ponderado de pendientes:

k1 es la pendiente al principio del intervalo;

Page 2: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

k2 es la pendiente en el punto medio del intervalo, usando k1 para determinar el valor de y en el punto xi + h/2.

k3 es otra vez la pendiente del punto medio, pero ahora usando k2 para determinar el valor de y

k4 es la pendiente al final del intervalo, con el valor de y determinado por k3

Promediando las cuatro pendientes, se le asigna mayor peso a las pendientes en el punto medio:

6

22 4321 kkkkpendiente

Vamos a ver algunos ejemplos sencillos para ecuaciones diferenciales de primer orden.

Ejemplo 1

Usar el método de Runge Kutta para aproximar dada la siguiente ecuación diferencial:

Solución

Primero, identificamos las condiciones iniciales, el intervalo y la función:

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

, , y . Tenemos entonces que para la primera iteracion:

Page 3: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

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

El proceso debe repetirse hasta obtener . Resumimos los resultados en la siguiente tabla:

n

0 0 1

1 0.1 1.01005

2 0.2 1.04081

3 0.3 1.09417

4 0.4 1.17351

5 0.5 1.28403

Concluimos que el valor obtenido con el método de Runge-Kutta es:

Calculemos el valor de y(x) por método de integración directa

xdxy

dyxy

dx

dy22

2

)()ln( 2 xexyxy

Page 4: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

Evaluando en 0.5 tenemos:

28402.1)5.0( y

Finalmente, calculamos el error relativo verdadero:

Con lo cual vemos que efectivamente se ha reducido muchísimo el error relativo. De hecho observamos que tenemos 6 cifras significativas en la aproximación!

Ejemplo 2

Usar el método de Runge-Kutta para aproximar dada la ecuación

diferencial:

Solución

Igual que siempre, tomamos y llegaremos a la aproximación en dos pasos.

Con esta aclaración, tenemos los siguientes datos:

Primera Iteración:

Page 5: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

Segunda Iteración:

Concluimos entonces que el valor buscado es:

Para comprobar nuestra respuesta resolvamos la ecuacino diferencial

Sabemos que la ecuacion del ejercicio corresponde a una ecuacion lineal de primer orden las cuales se caracterizan por ser de la forma :

)()( xQxyPy

La solucion a esta ecuacion viene dada por:

CdxexQexyx dxxPdxxP

xx

2

)()(22 )()(

xxQxPxyy )(1)(

dxxedxexQxdxxP xdxxP )(

)()(

Integrando por partes esta sugunda integral tenemos:

xx evdxedvxuvduuvudv

)1(

xeexedxexedxxe xxxxxx

Remplazando en la ecuacion general tenemos:

Page 6: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

xxx CexxyCxeexy 1)()1()(

Para encontrar la constante C evaluamos la ecuacion en el punto (2,4) que son las condiciones iniciales, entonces c sera:

22 7124)2( eCCey

La solucion a la ecuacion es:

271)( xexxy

Evaluando en x=2.2 tenemos:

34981.572.3)2.2( 2.0 ey

Finalmente, calculamos el error relativo verdadero:

%001.0%10034981.5

34982.534981.5

Ecuación diferencial de segundo orden

Vamos a aplicar el procedimiento de Runge Kutta a una ecuación diferencial de segundo orden.

con las condiciones iniciales

Una ecuación diferencial de segundo orden es equivalente a un sistema de dos ecuaciones diferenciales de primer orden, por lo que aplicaremos el mismo esquema.

Page 7: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

En la primera columna, las variables k1, k2, k3, k4 pueden calcularse directamente sin efectuar llamadas a una función.

Ejemplo 3

Vamos a aplicar el procedimiento de Runge-Kutta a una ecuación diferencial de segundo orden.

Péndulo simple

Las leyes de newton nos llevan a obtener la ecuación diferencial que describe el movimiento del péndulo. Generalmente esta se resuelve de manera analítica teniendo en cuenta la aproximación de ángulos pequeños, pero en este caso utilizaremos el método numérico llamado Runge Kutta cuatro para resolver la ecuación de movimiento sin ninguna restricción del ángulo de oscilación. La ecuación diferencial a resolver se obtiene a partir de la descomposición de fuerzas en el sistema como se muestra en el siguiente dibujo.

Para el problema no tendremos en cuenta los efectos de fricción, por consiguiente tenemos:

2

02

2

76.9

0)0(3

)0(

0)(

s

mg

parasenL

g

dt

d

que corresponde a un péndulo cuya masa se suelta partiendo del reposo con un ángulo inicial a.

Podemos reescribir esta ecuación diferencial de segundo orden como un sistema de ecuaciones de primer orden.

dt

d

),()( tfsen

L

g

dt

d

Si sustituimos

Page 8: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

se tendrá el sistema de ecuaciones diferenciales de primer orden en forma canónica

Los pasos de Runge Kutta serán:

)()(

)5.0()5.0(

)5.0()5.0(

)(

314324

213223

112122

1121

kusenL

ghlluhk

kusenL

ghlluhk

kusenL

ghlluhk

usenL

ghluhk

Las ecuaciones que describen la posición angular y su velocidad serán

)22(6

1)22(

6

1432122432111 lllluukkkkuu

En LABVIEW será:

Page 9: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

La grafica de posición angular contra velocidad angular nos muestra un sistema que tiene un comportamiento periódico como se esperaba.

Ejemplo 4

Simulación de un oscilador amortiguado forzado utilizando el método de Runge-Kutta de cuarto orden.

6.0)0(

4.0)0()(22

2

2

2

y

yparatseny

dt

dy

dt

yde

t

Sustituyendo

)()(

)()(

2

1

tudt

tdy

tuty

tenemos:

)(222

122 tsenuu

dt

due

t

Esta vez vamos a utilizar el modulo de Runge Kutta de LabVIEW

Page 10: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

Inicializando el modulo

Ejemplo 5

La ecuación diferencial de tercer orden ),,( xxxJx es comúnmente conocida

como función de Jerk. El siguiente circuito tiene por solución una función de JerK

)1( xxxAx

Page 11: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H

12

2

3

3

xdt

dx

dt

xdA

dt

xd

Sustituyendo

3

3

2

2

)(

)(

dt

xd

dt

dz

dt

xdtz

dt

dxty

tenemos:

1 xyAzdt

dz

Podemos encontrar su solución utilizando métodos numéricos (Runge Kutta) de la siguiente manera:

Page 12: 2011 runge kutta

Notas de clase de Instrumentación

Prof: Lucelly Reyes H