informeseis
-
Upload
jonathan-morocho -
Category
Documents
-
view
214 -
download
0
Transcript of informeseis
-
Proyecto Nro. 6: Metodos Aproximados de
Ecuaciones Diferenciales Ordinarias
Algoritmos Numericos
Jonathan Morocho Jimenez
Escuela Politecnica Nacional
Facultad de Ingeniera de Sistemas
27 de mayo de 2014
1. Metodo de Euler y Runge-Kutta
El objetivo del presente trabajo consiste en la realizacion de un codigo de programacion que permi-ta resolver numericamente el problema y = f(t, y), y(t0) = y0 usando el metodo de Euler (mejorado)y Runge Kutta. Para todos los casos se ha considerado t[0, 5] y k = 2, a = 2, en las ecuaciones (2)y (3). Para todas las graficas, se utilizan los diferentes valores y(i) y t(i) con i = 0, 1, ..., n calculadoscon los metodos numericos antes mencionados. Ademas se usa n = 100 para generar 100 intervalos amenos que se indique lo contrario. El codigo creado considera a la funcion ingresada como y = f(t, y),a pesar de que las ecuaciones diferenciales ordinarias aqu presentadas carecen de tal termino, por loque se suma t t (a pesar de que estos terminos se cancelan).
Dadas las siguientes ecuaciones diferenciales ordinarias
dx
y= x (1)
dx
y= 1 a sin(x) (2)
dx
y= kx(1 x) (3)
1. Se resuelve numericamente la ecuacion (2) (es decir, se encuentra y(t) usando el metodo de Eulery Runge Kutta (para un valor apropiado de h) y se presenta una figura comparativa entre ambosmetodos.
1
-
1 METODO DE EULER Y RUNGE-KUTTA
Figura 1: Comparacion entre los metodos de Euler y Runge Kutta para la ecuacion (2)
2. Se resuelve numericamente la ecuacion (1) (usando RK4) considerando 5 distintos valores de anchode intervalo (apropiadamente elegidos). Se muestra la siguiente figura:
Figura 2: RK4 con variacion del intervalo h para la ecuacion (1)
3. Se analiza como vara la solucion numerica (usando RK4) de la ecuacion (2) para 5 distintos valoresdel parametro a (apropiadamente elegidos). Se muestra la siguiente figura:
2
-
1 METODO DE EULER Y RUNGE-KUTTA
0 1 2 3 4 51
1.5
2
2.5
3
3.5
4
t(i)
y(i)
RK4 con variacion del parametro a
a=2a=3a=4a=5a=6
Figura 3: RK4 con variacion del parametro a para la ecuacion (2)
4. Se analiza como vara la solucion numerica (usando RK4) de la ecuacion (3) para 5 distintos valoresdel parametro k (apropiadamente elegidos). Se muestra la siguiente figura:.
0 1 2 3 4 50
0.1
0.2
0.3
0.4
0.5
0.6
0.7
t(i)
y(i)
RK4 con variacion del parametro k
k=2k=2.1k=2.2k=2.3k=2.4
Figura 4: RK4 con variacion del parametro k para la ecuacion (3)
3
-
REFERENCIAS
2. Discusion y Conclusiones
En la Figura 1 se puede observar la grafica de la comparacion entre los metodos de Euler y RungeKutta para la ecuacion (2), se puede apreciar que a pesar de que los metodos practicamente generan losmismos valores para cada y(i), en la ampliacion se puede apreciar que las diferencias entre los valoresproducidos por el primer metodo y el segundo puede ser significativas, de acuerdo a la precision quese necesite.
En la Figura 2 se puede observar la grafica de la aplicacion del metodo RK4 con variacion delintervalo h para la ecuacion (1). Se puede apreciar que es mejor tener un valor de h pequeno (a pesarde que computacionalmente, si se hace que se genere h a partir de un valor n, el trabajo de calcularlos resultados puede llegar a tomar bastante tiempo.
En la Figura 3 se puede observar la grafica de la aplicacion del metodo RK4 con variacion delparametro a para la ecuacion (2). El valor a llega a producir variaciones que en aplicaciones de lavida real es muy importante estudiar, por ejemplo en el caso de analisis de materiales o de manejo defluidos.
En la Figura 4 se puede observar la grafica de la aplicacion del metodo RK4 con variacion delparametro k para la ecuacion (3). De igual forma que el punto anterior, en aplicaciones de la vida realdebe ser posible manejar este parametro para obtener los resultados esperados.
Referencias
[1] Richard L. Burden - J. Douglas Faires, Analisis Numerico, 7ma edicion, 2009
[2] http://www.matworks.com
4
-
A. Anexos
A.1. Metodo de Euler (mejorado)
f unc t i on [ Sy St ]= eulermejorado ( f , t0 , a , b , n )
% f f ( t , y )% a y b extremos de l i n t e r v a l o [ a , b ]%n n sub in t e r va l o s
%syms y%syms t
%1) D iv id i r [ a , b ] en n sub in t e r va l o s de ancho :h=(ba ) /n ;
%2) Generar l a s e cuenc i a
y=[ ] ;y (1 )=t0 ;t=[ ] ;t (1 )=a ;
f o r i=1:nt ( i+1)=t (1 )+i*h ;
K1=subs ( subs ( f , y ( i ) ) , t ( i ) ) ;K2=subs ( subs ( f , y ( i )+h*K1 ) , t ( i ) ) ;
y ( i+1)=y ( i )+(h /2) *( K1+K2 ) ; ;end
Sy=y ;St=t ;
A.2. Metodo de Runge-Kutta
f unc t i on [ Sy , St ]= RK4 ( f , t0 , a , b , n )
% f f ( t , y )% a y b extremos de l i n t e r v a l o [ a , b ]%n n sub in t e r va l o s
%syms y%syms t
%1) D iv id i r [ a , b ] en n sub in t e r va l o s de ancho :h=(ba ) /n ;
%2) Generar l a s e cuenc i ay=[ ] ;y (1 )=t0 ;t=[ ] ;t (1 )=a ;
f o r i=1:nt ( i+1)=t (1 )+i*h ;
K1=subs ( subs ( f , y ( i ) ) , t ( i ) ) ;K2=subs ( subs ( f , y ( i )+(h*K1 /2) ) , t ( i )+(h /2) ) ;K3=subs ( subs ( f , y ( i )+(h*K2 /2) ) , t ( i )+(h /2) ) ;K4=subs ( subs ( f , y ( i )+h*K3 ) , t ( i ) ) ;
y ( i+1)=y ( i )+(h /6) *( K1+2*K2+2*K3+K4 ) ;end
Sy=y ;St=t ;
-
A.3 Graficas A ANEXOS
A.3. Graficas
%g r a f i c a rsyms xsyms tn=100;
%1)imagen = f i g u r e (11) ;hold on
[ SEy , SEt ]= eulermejorado (1+2* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SEt , SEy , 'b ' )
[ SRy , SRt ]= RK4 (1+2* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' r ' )
x l ab e l ( ' t ( i ) ' )y l ab e l ( 'y ( i ) ' )legend ( ' Euler ' , 'RK4 ' )t i t l e ( 'Comparacion metodos Euler y RK4 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a11 . eps ' )
%2)imagen = f i g u r e (12) ;hold on
[ SRy , SRt ]= RK4(x+tt , 1 , 0 , 5 , 100 ) ; %, h1=0.05p lo t ( SRt , SRy , 'b ' )
[ SRy , SRt ]= RK4(x+tt , 1 , 0 , 5 , 5 0 ) ; %, h1=0.10p lo t ( SRt , SRy , ' g ' )
[ SRy , SRt ]= RK4(x+tt , 1 , 0 , 5 , 3 3 ) ; %, h1=0.15p lo t ( SRt , SRy , ' r ' )
[ SRy , SRt ]= RK4(x+tt , 1 , 0 , 5 , 2 5 ) ; %, h1=0.20p lo t ( SRt , SRy , 'k ' )
[ SRy , SRt ]= RK4(x+tt , 1 , 0 , 5 , 2 0 ) ; %, h1=0.25p lo t ( SRt , SRy , ' c ' )
x l ab e l ( ' t ( i ) ' )y l ab e l ( 'y ( i ) ' )t i t l e ( 'RK4 con va r i a c i on de l i n t e r v a l o h ' )legend ( 'h1=0.05 ' , 'h2=0.10 ' , 'h3=0.15 ' , 'h4=0.20 ' , 'h5=0.25 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a12 . eps ' )
%3)imagen = f i g u r e (13) ;hold on
a=2;[ SRy , SRt ]= RK4 (1a* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , 'b ' )
a=3;[ SRy , SRt ]= RK4 (1a* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' g ' )
a=4;[ SRy , SRt ]= RK4 (1a* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' r ' )
a=5;[ SRy , SRt ]= RK4 (1a* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , 'k ' )
a=6;[ SRy , SRt ]= RK4 (1a* s i n ( x )+tt , 1 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' c ' )
x l ab e l ( ' t ( i ) ' )y l ab e l ( 'y ( i ) ' )t i t l e ( 'RK4 con va r i a c i on de l parametro a ' )
6
-
A ANEXOS A.3 Graficas
l egend ( ' a=2 ' , ' a=3 ' , ' a=4 ' , ' a=5 ' , ' a=6 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a13 . eps ' )
%4)imagen = f i g u r e (14) ;hold on
k=2;[ SRy , SRt ]= RK4 ( k*x*(1x )+tt , 0 . 0 0001 , 0 , 5 , n ) ;p l o t ( SRt , SRy , 'b ' )
k=2.1;[ SRy , SRt ]= RK4 ( k*x*(1x )+tt , 0 . 0 0001 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' g ' )
k=2.2;[ SRy , SRt ]= RK4 ( k*x*(1x )+tt , 0 . 0 0001 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' r ' )
k=2.3;[ SRy , SRt ]= RK4 ( k*x*(1x )+tt , 0 . 0 0001 , 0 , 5 , n ) ;p l o t ( SRt , SRy , 'k ' )
k=2.4;[ SRy , SRt ]= RK4 ( k*x*(1x )+tt , 0 . 0 0001 , 0 , 5 , n ) ;p l o t ( SRt , SRy , ' c ' )
x l ab e l ( ' t ( i ) ' )y l ab e l ( 'y ( i ) ' )t i t l e ( 'RK4 con va r i a c i on de l parametro k ' )legend ( 'k=2 ' , 'k=2.1 ' , 'k=2.2 ' , 'k=2.3 ' , 'k=2.4 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a14 . eps ' )
7
Mtodo de Euler y Runge-KuttaDiscusin y ConclusionesAnexosMtodo de Euler (mejorado)Mtodo de Runge-KuttaGrficas