Ecuaciones Diferenciales Ordinarias Métodos Numéricos para su Resolución Ecuaciones Diferenciales Ordinarias (EDO) ●
Views 96 Downloads 1 File size 204KB
Ecuaciones Diferenciales Ordinarias
Métodos Numéricos para su Resolución
Ecuaciones Diferenciales Ordinarias (EDO) ●
●
● ●
●
Definición: una ecuación diferencial es una ecuación que involucra a una función y sus derivadas Si además la función depende de una única variable independiente: ecuación diferencial ordinaria (EDO) Ejemplos: y'=2x2+y
o
y'''-7y'=6y
Donde las primas (') indican el orden de la derivada, y la x es la variable independiente En ocasiones suele usarse también t para representar la variable independiente
Ecuaciones Diferenciales Ordinarias (EDO) ●
●
Encontrar una solución a una EDO es encontrar una función y=g(x) que cumpla dicha ecuación Ejemplo: ● ●
●
●
y'=2x2+y tiene solución y(x)=ex-2x2-4x-4 y'''-7y'=6y tiene solución y(x)=e-x
No siempre es posible conocer la solución analítica de una EDO (¿ejemplo?) En esos casos hay que recurrir a métodos numéricos para encontrar soluciones aproximadas a EDOs de primer orden: y'=f(x,y) dadas la condiciones iniciales x=x0 e y=y0
Método de Euler Este método rara vez se emplea en la práctica. Pero es de simple deducción y permite ilustrar las técnicas que e aplican en método más sofisticados. Pretendemos resolver numéricamente:
dy = f t , y dt
a≤t ≤b
con y a=
Lo que obtendremos será una tabla de valores aproximados, para algunos puntos uniformemente ditribuido en el intervalo [a,b] t i=aih
i=0,1 ,2 , , N
donde h=
b−a N
es el paso o tamaño del intervalo
Método de Euler Desarrollamos y(t) en serie de Taylor alrededor del punto ti
1 2 y t i 1= y t i h y ' t i h y ' ' t i 2 donde
h=t i 1−t i
truncamos a primer orden, y generamos sucesión wi (para diferenciarlo del resultado exacto yi)
w i 1=wi h f t i , w i
w0 =
Método de Euler
w i 1=wi h f t i , w i
w0 =
Ejemplo: Método de Euler y ' =− y t 1 solución exacta:
t 0,0 0,1 0,2 0,3 0,4 0,5 0,6
w 1,000000 1,000000 1,010000 1,029000 1,056100 1,090490 1,131441
0≤t ≤1
y=te y 1,000000 1,004837 1,018731 1,040818 1,070320 1,106531 1,148812
y 0 =1
−t
error 0,000000 0,004837 0,008731 0,011818 0,014220 0,016041 0,017371
Error en el método de Euler y i 1− y i El error cometido en cada paso es i 1= − f t i , y i h Por el teorema de Taylor, podemos escribir el polinomio de Taylor
1 2 y t i 1= y t i h f t i , y i h y ' ' i 2 sustituyendo y operando, llegamos a
h i 1= y ' ' i 2 ¡El error es O(h)!
para algúni ,
t i ≤i ≤t i1
Métodos de Runge-Kutta Consideremos nuevamente la EDO
y '= f t , y
y t 0 =
Para calcular el valor yi+1 en ti+1=ti+h, dado el valor yi integramos la ecuación anterior en el intervalo [ti , ti+1] t i1
y i 1= y i ∫ f t , y dt ti
Ahora es cuestión de aproximar la integral por medio de algún método numérico, en este caso por trapecios t i1
∫ ti
1 f t , y dt ≈ h f t i , y i f t i 1 , y i 1 2
Método de Runge-Kutta de orden 2 Las aproximaciones son: ● integral mediante el método de los Trapecios ● aproximación de Euler inicial para y i+1
y i 1= y i h f t i , y i h y i 1= y i [ f t i , y i f t i 1 y i 1 ] 2
Método de Runge-Kutta de orden 2 Forma Canónica k 1 =h f t i , y i
k 2=h f t i1 , y ik 1 1 y i 1= y i k 1k 2 2
Ejemplo: y'=t-y t 0 0,1 0,2 0,3 0,4 0,5 0,6
w(i) 1,000000 0,910000 0,838050 0,782435 0,741604 0,714152 0,698807
y(0)=1 en [0 , 0.6]
k1 -0,100000 -0,081000 -0,063805 -0,048244 -0,034160 -0,021415
k2 -0,080000 -0,062900 -0,047425 -0,033419 -0,020744 -0,009274
w(i+1) 0,910000 0,838050 0,782435 0,741604 0,714152 0,698807
Método de R-K de orden 3 Partimos de la misma aproximación que RK2: sólo que esta vez usamos el método de simpson 1/3 para aproximar la integral
h y n 1= y n f t n , y n 4 f t 1 , y 1 f t n1 , y n1 n n 6 2 2
[
h y n 1/ 2= y n f t n , y n 2
y n 1= y n h [ f t n , y n 1− f y n1 / 2 ] donde q es un parámetro que debe optimizarse a los efectos de minimizar el error
]
Método de R-K de orden 3 En forma canónica, esto queda expresado así:
k 1 =h f t n , y n h 1 k 2 =h f t n , y n k 1 2 2 k 3 =h f t nh , y n k 11− k 2 1 y n1 = y n k 14 k 2k 3 6
Método de R-K de orden 3 Para encontrar el q óptimo, desarrollaremos k1, k2 y k3 en una serie de Taylor alrededor del punto (tn,yn)
k 1 =hf 1 2 k 2=hf h f t f 2
y
1 3 2 f h f t t 2 f ty f yy f 8
2
k 3 =hf h f t f y f 1 3 h f t t 2 f ty f f 2
2
yy
f 1− f t f
y
ff
y
Método de R-K de orden 3 Consideremos el desarrollo en serie de Taylor para yn+1 2
h y n 1= y n hf f t f y f 2 3 h 2 2 f t t2 f ty f f yy f f t f y f y f 6
Comparando término a término con el desarrollo anterior, llegamos a que ambos desarrollos coinciden hasta el orden 3 si tomamos q=-1
k 1=h f t n , y n h 1 k 2 =h f t n , y n k 1 2 2 k 3=h f t nh , y n−k 12 k 2 1 y n 1= y n k 1 4 k 2k 3 6
RK3
Método de Runge-Kutta de cuarto orden Éste método es uno de lo más empleado en la práctica. Surge de aproximar la integral mediante la regla 1/3 de Simpson. La solución aproximada coincide con un desarrollo en serie de Tayor hasta el cuarto orden
k 1 =h f t i , y i k1 h k 2=h f t i , y i 2 2 k2 h k 3 =h f t i , y i 2 2 k 4=h f t i h , y i k 3 1 y i 1= y i [ k 12 k 2 2 k 3k 4 ] 6
Ejemplo: R-K cuarto orden y'=t-y
t 0 0,1 0,2 0,3 0,4 0,5 0,6
w(i) 1,000000 0,909675 0,837462 0,781637 0,740641 0,713062 0,697624
k1 -0,100000 -0,080968 -0,063746 -0,048164 -0,034064 -0,021306
y(0)=1
k2 -0,090000 -0,071919 -0,055559 -0,040756 -0,027361 -0,015241
en [0,1] con h=0.1
k3 -0,090500 -0,072372 -0,055968 -0,041126 -0,027696 -0,015544
k4 -0,080950 -0,063730 -0,048149 -0,034051 -0,021294 -0,009752
w(i+1) 0,909675 0,837462 0,781637 0,740641 0,713062 0,697624
Errores cometidos en métodos numéricos para resolver EDOs ●
error de truncación (local)
●
error de propagación
●
error de redondeo (números en punto flotante) yi+2
yi+1
propagación wi+2 wi+1
ti
ti+1
ti+2
truncación
Ejemplo: Reactor Químico Conversión de Almidón en Glucosa Se asume que la reacción es de segundo orden respecto a concentración de Almidón
q,[Af]
d [ A] q q 2 = [ A f ]−k [ A] − [ A] dt V V flujo: vol. reactor: conc. entrada: cte. reacción:
V q=100 gal/min q,[A] V=10000 gal [Af]=5 lb/gal Reactor bien agitado k=0.004 gal/min-lb
Cond. iniciales: t=0 [A]=[Af] Reactor en régimen: [A]=0.5[Af]
Ej: Conversión de Almidón en Glucosa
d [ A] q q 2 = [ A f ]−k [ A] − [ A] dt V V
Para simplificar, usaremos variables adimensionales
tq V = dt= d V q [ A] y= d [ A]=[ A f ]dy [ Af ] d [ A] q dy q q 2 = [ Af ] = [ A f ]−k [ A f ] y − [ A f ] y dt V d V V
dy 2 =1−2 y − y , d
0=0 ,
y 0 =1
Ej: Reacciones secundarias en el reactor Sea el mismo reactor donde ocurren una serie de reacciones secundarias
A
k1
AB C C
B k2
C k3
D
Las EDOs asociadas a estas reacciones son:
d [ A] V =q [ A f ]−q[ A]−k 1 [ A]−k 2 [ A][ B ] dt d [ B] V =−q [ B ]k 1 [ A]−k 2 [ A][ B ] dt d [C ] 2 V =−q [C ]k 2 [ A][ B]−k 3 [C ] dt
Sistemas de EDOs Sistema de EDOs con condiciones iniciales
y ' = f t , y , u , v u ' =g t , y , u , v ⋮ v ' = p t , y , u , v
y t 0 = y 0 ut 0 =u 0 ⋮ v t 0 =v 0
¿Cómo resolvemos este tipo de problemas?
Sean los vectores:
Sistema de EDOs
[] [ ]
y u X= ⋮ v
y' u ' X'= ⋮ v'
[ ]
f t , y , u , v g t , y , u , v F t , X = ⋮ p t , y , u , v
Podemos aplicar simultaneamente a todas las ecuaciones alguno de los métodos ya vistos, por ej.: RK4 K 1=F t , X h h K 2=F t , X K 1 2 2 h h K 3=F t , X K 2 2 2 K 4=F t h , X h K 3 h X t h= X t K 12 K 22 K 3 K 4 6 De la misma manera que aplicamos RK4 podríamos haber aplicado cualquiera de los otros métodos vistos
EDOs de orden superior m
m−1
y = f t , y , y ' , y ' ' , , y m −1 y t 0 = 0 , y ' t 0 =1 , , y t 0 = m−1 Para resolver EDOs de segundo orden o superior, el truco consiste en transformar la ecuación de orden m en un sistema de m ecuaciones de orden 1, mediante simples cambios de variables
du 1 dy = =u 2 dt dt du 2 dy ' = =u 3 dt dt ⋮ du m dy m−1 m = = y = f t , u 1, u 2 , ; u m dt dt
Ejemplo: EDO de orden 3
y ' ' ' = y ' −t y
2
Lo transformamos en un sistema de 3 EDOs de primer orden, mediante los cambios de variable
y ' =u u ' =v 2 v ' =u−ty