Sei sulla pagina 1di 71

mi 30 oct 2013 3 4 5 6 7

E.D.O.
* es comn usarlas en la solucin de problemas de reactores, cintica qumica,
.. simulacin de procesos.
Algunas consideraciones para el tamao de paso
xixxf h (unidades) En caso que el valor de y i+1 se dispare
0-1 0.05 o 0.1 disminuir el tamao de paso, h, desde
0 - 10 0.5 o 1 0.1 hasta 1E-6
0 - 100 5 o 10 si t (s) = 3 en algunas reacciones qumicas
1 - 1000 50 o 100 h= 0.1 s 0.5 s ... 0.001 s

Pueden usar este criterio en caso que no tuviesen esta informacin


calculando dos pasos o incrementos en x, ver el resultado de yi+1 para
decidir el tamao de paso adecuado y visualizar el comportamiento de EDO

Tambin hacemos uso de una paquetera matemtica, Scilab, para evaluar la EDO

Ejemplo: Use el m. de Heun para integrar y=4e0.8x-0.5y desde x=0 hasta x=4 con 1 tamao
de paso de 1. La condicin inicial en x=0 es y=2.

Aplicando el Mtodo de Euler


Y' = dy
DY f ( x, y ) 4e 0.8 x 0.5 y
dx
te pueden dar este intervalo
PVI x=0 hasta x=4 h=1 x0=0 opcional=[0x4]
h= 1 0x4 h=1 h=1
x=0, y=2 y=2 f(x0)=2, f(4)=? o f(x4)=? f(0)=2, f(4)=?

Ejemplo 25.5 Chapra, paso a paso:


Mtodo de Euler
h= 1 4e0.8 x 0.5 y
=C34+E34 =4*EXP(0.8*B34)-0.5*C34
Nm.pasos X yi+1 f(x,y) f(x,y) h En las subrutinas por lo general las
1 0 2 3 3 variables de salida son en celdas fijas
2 1 5 6.402163714 6.402163714
3 2 11.40216371 14.11104784 14.11104784 sub _mn_mEuler
4 3 25.51321155 31.33609975 31.33609975 lee y escribe a partir de la linea 52
5 4 56.8493113 69.70546514 69.70546514 h=cells(53,2): ii=0
xi=cells(54,2): xf=cells(55,2)
Algoritmo: pseudocdigos *conocer las celdas donde yi=cells(56,2): cells(53,5)=yi
* P.V.I. leen y escriben las variables for i=xi to xf step h
Sub mn_mEuler cells(53+ii,4)=i
1) lee xi, xf if ii=0 then cells(53+ii,5)=yi
2) lee h cells(53+ii,6)=dydx(i,yi)
3) lee yi cells(53+ii,7)=dydx(i,yi)*h
4) para i=xi hasta xf increment=h cells(54+ii,5)=yi+dydx(i,yi)*h
4.1) yii=yi+dydx(i,yi)h next
4.2) escribir i,yii
fin sub

PVI:
f(x,y) = 4*exp(0.8*x)-0.5*y xi yi f(x,y) f(x,y) h
h= 1 0
xi= 0 1
xf= 4 2
yi = 2 3
4

Leer y aplicar el Mtodo de Euler modificado o M. de Heum


para el problema anterior

M Euler modificado, Heunt


yi 1 yi h deriv _ prom
f(x,y) 4e 0.8 x 0.5 y yi 1 yi hf ( xi , yi )
0.5 1
h= deriv _ prom f ( xi , yi ) f ( xi1 , y i 1 )
2
yi+1=yi+f(xi,yi)h

x Yi+1 f(xi,yi) f(xi+1,yi+1) deriv_prom


0 2 3 3.5 4.217298791 3.608649395
0.5 3.804324698 4.065136442 5.836892919 5.983717255 5.024426848
1 6.316538122 5.743894653 9.188485448 8.686224967 7.21505981
1.5 9.924068027 8.318433678 14.08328487 12.77048726 10.54446047
2 15.19629826 12.21398057 21.30328855 18.90458012 15.55928034
2.5 22.97593843 18.06825518 32.01006602 28.08767251 23.07796384
3 34.51492036 26.83524534 47.93254303 41.81231557 34.32378046
3.5 51.67681059 39.94018179 71.64690148 62.30667005 51.12342592
4 77.23852355 59.51085902
Mtodo de Runge-Kutta de 4to orden
f(x,y) 4e0.8 x 0.5 y

h= 0.1

Tarea: si les d tiempo el Runge-Kutta Fehlberg para el problema anterior


M Runge-Kutta Felhberg orden
donde
f(x,y) 4e 0.8 x 0.5 y
k1 f ( xi , yi )
1 1
k2 f xi h, yi k1h
5 5
3 3 9
k3 f xi h, yi k1h k2h
k1 f ( xi , yi )
h= 0.1 1 1
k2 f xi h, yi k1h
5 5
3 3 9
k3 f xi h, yi k1h k2h
10 40 40
3 3 9 6
k4 f xi h, yi k1h k 2 h k
5 10 10 5
11 5 70
k5 f xi h, yi k1h k 2 h k3 h
54 2 27
7 1631 175
k65 f xi h, yi k1h k2h
8 55296 512

2825 18575 1352


yi 1 yi k1 k3
27648 48384 5529
8 9 10 11

pueden dar este intervalo


pcional=[0x4]

n las subrutinas por lo general las


riables de salida son en celdas fijas

b _mn_mEuler
e y escribe a partir de la linea 52
=cells(53,2): ii=0
=cells(54,2): xf=cells(55,2)
=cells(56,2): cells(53,5)=yi
or i=xi to xf step h
cells(53+ii,4)=i
f ii=0 then cells(53+ii,5)=yi
cells(53+ii,6)=dydx(i,yi)
cells(53+ii,7)=dydx(i,yi)*h
cells(54+ii,5)=yi+dydx(i,yi)*h

[f(xi,yi)+ f(xi+1,yi+1)]/2

h(deriv_prom)
1.8043246976
2.5122134241
3.607529905
5.2722302356
7.7796401723
11.5389819223
17.1618902285
25.5617129599
f ( xi , yi ) El error estimado sera la diferencia
1 1 del clculo de 4to y 5to orden. (los
f xi h, yi k1h
5 5 coeficientes calculados se les llama
3 3 9 a veces como mtodo de RK Cash-
f xi h, yi k1h k2h Karp.)
f ( xi , yi ) El error estimado sera la diferencia
1 1 del clculo de 4to y 5to orden. (los
f xi h, yi k1h
5 5 coeficientes calculados se les llama
3 3 9 a veces como mtodo de RK Cash-
f xi h, yi k1h k2h Karp.)
10 40 40
3 3 9 6
f xi h, yi k1h k2 h k3h
5 10 10 5
11 5 70 35
f xi h, yi k1h k 2 h k 3h k 4h
54 2 27 27
7 1631 175 575 44275 253
f xi h, yi k1h k2h k3 h k4 h k5 h
8 55296 512 13824 110592 4096

2825 18575 13525 277 1


yi k1 k3 k4 k5 k 6 h
27648 48384 55296 14336 4
mi 6 nov 2013
EDO
Algunas consideraciones para el tamao de paso
xixxf h (unidades)
0-1 0.05 o 0.1 si t (s) = 3 en algunas reacciones qumicas
0 - 10 0.5 o 1 h= 0.1 s 0.5 s
0 - 100 5 o 10 hay casos que pueden estar 1x10 -2 a 1x10-6
1 - 1000 50 o 100 el incremento o h

Pueden usar este criterio en caso que no tuviesen esta informacin


calculando dos pasos o incrementos en x, ver el resultado de yi+1 para
decidir el tamao de paso adecuado y visualizar el comportamiento de EDO

Usando una paquetera matemtica, Scilab, evaluamos la EDO


Con el ejemplo anterior de la hoja "explicacion1" o "hoja1"

f(x,y) 4e 0.5 y
0.8 x

0x4
yi= 2
h= 0.5

Copiar rengln por rengln en la consola de Scilab para visualizar cada actividad
Las siguientes actividades evaluarn y graficar la EDO
copiado del ejemplo de ApuntesScilab.pdf
function [dydx]=fxy(x,y), dydx=4*exp(0.8*x)-0.5*y, endfunction function [dydx]=fty(t,y), dydx=0.3*y*(2-y), endfuncti
x0=0 t0=0;
y0=2 y0=0.1;
x=linspace(x0,fxy(x0,y0)); calcula los valores de x, hasta el final t=linspace(t0,fty(t0,y0));
y=ode(y0,x0,x,fxy); y=ode(y0,t0,t,fty);
plot2d(x,y) plot2d(t,y)

Sin graficar
function [dydx]=fxy(x,y), dydx=4*exp(0.8*x)-0.5*y, endfunction
x0=0
y0=2
x=0:4 f(x,y)=4exp(0.8x)-0.5y
y=ode(y0,x0,x,fxy) 80
Resultado: 60
x yi+1
40
0 2
1 6.1946317 20
2 14.843922
0
3 33.677172 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
4 75.338964

Usar el ejemplo del mtodo de Runge-Kutta de 4to orden


ver archivo claseejemplosEulerRungek4toB.xlsm. Hoja "clase_explicacion"
y aplicarlo al ejemplo visto en la hoja1 o "explicacion1"
Se calculan las constantes:
1
f(x,y) 4e 0.5 y
0.8 x
k1=f(x0,y0) yi 1 yi k1 2k2 2k3 k4 h
0x4 k2=f(x0+h/2, y0+k1h/2) 6
yi= 2 k3=f(x0+h/2, y0+k2h/2)
4e 0.8 x 0.5 y
h= 0.5 k4=f(x0+h, y0+hk3)

k2=f(x0+h/2, y0+hk
k1=f(x0,y0)
x yi+1 k1 x0+h/2 y0+hk1/2 k2
0 2 3 0.25 2.75 3.510611033
0.5 3.7516995 4.091449041 0.75 4.77456176 4.901194322
1 6.195041994 5.804642717 1.25 7.646202673 7.050025977
1.5 9.707771931 8.426581726 1.75 11.81441736 10.31359119
2 14.84510602 12.38957669 2.25 17.94250019 15.22733976
2.5 22.42885698 18.34179591 2.75 27.01430596 22.59290102
3 33.67998386 27.25271359 3.25 40.49316225 33.60837101
3.5 50.41601719 40.57057849 3.75 60.55866181 50.06281679
4 75.34533606 60.45745276 4.25 90.45969925 74.62655056

Tarea: si les d tiempo el Runge-Kutta Fehlberg para el problema anterior

Ver ejemplo con dos ecuaciones simultneas, pueden empezar con Euler modificado y despus con
Runge-Kutta de 4to orden

hoy lu 11 nov 13
Existen otros mtodos para la solucin de EDO, como Runge-Kutta Fehlberg o R.K. 5to ,6to orden (RK56)
y Adam-Moulton, que tambin es muy estable.

con dos ecuaciones simultneas


M Euler modificado, 25.4 Chapra, ejemplo 25.9
Nota en esta pgina, no se toma en cuenta el valor de x i en la funcin de la ec. diferencial, para el ejemplo 25.9 Chapra
dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx

x= 0 xf= 4 0x4
y1= 4
y1i 1 y1i h deriv _ promy1
y2= 6
h= 0.5 y 2i 1 y 2i h(deriv _ promy1y 2)

clculos por separados de y1 y y2 y1i+1=y1i+f(xi,y1i)h deriv_prom


x y1i+1 f(x,y1) f(xi+1,y1i+1) [f(xi,y1i)+ f(xi+1,y1i+1)]/2
0 4 -2 3 -1.5 -1.75
0.5 3.125 -1.5625 2.34375 -1.171875 -1.3671875
1 2.44140625 -1.22070313 1.831054688 -0.91552734 -1.06811523
1.5 1.907348633 -0.95367432 1.430511475 -0.71525574 -0.83446503
2 1.490116119 -0.74505806 1.11758709 -0.55879354 -0.6519258
2.5 1.164153218 -0.58207661 0.873114914 -0.43655746 -0.50931703
3 0.909494702 -0.45474735 0.682121026 -0.34106051 -0.39790393
3.5 0.710542736 -0.35527137 0.532907052 -0.26645353 -0.31086245
4 0.555111512 -0.27755576 0.416333634 -0.20816682 -0.24286129

4e6*exp(-7900/b91)*c91
y1i+1=y1i+f(xi,yi)h

x y1i+1 y2i+1 f(x,y1) f(x,y1,y2)


0 4 6 -2 1.8 3
0.5 3.125 6.8575 -1.5625 1.63025 2.34375
1 2.44140625 7.631021875 -1.22070313 1.466552813 1.831054688
1.5 1.907348633 8.32456134 -0.95367432 1.311896735 1.430511475
2 1.490116119 8.943234509 -0.74505806 1.168018035 1.11758709
2.5 1.164153218 9.492756076 -0.58207661 1.035757855 0.873114914
3 0.909494702 9.979070042 -0.45474735 0.915329517 0.682121026
3.5 0.710542736 10.40809429 -0.35527137 0.806517441 0.532907052
4 0.555111512 10.78554949 -0.27755576 0.708824001 0.416333634

Ejercicios para practicar


Chapra, pdf, problemas: pg. 724, 25.11 y pg. 750, 26.3
Aplicar en ambos casos, Euler modificado y Runge-Kutta de 4to orden

hoy mircoles 13 nov 2013 Se calculan las constantes para cada ec


M Runge-Kutta 4to orden, 25.4 Chapra, ejemplo 25.9 k1=f(x0,y0)
dy1 dy2 k2=f(x0+h/2, y0+hk1/2)
0.5 y1 4 0.3 y2 0.1 y1 k3=f(x0+h/2, y0+hk2/2)
dx dx
k4=f(x0+h, y0+hk3)
x= 0 xf= 4 0x4
y1= 4 Nota se omiten x0 en las funciones f(x,y) para este ca
y2= 6 k1,1=f(y1)
h= 0.5 =y1i+(h/2)k11 k2,1=f(y1i+k1,1h/2)
k3,1=f(y1i+k2,1h/2)
k4,1=f(y1i+k3,1h)
Nota en esta pgina, no se toma en cuenta el valor de x i en la funcin de la ec. diferencial, para el ejemplo 25.9 Chapra

clculos paso a paso, separando y1i+1 y y2i+1


k2,1=f(y1i+k1,1h/2)
x y1i+1 k1,1=f(y1i) y1i+(h/2)k1,1 y1i+(h/2)k2,1
0 4 -2 3.5 -1.75 3.5625
0.5 3.115234375 -1.55761719 2.725830078 -1.36291504 2.774505615
1 2.426171303 -1.21308565 2.12289989 -1.06144994 2.160808817
1.5 1.889523061 -0.94476153 1.653332678 -0.82666634 1.682856476
2 1.471576798 -0.7357884 1.287629698 -0.64381485 1.310623085
2.5 1.146076656 -0.57303833 1.002817074 -0.50140854 1.020724522
3 0.892574349 -0.44628717 0.781002555 -0.39050128 0.79494903
3.5 0.695144574 -0.34757229 0.608251502 -0.30412575 0.619113136
4 0.541384568 -0.27069228 0.473711497 -0.23685575 0.482170631

Hoy 20 de nov 2013, Repaso


Nota en esta pgina, no se toma en cuenta el valor de xi en la funcin de la ec. diferencial, para el ejemplo 25.9
clculos paso a paso, consecutivo: y1i+1 y y2i+1 (ver referencias bibliogrficas)
dy1 dy2 y1i
0.5 y1 4 0.3 y2 0.1 y1
dx dx y1i
h= 0.5 k2,1=f(y1i+k1,1h/2)
x y1i+1 y2i+1 k1,1=f(y1i) k1,2=f(y1i,y2i) y1i+(h/2)k1,1
0 4 6 -2 1.8 3.5 -1.75
0.5 3.115234375 6.8157 -1.55761719 1.643766563 2.725830078 -1.36291504
1 2.426171303 7.560600214 -1.21308565 1.489202806 2.12289989 -1.06144994
1.5 1.889523061 8.235457285 -0.94476153 1.340410508 1.653332678 -0.82666634
2 1.471576798 8.842886647 -0.7357884 1.199976326 1.287629698 -0.64381485
2.5 1.146076656 9.386675919 -0.57303833 1.069389559 1.002817074 -0.50140854
3 0.892574349 9.871287621 -0.44628717 0.949356279 0.781002555 -0.39050128
3.5 0.695144574 10.30150424 -0.34757229 0.84003427 0.608251502 -0.30412575
4 0.541384568 10.68217977

juntando la tabla de clculo por separado de y1 y y2, veremos que son los mismos valores que los anteriores
x y1i+1 y2i+1
0 4 6
0.5 3.115234375 6.8157
1 2.426171303 7.560600214
1.5 1.889523061 8.235457285
2 1.471576798 8.842886647
2.5 1.146076656 9.386675919
3 0.892574349 9.871287621
3.5 0.695144574 10.30150424
4 0.541384568 10.68217977

Tarea por hacer ver lnea 116 de esta hoja como prctica, si an no lo hacen. (no se entrega)
mplo de ApuntesScilab.pdf
=fty(t,y), dydx=0.3*y*(2-y), endfunction

//corregido

x)-0.5y

2 2.5 3 3.5 4 4.5


1
i 1 yi k1 2k2 2k3 k4 h
6

=f(x0+h/2, y0+hk1/2) k3=f(x0+h/2, y0+hk2/2) k4=f(x0+h, y0+hk3)

y0+hk2/2 k3 x0+h y0+hk3 k4 (k1+2k2+2k3+k4)h/6


2.877652758 3.446784654 0.5 3.723392327 4.105602627 1.7516995
4.97699808 4.799976161 1 6.151687581 5.826319924 2.443342494
7.957548488 6.89435307 1.5 9.642218529 8.459358426 3.512729936
12.28616973 10.077715 2 14.74662943 12.43881498 5.137334091
18.65194096 14.87261938 2.5 22.28141571 18.41551654 7.583750959
28.07708223 22.06151288 3 33.45961342 27.36289881 11.25112688
42.08207661 32.81391384 3.5 50.08694077 40.7351167 16.73603333
62.93172139 48.876287 4 74.85416069 60.70304044 24.92931888
94.00197371 72.85541334 4.5 111.7730427 90.50641641 37.16064975

despus con

,6to orden (RK56)

cial, para el ejemplo 25.9 Chapra

h(deriv_prom) [f(xi,y1i,y2i)+ f(xi+1,y1i+1)]/2


y2i+1=y2i+f(xi,y1i,y2i+1)h deriv_prom
xi,y1i)+ f(xi+1,y1i+1)]/2 y2i+1 f(xi,y1i,y2i) f(xi+1,y1i+1,y2i+1) h(deriv_prom)
-0.875 6 1.8 6.9 1.63 1.715 0.8575
-0.68359375 6.8575 1.63025 7.672625 1.4638375 1.54704375 0.773521875
-0.53405762 7.631021875 1.466552813 8.364298281 1.307605047 1.38707893 0.693539465
-0.41723251 8.32456134 1.311896735 8.980509707 1.16279594 1.237346338 0.618673169
-0.3259629 8.943234509 1.168018035 9.527243526 1.030068233 1.099043134 0.549521567
-0.25465852 9.492756076 1.035757855 10.010635 0.909498008 0.972627932 0.486313966
-0.19895197 9.979070042 0.915329517 10.4367348 0.800767457 0.858048487 0.429024244
-0.15543122 10.40809429 0.806517441 10.81135301 0.703303393 0.754910417 0.377455208
-0.12143064 10.78554949 0.708824001 11.13996149 0.616378188 0.662601095 0.331300547

derivpromy1y2
i+1
=y1i+f(xi,yi)h derivpromy1 [f(xi,yi)+ f(xi+1,y1i+1,y2i+1)]/2
y2i+1=y2i+f(xi,y1i,y2i)h [f(xi,yi)+ f(xi+1,yi+1)]/2 derivpromy1y2*h
f(xi+1,y1i+1) f(xi+1,y1i+1,y2i+1) derivpromy1*h
6.9 -1.5 1.63 -1.75 1.715 -0.875 0.8575
7.672625 -1.171875 1.4638375 -1.3671875 1.54704375 -0.68359375 0.773521875
8.364298281 -0.91552734 1.307605047 -1.06811523 1.38707893 -0.53405762 0.693539465
8.980509707 -0.71525574 1.16279594 -0.83446503 1.237346338 -0.41723251 0.618673169
9.527243526 -0.55879354 1.030068233 -0.6519258 1.099043134 -0.3259629 0.549521567
10.010635 -0.43655746 0.909498008 -0.50931703 0.972627932 -0.25465852 0.486313966
10.4367348 -0.34106051 0.800767457 -0.39790393 0.858048487 -0.19895197 0.429024244
10.81135301 -0.26645353 0.703303393 -0.31086245 0.754910417 -0.15543122 0.377455208
11.13996149 -0.20816682 0.616378188 -0.24286129 0.662601095 -0.12143064 0.331300547

notas
calculan las constantes para cada ecuacin: 1as ecuaciones 1as ks, 2das ecuaciones 2das ks
Luego se calcula:
=f(x0+h/2, y0+hk1/2) 1
y1i 1 y1i k1,1 2k2,1 2k3,1 k4,1 h
=f(x0+h/2, y0+hk2/2) 6 k1,1=f(y1)
1
=f(x0+h, y0+hk3) y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h k1,2=f(y1,y2)
6 k =f(y1 +k h/2)
2,1 0 1,1

x0 en las funciones f(x,y) para este caso k2,2=f(y10+k1,2h/2, y20+k1,2h/2)


k1,2=f(y1,y2) o k3,1=f(y10+k2,1h/2)
k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2) k3,2=f(y10+k2,2h/2, y20+k2,2h/2)
k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2) k4,1=f(y10+k3,1h)
k4,2=f(y1i+k3,2h, y2i+k3,2h) k4,2=f(y10+k3,2h, y20+k3,2h)
cial, para el ejemplo 25.9 Chapra

(k1,1+2(k2,1+k3,1)+k4,1)
k3,1=f(y1i+k2,1h/2) k4,1=f(y1i+k3,1h)
y1i=y1i+k3,1h y2i+1 k1,2=f(y1i,y2i) y1i=y1i+k1,2h/2
-1.78125 3.109375 -1.5546875 -10.6171875 6 1.8 4.45
-1.38725281 2.421607971 -1.21080399 -8.26875687 6.8157 1.643766563 3.526176016
-1.08040441 1.885969099 -0.94298455 -6.43977891 7.560600214 1.489202806 2.798472004
-0.84142824 1.468808942 -0.73440447 -5.01535515 8.235457285 1.340410508 2.224625688
-0.65531154 1.143921026 -0.57196051 -3.9060017 8.842886647 1.199976326 1.771570879
-0.51036226 0.890895526 -0.44544776 -3.04202769 9.386675919 1.069389559 1.413424046
-0.39747451 0.693837092 -0.34691855 -2.36915731 9.871287621 0.949356279 1.129913419
-0.30955657 0.54036629 -0.27018314 -1.84512007 10.30150424 0.84003427 0.905153141
-0.24108532 0.42084191 -0.21042096 -1.43699537 10.68217977 0.741207612 0.726686471

. diferencial, para el ejemplo 25.9 Chapra


y1i y2i
y1i
k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2)
=f(y1i+k1,1h/2)
1
y2i= y2i+k1,2h/2 k3,1=f(y1i+k2,1h/2) y2i=y2i+k2,2h/2
y1i=y1i+k1,2h/2 y1i+(h/2)k2,1 y1i=y1i+k2,2h/2
4.45 6.45 1.62 3.5625 -1.78125 4.405 6.405
3.526176016 7.226641641 1.479389906 2.774505615 -1.38725281 3.485081852 7.185547477
2.798472004 7.932900915 1.340282525 2.160808817 -1.08040441 2.761241934 7.895670845
2.224625688 8.570559912 1.206369458 1.682856476 -0.84142824 2.191115425 8.53704965
1.771570879 9.142880729 1.079978693 1.310623085 -0.65531154 1.741571471 9.112881321
1.413424046 9.654023309 0.962450603 1.020724522 -0.51036226 1.386689307 9.62728857
1.129913419 10.10862669 0.854420651 0.79494903 -0.39747451 1.106179512 10.08489278
0.905153141 10.51151281 0.756030843 0.619113136 -0.30955657 0.884152284 10.49051195

mos valores que los anteriores

o lo hacen. (no se entrega)


deriv_prom)
erivpromy1y2*h

ecuacin para recordar clculos


dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx

k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2) k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2)


y2i= y2i+k1,2h/2 y2i=y2i+k2,2h/2 y2i=y2i+k3,2h
i=y1i+k1,2h/2 y1i=y1i+k2,2h/2 y1i=y1i+k3,2h
6.45 1.62 4.405 6.405 1.638 4.819 6.819
7.226641641 1.479389906 3.485081852 7.185547477 1.495827572 3.863148161 7.563613786
7.932900915 1.340282525 2.761241934 7.895670845 1.355174553 3.103758579 8.23818749
8.570559912 1.206369458 2.191115425 8.53704965 1.219773563 2.499409842 8.845344067
9.142880729 1.079978693 1.741571471 9.112881321 1.091978457 2.017566026 9.388875876
9.654023309 0.962450603 1.386689307 9.62728857 0.973144498 1.632648906 9.873248168
10.10862669 0.854420651 1.106179512 10.08489278 0.863914214 1.324531456 10.30324473
10.51151281 0.756030843 0.884152284 10.49051195 0.764431186 1.077360167 10.68371983
10.86748167 0.667086851 0.70815628 10.84895148 0.674498927 0.878634031 11.01942923

dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx
k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2) k4,2=f(y1i+k3,2h, y2i+k3,2h)
i=y2i+k2,2h/2 k4,1=f(y1i+k3,1h) y2i=y2i+k3,2h (k1,1+2(k2,1+k3,1)+k4,1)
y1i=y1i+k3,1h y1i=y1i+k3,2h
1.638 3.109375 -1.5546875 4.819 6.819 1.4724 -10.6171875
1.495827572 2.421607971 -1.21080399 3.863148161 7.563613786 1.344601048 -8.26875687
1.355174553 1.885969099 -0.94298455 3.103758579 8.23818749 1.218167895 -6.43977891
1.219773563 1.468808942 -0.73440447 2.499409842 8.845344067 1.096455796 -5.01535515
1.091978457 1.143921026 -0.57196051 2.017566026 9.388875876 0.981580635 -3.9060017
0.973144498 0.890895526 -0.44544776 1.632648906 9.873248168 0.874760659 -3.04202769
0.863914214 0.693837092 -0.34691855 1.324531456 10.30324473 0.776573436 -2.36915731
0.764431186 0.54036629 -0.27018314 1.077360167 10.68371983 0.687148033 -1.84512007
k4,2=f(y1i+k3,2h, y2i+k3,2h)

(k1,2+2(k2,2+k3,2)+k4,2)
1.4724 9.7884
1.344601048 8.938802567
1.218167895 8.098284857
1.096455796 7.289152344
0.981580635 6.525471261
0.874760659 5.81534042
0.776573436 5.162599445
0.687148033 4.568106362
0.606307826 4.030686993

+2(k2,1+k3,1)+k4,1)
1,1

(k1,2+2(k2,2+k3,2)+k4,2)
9.7884
8.938802567
8.098284857
7.289152344
6.525471261
5.81534042
5.162599445
4.568106362
mi 6 nov 2013
EDO
Algunas consideraciones para el tamao de paso
xixxf h (unidades)
0-1 0.05 o 0.1 si t (s) = 3 en algunas reacciones qumicas
0 - 10 0.5 o 1 h= 0.1 s 0.5 s
0 - 100 5 o 10 hay casos que pueden estar 1x10-2 a 1x10-6
1 - 1000 50 o 100 el incremento o h

Pueden usar este criterio en caso que no tuviesen esta informacin


calculando dos pasos o incrementos en x, ver el resultado de yi+1 para
decidir el tamao de paso adecuado y visualizar el comportamiento de EDO

Usando una paquetera matemtica, Scilab, evaluamos la EDO


Con el ejemplo anterior de la hoja "explicacion1" o "hoja1"

f(x,y) 4e 0.5 y
0.8 x

0x4
yi= 2
h= 0.5

Copiar rengln por rengln en la consola de Scilab para visualizar cada actividad
Las siguientes actividades evaluarn y graficar la EDO
copiado del ejemplo de ApuntesScilab.pdf
function [dydx]=fxy(x,y), dydx=4*exp(0.8*x)-0.5*y, endfunction function [dydx]=fty(t,y), dydx=0.3*y*(2-y), endfu
x0=0 t0=0;
y0=2 y0=0.1;
x=linspace(x0,fxy(x0,y0)); calcula los valores de x, hasta el final t=linspace(t0,fty(t0,y0));
y=ode(y0,x0,x,fxy); y=ode(y0,t0,t,fty);
plot2d(x,y) plot2d(t,y)

Sin graficar
function [dydx]=fxy(x,y), dydx=4*exp(0.8*x)-0.5*y, endfunction
x0=0
y0=2
x=0:4 f(x,y)=4exp(0.8x)-0.5y
y=ode(y0,x0,x,fxy) 80
Resultado: 60
x yi+1
40
0 2
1 6.1946317 20
2 14.843922
0
3 33.677172 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
4 75.338964

Usar el ejemplo del mtodo de Runge-Kutta de 4to orden


ver archivo claseejemplosEulerRungek4toB.xlsm. Hoja "clase_explicacion"
y aplicarlo al ejemplo visto en la hoja1 o "explicacion1"
Se calculan las constantes:
1
f(x,y) 4e 0.5 y
0.8 x
k1=f(x0,y0) yi 1 yi k1 2k2 2k3 k4
0x4 k2=f(x0+h/2, y0+k1h/2) 6
yi= 2 k3=f(x0+h/2, y0+k2h/2)
4e 0.8 x 0.5 y
h= 2 k4=f(x0+h, y0+hk3)

k2=f(x0+h/2, y0+hk1/2)
k1=f(x0,y0)
t yi+1 = T k1 t0+h/2 T0+hk1/2 k2
55 55 5.14064E+19 56 5.14064E+19 8.87038E+19
57 1.844956E+20 1.6236977E+20 58 3.46865E+20 3.93229E+20
59 9.8299852E+20 7.6962981E+20 60 1.75263E+21 1.93038E+21
61 4.8947682E+21 3.7990291E+21 62 8.6938E+21 9.55475E+21
63 2.4253675E+22 1.881185E+22 64 4.30655E+22 4.73226E+22
65 1.2013289E+23 9.3173876E+22 66 2.13307E+23 2.34389E+23
67 5.9502345E+23 4.6149255E+23 68 1.05652E+24 1.16094E+24
69 2.947171E+24 2.2857873E+24 70 5.23296E+24 5.75016E+24
71 1.4597434E+25 1.1321578E+25 72 2.5919E+25 2.84807E+25
73 7.2301562E+25 5.6076145E+25 74 1.28378E+26 1.41066E+26
75 3.5811198E+26 2.7774697E+26 76 6.35859E+26 6.98704E+26
77 1.7737403E+27 1.3756897E+27 78 3.14943E+27 3.4607E+27
79 8.785393E+27 6.8138358E+27 80 1.55992E+28 1.7141E+28
81 4.3514336E+28 3.374915E+28 82 7.72635E+28 8.48998E+28
83 2.1552792E+29 1.6716063E+29 84 3.82689E+29 4.20512E+29
85 1.0675168E+30 8.2795204E+29 86 1.89547E+30 2.08281E+30
87 5.2874452E+30 4.1008733E+30 88 9.38832E+30 1.03162E+31
89 2.6188887E+31 2.0311758E+31 90 4.65006E+31 5.10965E+31
91 1.2971441E+32 1.006048E+32 92 2.30319E+32 2.53083E+32
93 6.4247967E+32 4.9829882E+32 94 1.14078E+33 1.25353E+33

Tarea: si les d tiempo el Runge-Kutta Fehlberg para el problema anterior

Ver ejemplo con dos ecuaciones simultneas, pueden empezar con Euler modificado y despus con
Runge-Kutta de 4to orden

hoy lu 11 nov 13
Existen otros mtodos para la solucin de EDO, como Runge-Kutta Fehlberg o R.K. 5to ,6to orden (RK56)
y Adam-Moulton, que tambin es muy estable.

con dos ecuaciones simultneas


M Euler modificado, 25.4 Chapra, ejemplo 25.9
Nota en esta pgina, no se toma en cuenta el valor de x i en la funcin de la ec. diferencial, para el ejemplo 25.9 Chapra
dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx

x= 0 xf= 4 0x4
y1= 4
y1i 1 y1i h deriv _ promy1
y2= 6
h= 0.5 y 2i 1 y 2i h(deriv _ promy1y 2)

clculos por separados de y1 y y2 y1i+1=y1i+f(xi,y1i)h deriv_prom


x y1i+1 f(x,y1) f(xi+1,y1i+1) [f(xi,y1i)+ f(xi+1,y1i+1)]/2
0 4 -2 3 -1.5 -1.75
0.5 3.125 -1.5625 2.34375 -1.171875 -1.3671875
1 2.44140625 -1.220703125 1.831054688 -0.91552734 -1.06811523
1.5 1.9073486328 -0.9536743164 1.430511475 -0.71525574 -0.83446503
2 1.4901161194 -0.7450580597 1.11758709 -0.55879354 -0.6519258
2.5 1.1641532183 -0.5820766091 0.873114914 -0.43655746 -0.50931703
3 0.9094947018 -0.4547473509 0.682121026 -0.34106051 -0.39790393
3.5 0.7105427358 -0.3552713679 0.532907052 -0.26645353 -0.31086245
4 0.5551115123 -0.2775557562 0.416333634 -0.20816682 -0.24286129

4e6*exp(-7900/b91)*c91
y1i+1=y1i+f(xi,yi)h

x y1i+1 y2i+1 f(x,y1) f(x,y1,y2)


0 4 6 -2 1.8 3
0.5 3.125 6.8575 -1.5625 1.63025 2.34375
1 2.44140625 7.631021875 -1.22070313 1.466552813 1.831054688
1.5 1.9073486328 8.3245613398 -0.95367432 1.311896735 1.430511475
2 1.4901161194 8.9432345086 -0.74505806 1.168018035 1.11758709
2.5 1.1641532183 9.4927560758 -0.58207661 1.035757855 0.873114914
3 0.9094947018 9.9790700415 -0.45474735 0.915329517 0.682121026
3.5 0.7105427358 10.4080942852 -0.35527137 0.806517441 0.532907052
4 0.5551115123 10.7855494937 -0.27755576 0.708824001 0.416333634

Ejercicios para practicar


Chapra, pdf, problemas: pg. 724, 25.11 y pg. 750, 26.3
Aplicar en ambos casos, Euler modificado y Runge-Kutta de 4to orden

hoy mircoles 13 nov 2013 Se calculan las constantes para ca


M Runge-Kutta 4to orden, 25.4 Chapra, ejemplo 25.9 k1=f(x0,y0)
dy1 dy2 k2=f(x0+h/2, y0+hk1/2)
0.5 y1 4 0.3 y2 0.1 y1 k3=f(x0+h/2, y0+hk2/2)
dx dx
k4=f(x0+h, y0+hk3)
x= 0 xf= 4 0x4
y1= 4 Nota se omiten x0 en las funciones f(x,y) para es
y2= 6 k1,1=f(y1)
h= 0.5 =y1i+(h/2)k11 k2,1=f(y1i+k1,1h/2)
k3,1=f(y1i+k2,1h/2)
k4,1=f(y1i+k3,1h)
Nota en esta pgina, no se toma en cuenta el valor de x i en la funcin de la ec. diferencial, para el ejemplo 25.9 Chapra

clculos paso a paso, separando y1i+1 y y2i+1


k2,1=f(y1i+k1,1h/2)
x y1i+1 k1,1=f(y1i) y1i+(h/2)k1,1 y1i+(h/2)k2,1
0 4 -2 3.5 -1.75 3.5625
0.5 3.115234375 -1.5576171875 2.725830078 -1.36291504 2.774505615
1 2.4261713028 -1.2130856514 2.12289989 -1.06144994 2.160808817
1.5 1.8895230605 -0.9447615303 1.653332678 -0.82666634 1.682856476
2 1.4715767976 -0.7357883988 1.287629698 -0.64381485 1.310623085
2.5 1.1460766564 -0.5730383282 1.002817074 -0.50140854 1.020724522
3 0.8925743491 -0.4462871745 0.781002555 -0.39050128 0.79494903
3.5 0.6951445736 -0.3475722868 0.608251502 -0.30412575 0.619113136
4 0.5413845678 -0.2706922839 0.473711497 -0.23685575 0.482170631

dy1 dy2
Hoy 20 de nov 2013, Repaso 0.5 y1 4 0.3 y2 0.1 y1
dx dx
Nota en esta pgina, no se toma en cuenta el valor de xi en la funcin de la ec. diferencial, para el ejemplo 25.9
clculos paso a paso, consecutivo: y1i+1 y y2i+1 (ver referencias bibliogrficas)
y1i
y1i
h= 0.5 k2,1=f(y1i+k1,1h/2)
x y1i+1 y2i+1 k1,1=f(y1i) k1,2=f(y1i,y2i) y1i+(h/2)k1,1
0 4 6 -2 1.8 3.5 -1.75
0.5 3.115234375 6.8157 -1.5576171875 1.643766563 2.725830078 -1.36291504
1 2.426171303 7.5606002139 -1.2130856514 1.489202806 2.12289989 -1.06144994
1.5 1.889523061 8.2354572853 -0.9447615303 1.340410508 1.653332678 -0.82666634
2 1.471576798 8.8428866473 -0.7357883988 1.199976326 1.287629698 -0.64381485
2.5 1.146076656 9.3866759191 -0.5730383282 1.069389559 1.002817074 -0.50140854
3 0.892574349 9.8712876207 -0.4462871745 0.949356279 0.781002555 -0.39050128
3.5 0.695144574 10.3015042411 -0.3475722868 0.84003427 0.608251502 -0.30412575
4 0.541384568 10.6821797713
Tarea por hacer ver lnea 116 de esta hoja como prctica, si an no lo hacen. (no se entrega)
mplo de ApuntesScilab.pdf
=fty(t,y), dydx=0.3*y*(2-y), endfunction

//corregido

x)-0.5y

2 2.5 3 3.5 4 4.5


1
i 1 yi k1 2k2 2k3 k4 h
6

=f(x0+h/2, y0+hk1/2) k3=f(x0+h/2, y0+hk2/2) k4=f(x0+h, y0+hk3)

y0+hk2/2 k3 x0+h y0+hk3 k4 (k1+2k2+2k3+k4)h/6


8.87038E+19 7.00551E+19 57 1.4011E+20 1.84562E+20 1.84496E+20
5.77725E+20 2.77799E+20 59 7.40095E+20 8.91082E+20 7.98503E+20
2.91338E+21 1.35001E+21 61 3.68301E+21 4.40491E+21 3.91177E+21
1.44495E+22 6.67689E+21 63 1.82485E+22 2.18144E+22 1.93589E+22
7.15762E+22 3.30672E+22 65 9.03881E+22 1.08046E+23 9.58792E+22
3.54522E+23 1.63782E+23 67 4.47696E+23 5.35156E+23 4.74891E+23
1.75596E+24 8.11215E+23 69 2.21745E+24 2.65065E+24 2.35215E+24
8.69733E+24 4.01797E+24 71 1.09831E+25 1.31287E+25 1.16503E+25
4.30782E+25 1.99012E+25 73 5.43997E+25 6.50271E+25 5.77041E+25
2.13368E+26 9.8571E+25 75 2.69444E+26 3.22081E+26 2.8581E+26
1.05682E+27 4.88226E+26 77 1.33456E+27 1.59528E+27 1.41563E+27
5.23444E+27 2.4182E+27 79 6.61013E+27 7.90147E+27 7.01165E+27
2.59264E+28 1.19774E+28 81 3.27402E+28 3.91362E+28 3.47289E+28
1.28414E+29 5.93245E+28 83 1.62163E+29 1.93843E+29 1.72014E+29
6.3604E+29 2.93836E+29 85 8.032E+29 9.6011E+29 8.51989E+29
3.15032E+30 1.45538E+30 87 3.97828E+30 4.75546E+30 4.21993E+30
1.56037E+31 7.20854E+30 89 1.97045E+31 2.35539E+31 2.09014E+31
7.72854E+31 3.57042E+31 91 9.75972E+31 1.16663E+32 1.03526E+32
3.82797E+32 1.76844E+32 93 4.83402E+32 5.77838E+32 5.12765E+32
1.89601E+33 8.75913E+32 95 2.39431E+33 2.86205E+33 2.53974E+33

orden (RK56)
para el ejemplo 25.9 Chapra

h(deriv_prom) [f(xi,y1i,y2i)+ f(xi+1,y1i+1)]/2


y2i+1=y2i+f(xi,y1i,y2i+1)h deriv_prom
xi,y1i)+ f(xi+1,y1i+1)]/2 y2i+1 f(xi,y1i,y2i) f(xi+1,y1i+1,y2i+1) h(deriv_prom)
-0.875 6 1.8 6.9 1.63 1.715 0.8575
-0.68359375 6.8575 1.63025 7.672625 1.4638375 1.54704375 0.773521875
-0.53405762 7.631021875 1.466552813 8.364298281 1.307605047 1.38707893 0.693539465
-0.41723251 8.32456134 1.311896735 8.980509707 1.16279594 1.237346338 0.618673169
-0.3259629 8.943234509 1.168018035 9.527243526 1.030068233 1.099043134 0.549521567
-0.25465852 9.492756076 1.035757855 10.010635 0.909498008 0.972627932 0.486313966
-0.19895197 9.979070042 0.915329517 10.4367348 0.800767457 0.858048487 0.429024244
-0.15543122 10.40809429 0.806517441 10.81135301 0.703303393 0.754910417 0.377455208
-0.12143064 10.78554949 0.708824001 11.13996149 0.616378188 0.662601095 0.331300547

derivpromy1y2
=y1i+f(xi,yi)h
i+1 derivpromy1 [f(xi,yi)+ f(xi+1,y1i+1,y2i+1)]/2
y2i+1=y2i+f(xi,y1i,y2i)h [f(xi,yi)+ f(xi+1,yi+1)]/2 derivpromy1y2*h
f(xi+1,y1i+1) f(xi+1,y1i+1,y2i+1) derivpromy1*h
6.9 -1.5 1.63 -1.75 1.715 -0.875 0.8575
7.672625 -1.171875 1.4638375 -1.3671875 1.54704375 -0.68359375 0.773521875
8.364298281 -0.91552734 1.307605047 -1.06811523 1.38707893 -0.53405762 0.693539465
8.980509707 -0.71525574 1.16279594 -0.83446503 1.237346338 -0.41723251 0.618673169
9.527243526 -0.55879354 1.030068233 -0.6519258 1.099043134 -0.3259629 0.549521567
10.010635 -0.43655746 0.909498008 -0.50931703 0.972627932 -0.25465852 0.486313966
10.4367348 -0.34106051 0.800767457 -0.39790393 0.858048487 -0.19895197 0.429024244
10.81135301 -0.26645353 0.703303393 -0.31086245 0.754910417 -0.15543122 0.377455208
11.13996149 -0.20816682 0.616378188 -0.24286129 0.662601095 -0.12143064 0.331300547

notas
calculan las constantes para cada ecuacin: 1as ecuaciones 1as ks, 2das ecuaciones 2das ks
Luego se calcula:
=f(x0+h/2, y0+hk1/2) 1
y1i 1 y1i k1,1 2k2,1 2k3,1 k4,1 h
=f(x0+h/2, y0+hk2/2) 6 k1,1=f(y1)
1
=f(x0+h, y0+hk3) y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h k1,2=f(y1,y2)
6
1
y1i 1 y1i
6
k1,1 2k2,1 2k3,1 k4,1 h
1
y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h
6 k2,1=f(y10+k1,1h/2)
x0 en las funciones f(x,y) para este caso k2,2=f(y10+k1,2h/2, y20+k1,2h/2)
k1,2=f(y1,y2) o k3,1=f(y10+k2,1h/2)
k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2) k3,2=f(y10+k2,2h/2, y20+k2,2h/2)
k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2) k4,1=f(y10+k3,1h)
k4,2=f(y1i+k3,2h, y2i+k3,2h) k4,2=f(y10+k3,2h, y20+k3,2h)
para el ejemplo 25.9 Chapra

(k1,1+2(k2,1+k3,1)+k4,1)
k3,1=f(y1i+k2,1h/2) k4,1=f(y1i+k3,1h)
y1i=y1i+k3,1h y2i+1 k1,2=f(y1i,y2i) y1i=y1i+k1,2h/2
-1.78125 3.109375 -1.5546875 -10.6171875 6 1.8 4.45
-1.38725281 2.421607971 -1.21080399 -8.26875687 6.8157 1.643766563 3.526176016
-1.08040441 1.885969099 -0.94298455 -6.43977891 7.560600214 1.489202806 2.798472004
-0.84142824 1.468808942 -0.73440447 -5.01535515 8.235457285 1.340410508 2.224625688
-0.65531154 1.143921026 -0.57196051 -3.9060017 8.842886647 1.199976326 1.771570879
-0.51036226 0.890895526 -0.44544776 -3.04202769 9.386675919 1.069389559 1.413424046
-0.39747451 0.693837092 -0.34691855 -2.36915731 9.871287621 0.949356279 1.129913419
-0.30955657 0.54036629 -0.27018314 -1.84512007 10.30150424 0.84003427 0.905153141
-0.24108532 0.42084191 -0.21042096 -1.43699537 10.68217977 0.741207612 0.726686471

erencial, para el ejemplo 25.9 Chapra


y1i y2i
y1i
k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2)
1
=f(y1i+k1,1h/2) y2i= y2i+k1,2h/2 k3,1=f(y1i+k2,1h/2) y2i=y2i+k2,2h/2
y1i=y1i+k1,2h/2 y1i+(h/2)k2,1 y1i=y1i+k2,2h/2
4.45 6.45 1.62 3.5625 -1.78125 4.405 6.405
3.526176016 7.226641641 1.479389906 2.774505615 -1.38725281 3.485081852 7.185547477
2.798472004 7.932900915 1.340282525 2.160808817 -1.08040441 2.761241934 7.895670845
2.224625688 8.570559912 1.206369458 1.682856476 -0.84142824 2.191115425 8.53704965
1.771570879 9.142880729 1.079978693 1.310623085 -0.65531154 1.741571471 9.112881321
1.413424046 9.654023309 0.962450603 1.020724522 -0.51036226 1.386689307 9.62728857
1.129913419 10.10862669 0.854420651 0.79494903 -0.39747451 1.106179512 10.08489278
0.905153141 10.51151281 0.756030843 0.619113136 -0.30955657 0.884152284 10.49051195
hacen. (no se entrega)
deriv_prom)

erivpromy1y2*h
ecuacin para recordar clculos
dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx

k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2) k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2)


y2i= y2i+k1,2h/2 y2i=y2i+k2,2h/2 y2i=y2i+k3,2h
i=y1i+k1,2h/2 y1i=y1i+k2,2h/2 y1i=y1i+k3,2h
6.45 1.62 4.405 6.405 1.638 4.819 6.819
7.226641641 1.479389906 3.485081852 7.185547477 1.495827572 3.863148161 7.563613786
7.932900915 1.340282525 2.761241934 7.895670845 1.355174553 3.103758579 8.23818749
8.570559912 1.206369458 2.191115425 8.53704965 1.219773563 2.499409842 8.845344067
9.142880729 1.079978693 1.741571471 9.112881321 1.091978457 2.017566026 9.388875876
9.654023309 0.962450603 1.386689307 9.62728857 0.973144498 1.632648906 9.873248168
10.10862669 0.854420651 1.106179512 10.08489278 0.863914214 1.324531456 10.30324473
10.51151281 0.756030843 0.884152284 10.49051195 0.764431186 1.077360167 10.68371983
10.86748167 0.667086851 0.70815628 10.84895148 0.674498927 0.878634031 11.01942923

dy1 dy2
0.5 y1 4 0.3 y2 0.1 y1
dx dx
k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2) k4,2=f(y1i+k3,2h, y2i+k3,2h)
i=y2i+k2,2h/2 k4,1=f(y1i+k3,1h) y2i=y2i+k3,2h (k1,1+2(k2,1+k3,1)+k4,1)
y1i=y1i+k3,1h y1i=y1i+k3,2h
1.638 3.109375 -1.5546875 4.819 6.819 1.4724 -10.6171875
1.495827572 2.421607971 -1.21080399 3.863148161 7.563613786 1.344601048 -8.26875687
1.355174553 1.885969099 -0.94298455 3.103758579 8.23818749 1.218167895 -6.43977891
1.219773563 1.468808942 -0.73440447 2.499409842 8.845344067 1.096455796 -5.01535515
1.091978457 1.143921026 -0.57196051 2.017566026 9.388875876 0.981580635 -3.9060017
0.973144498 0.890895526 -0.44544776 1.632648906 9.873248168 0.874760659 -3.04202769
0.863914214 0.693837092 -0.34691855 1.324531456 10.30324473 0.776573436 -2.36915731
0.764431186 0.54036629 -0.27018314 1.077360167 10.68371983 0.687148033 -1.84512007
k4,2=f(y1i+k3,2h, y2i+k3,2h)

(k1,2+2(k2,2+k3,2)+k4,2)
1.4724 9.7884
1.344601048 8.938802567
1.218167895 8.098284857
1.096455796 7.289152344
0.981580635 6.525471261
0.874760659 5.81534042
0.776573436 5.162599445
0.687148033 4.568106362
0.606307826 4.030686993

+2(k2,1+k3,1)+k4,1)
1,1

(k1,2+2(k2,2+k3,2)+k4,2)
9.7884
8.938802567
8.098284857
7.289152344
6.525471261
5.81534042
5.162599445
4.568106362
Lunes 5 mayo 14

Metodo de Euler con una EDO


Chapra, problema 25.1 0.674740942
/=+^2

t= 0 a 3
h= 0.5
_(+1)=_0+(_0,_0 )
yi+1
yi+1 yi+1
t dy/dt, f(t,y) f(t,y) h
0 1 -1 -0.5 5
0.5 0.5 -0.25 -0.125 4
1 0.375 0.625 0.3125 3
1.5 0.6875 1.5625 0.78125 2
2 1.46875 2.53125 1.265625 1
2.5 2.734375 3.515625 1.7578125
0
3 4.4921875 0 0.5 1 1.5 2 2.5 3 3.5

Mtodo de Euler mejorado o Mtodo de Heun


1) calc yi+1 yi 1 yi hf ( xi , yi ) 1 3) calc derivada promedio
deriv _ prom f ( xi , yi ) f ( xi 1 , yi 1 )
2
2) calc f(xi+1,yi+1)


4) y y h deriv _ prom
i 1 i
Chapra, problema 25.1
/=+^2

t= 0 a 3, y(0)=1
h= 0.5
yi 1 yi hf ( xi , yi )

t yi+1 f(t0,y0) yi+1 f(ti+1,yi+1) deriv_prom deriv_prom h


0 1 -1 0.5 -0.25 -0.625 -0.3125
0.5 0.6875 -0.4375 0.46875 0.53125 0.046875 0.0234375
1 0.7109375 0.2890625 0.85546875 1.39453125 0.841796875 0.420898438
1.5 1.131835938 1.118164063 1.690917969 2.309082031 1.713623047 0.856811523
2 1.988647461 2.011352539 2.99432373 3.25567627 2.633514404 1.316757202
2.5 3.305404663 2.944595337 4.777702332 4.222297668 3.583446503 1.791723251
3 5.097127914

Con dos EDO, usando Euler (+1)=0+(0, 0)


dy1/dx= -0.5y1
10
dy2/dx = 4-0.3y2-0.1y1
9
8
7
6
10
9
x=0 a 2, h=0.5
y1=4, y2=6 8
h= 0.5 7
6
x y1i+1 y2i+1 f(x0,y10) f(y10,y20) f(x0,y10) h f(y10,y20) h
5
0 4 6 -2 1.8 -1 0.9
4
0.5 3 6.9 -1.5 1.63 -0.75 0.815
1 2.25 7.715 -1.125 1.4605 -0.5625 0.73025 3
1.5 1.6875 8.44525 -0.84375 1.297675 -0.421875 0.6488375 2
2 1.265625 9.0940875 1
0
0 0.5
38.65980825

2.5 3 3.5

calc derivada promedio

0
9
8
7
6
0
9
8
7
6
5 y1i+1
y2i+1
4
3
2
1
0
0 0.5 1 1.5 2 2.5
Mi 7 mayo 2014
Mtodo de Runge-Kutta de cuarto orden
Ejercicio 7.3, Nieves
f(t,x)

k1=f(x0,y0) k1,2=f(y1,y2)
1
y1i1 y1i k1,1 2k2,1 2k3,1 k4,1 h k2=f(x0+h/2, y0+hk1/2) k2,2=f(y1i+k1,2h/2, y2i+k1,2h/2)
x(0) = 25 6 k3=f(x0+h/2, y0+hk2/2) k3,2=f(y1i+k2,2h/2, y2i+k2,2h/2)
1
x(10) = ? y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h k4=f(x0+h, y0+hk3) k4,2=f(y1i+k3,2h, y2i+k3,2h)
h= 1 6

iteracin/pasos 1 2 3 4 5 6 7
ti= 0 1 2 3 4 5 6
xi = 25 56.7216667 82.6932526 103.957056 121.36644 135.620083 147.290016
k1= 35 28.6556667 23.4613495 19.2085889 15.726712 12.8759833 10.5419968
ti+h/2 = 0.5 1.5 2.5 3.5 4.5 5.5 6.5
x0+hk1/2 = 42.5 71.0495 94.4239273 113.56135 129.229796 142.058075 152.561015
k2 = 31.5 25.7901 21.1152145 17.28773 14.1540408 11.588385 9.48779708
x0+k2h/2 = 40.75 69.6167167 93.2508598 112.600921 128.44346 141.414276 152.033915
k3 = 31.85 26.0766567 21.349828 17.4798159 14.3113079 11.7171448 9.59321705
t0+h = 1 2 3 4 5 6 7
x0+k3h = 56.85 82.7983233 104.043081 121.436872 135.677748 147.337228 156.883233
k4 = 28.63 23.4403353 19.1913839 15.7126257 12.8644504 10.5325544 8.62335335
k1+2k2+2k3+k4= 190.33 155.829515 127.582819 104.456306 85.5218598 70.0195974 57.3273784

ti= xi =
0 25 xi =
1 56.7216667 200
2 82.6932526 180
3 103.957056 160
4 121.36644 140
5 135.620083 120 xi =
100
6 147.290016
80
7 156.844579 60
8 164.667219 40
9 171.071874 20
10 176.315579 0
0 2 4 6 8 10 12

Usando dos EDO, con el mtodo de Runge-Kutta 4to grado


Ejercicio 7.8, Nieves (pg. Pdf=519, 2a Edicin) 1
y1i 1 y1i
6
k1,1 2k2,1 2k3,1 k4,1 h
1
y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h
6
1
y1i 1 y1i
6
k1,1 2k2,1 2k3,1 k4,1 h
1
y 2i 1 y 2i k1,2 2k2,2 2k3,2 k4,2 h
6

terminar este
h= 0.4
ejercicio...
xi = t0 = 0
y1(0) = CA1(0) = 0
y2(0) = CA2(0) = 0
k11 f1(xi,y1i,y2i) 0.3125
k12 f2(xi,y1i,y2i) 0
x0+h/2
y1 y1+hk11/2
y2 y2+hk12/2
k21
k22
y1 y1+hk21/2
y2 y2+hk22/2
k31
k32
xi x0+h
y1 y1+hk3
y2 y2+hk3
k41
k42
para f1 (k11+2k21+2k31+k41)h/6
para f2 (k12+2k22+2k32+k42)h/6

Ejercicio 7.2, Nieves (pg. Pdf=512, 2da Edicin)

k1=f(x0,y0)
k2=f(x0+h/2, y0+hk1/2)
a(0) = 4m k3=f(x0+h/2, y0+hk2/2)
a(?) = 3m k4=f(x0+h, y0+hk3)
h= 20 seg

_(+1)=_+(_1+2_2+2_3+_4 )
/6

f(t0,a0)
t0 ai k1 t0+h/2 a0+k1h/2 k2 a0+k2h/2 k3
0 4 -0.0010313 10 3.9896875 -0.0010308 3.9896919 -0.0010308
20 3.97938377 -0.0010304 30 3.96908 -0.00103 3.96908426 -0.00103
40 3.95878472 -0.0010295 50 3.9484894 -0.0010291 3.94849352 -0.0010291
60 3.9382023 -0.0010287 70 3.92791516 -0.0010283 3.92791915 -0.0010283
80 3.91763597 -0.0010279 90 3.90735673 -0.0010275 3.90736059 -0.0010275
100 3.89708518 -0.0010272 110 3.88681359 -0.0010268 3.8868173 -0.0010268
120 3.8765494 -0.0010264 130 3.86628517 -0.0010261 3.86628876 -0.0010261
140 3.85602809 -0.0010257 150 3.84577096 -0.0010254 3.84577441 -0.0010254
160 3.8355207 -0.001025 170 3.8252704 -0.0010247 3.82527371 -0.0010247
180 3.8150267 -0.0010244 190 3.80478296 -0.0010241 3.80478614 -0.0010241
200 3.79454556 -0.0010237 210 3.78430811 -0.0010234 3.78431115 -0.0010234
220 3.77407673 -0.0010231 230 3.76384531 -0.0010229 3.76384822 -0.0010229
240 3.75361968 -0.0010226 250 3.74339402 -0.0010223 3.74339679 -0.0010223
260 3.73317388 -0.001022 270 3.7229537 -0.0010218 3.72295635 -0.0010218
280 3.71273879 -0.0010215 290 3.70252384 -0.0010212 3.70252635 -0.0010212
300 3.69231388 -0.001021 310 3.68210388 -0.0010208 3.68210625 -0.0010208
320 3.67189861 -0.0010205 330 3.66169329 -0.0010203 3.66169553 -0.0010203 ai
340 3.65149244 -0.0010201 350 3.64129154 -0.0010199 3.64129365 -0.0010199
360 3.63109484 -0.0010197 370 3.62089809 -0.0010195 4.53.62090007 -0.0010195
380 3.61070527 -0.0010193 390 3.60051241 -0.0010191 43.60051425 -0.0010191
400 3.5903232 -0.0010189 410 3.58013395 -0.0010188 3.53.58013565 -0.0010188
420 3.56994809 -0.0010186 430 3.55976218 -0.0010184 33.55976375 -0.0010184
440 3.54957939 -0.0010183 450 3.53939655 -0.0010181 2.53.53939799 -0.0010181
460 3.52921656 -0.001018 470 3.51903653 -0.0010179 23.51903783 -0.0010179
480 3.50885907 -0.0010178 490 3.49868157 -0.0010176 1.5
3.49868273 -0.0010176
500 3.48850637 -0.0010175 510 3.47833113 -0.0010174 3.47833216 -0.0010174
1
520 3.46815792 -0.0010173 530 3.45798466 -0.0010172 3.45798555 -0.0010172
0.5
540 3.44781315 -0.0010172 550 3.43764161 -0.0010171 3.43764236 -0.0010171
0
560 3.42747154 -0.001017 570 3.41730142 -0.0010169 3.41730204 -0.0010169
0 200 400 600 80
580 3.40713251 -0.0010169 590 3.39696356 -0.0010168 3.39696403 -0.0010168
600 3.38679553 -0.0010168 610 3.37662745 -0.0010168 3.37662779 -0.0010168
620 3.36646003 -0.0010167 630 3.35629255 -0.0010167 3.35629275 -0.0010167
640 3.34612544 -0.0010167 650 3.33595829 -0.0010167 3.33595834 -0.0010167
660 3.32579121 -0.0010167 670 3.31562409 -0.0010167 3.31562401 -0.0010167
680 3.30545677 -0.0010167 690 3.29528941 -0.0010168 3.29528918 -0.0010168
700 3.28512155 -0.0010168 710 3.27495365 -0.0010168 3.27495328 -0.0010168
720 3.26478498 -0.0010169 730 3.25461625 -0.0010169 3.25461573 -0.0010169
740 3.24444646 -0.001017 750 3.23427663 -0.0010171 3.23427596 -0.0010171
760 3.22410544 -0.0010171 770 3.21393419 -0.0010172 3.21393338 -0.0010172
780 3.2037613 -0.0010173 790 3.19358836 -0.0010174 3.1935874 -0.0010174
800 3.18341348 -0.0010175 810 3.17323854 -0.0010176 3.17323743 -0.0010176
820 3.16306136 -0.0010177 830 3.15288412 -0.0010178 3.15288286 -0.0010178
840 3.14270434 -0.001018 850 3.13252451 -0.0010181 3.1325231 -0.0010181
860 3.12234183 -0.0010183 870 3.11215909 -0.0010184 3.11215753 -0.0010184
880 3.1019732 -0.0010186 890 3.09178726 -0.0010188 3.09178553 -0.0010188
900 3.08159784 -0.0010189 910 3.07140838 -0.0010191 3.0714065 -0.0010191
920 3.06121513 -0.0010193 930 3.05102183 -0.0010195 3.05101979 -0.0010195
940 3.04082443 -0.0010197 950 3.03062697 -0.00102 3.03062478 -0.00102
960 3.0204251 -0.0010202 970 3.01022317 -0.0010204 3.01022082 -0.0010204
980 3.0000165 -0.0010207 990 2.98980978 -0.0010209 2.98980726 -0.0010209
1000 2.97959798 -0.0010212 1010 2.96938614 -0.0010215 2.96938345 -0.0010215
1020 2.95916889 -0.0010217 1030 2.94895158 -0.001022 2.94894873 -0.001022
2,2
=f(y1i+k1,2h/2, y2i+k1,2h/2)
3,2
=f(y1i+k2,2h/2, y2i+k2,2h/2)
4,2
=f(y1i+k3,2h, y2i+k3,2h)

8 9 10 11 12 13 14 15
7 8 9 10 11 12 13 14
156.844579 164.667219 171.071874 176.315579 180.608775 184.123758 187.001591 189.35777
8.63108414 7.06655629 5.78562519 4.7368842 3.87824499 3.17524845 2.59968174 2.1284461
7.5 8.5 9.5 10.5 11.5 12.5 13.5 14.5
161.160121 168.200497 173.964687 178.684021 182.547898 185.711382 188.301432 190.421993
7.76797573 6.35990066 5.20706267 4.26319578 3.49042049 2.8577236 2.33971357 1.91560149
160.728567 167.847169 173.675405 178.447177 182.353985 185.55262 188.171448 190.31557
7.85428657 6.43056622 5.26491892 4.31056462 3.52920294 2.88947609 2.36571039 1.93688595
8 9 10 11 12 13 14 15
164.698866 171.097785 176.336793 180.626144 184.137978 187.013234 189.367302 191.294655
7.06022683 5.78044305 4.7326414 3.87477127 3.1724044 2.59735323 2.12653967 1.74106891
46.9358356 38.4279331 31.4622298 25.7591763 21.0898962 17.267001 14.1370693 11.5744899

xi =

0 12

k1,1=f1(x0, y10, y20)


k1,2=f2(x0, y10, y20)
k2,1=f1(x0+h/2, y10+k1,1h/2, y20+k1,2h/2)
k2,2=f2(x0+h/2, y10+k1,2h/2, y20+k1,2h/2)
k3,1=f1(x0+h/2, y10+k2,1h/2, y20+k2,2h/2)
k3,2=f2(x0+h/2, y10+k2,2h/2, y20+k2,2h/2)
k4,1=f1(x0+h, y10+k3,1h, y20+k3,2h)
k4,2=f2(x0+h, y10+k3,2h, y20+k3,2h)
t0+h a0+k3h k4 (k1+2(k2+k3)+k4)
20 3.97938379 -0.0010304 -0.0061849
40 3.95878474 -0.0010295 -0.0061797
60 3.93820232 -0.0010287 -0.0061747
80 3.91763599 -0.0010279 -0.0061699
100 3.8970852 -0.0010272 -0.0061652
120 3.87654942 -0.0010264 -0.0061607
140 3.85602811 -0.0010257 -0.0061564
160 3.83552072 -0.001025 -0.0061522
180 3.81502672 -0.0010244 -0.0061482
200 3.79454558 -0.0010237 -0.0061443
220 3.77407675 -0.0010231 -0.0061406
240 3.7536197 -0.0010226 -0.0061371
260 3.7331739 -0.001022 -0.0061337
280 3.71273881 -0.0010215 -0.0061305
300 3.6923139 -0.001021 -0.0061275
320 3.67189863 -0.0010205 -0.0061246
ai
340 3.65149246 -0.0010201 -0.0061219
360 3.63109486 -0.0010197 -0.0061193
380 3.6107053 -0.0010193 -0.0061169
400 3.59032322 -0.0010189 -0.0061146
420 3.56994811 -0.0010186 -0.0061125
440 3.54957941 -0.0010183 -0.0061106
ai
460 3.52921659 -0.001018 -0.0061088
480 3.5088591 -0.0010178 -0.0061072
500 3.4885064 -0.0010175 -0.0061058
520 3.46815794 -0.0010173 -0.0061045
540 3.44781318 -0.0010172 -0.0061034
560 3.42747156 -0.001017 -0.0061025
580 3.40713254 -0.0010169 -0.0061017
400 600 800 1000 1200
600 3.38679555 -0.0010168 -0.0061011
620 3.36646005 -0.0010167 -0.0061007
640 3.34612546 -0.0010167 -0.0061004
660 3.32579124 -0.0010167 -0.0061003
680 3.3054568 -0.0010167 -0.0061003
700 3.28512158 -0.0010168 -0.0061006
720 3.264785 -0.0010169 -0.006101
740 3.24444649 -0.001017 -0.0061016
760 3.22410546 -0.0010171 -0.0061023
780 3.20376133 -0.0010173 -0.0061032
800 3.1834135 -0.0010175 -0.0061043
820 3.16306138 -0.0010177 -0.0061056
840 3.14270437 -0.001018 -0.0061071
860 3.12234185 -0.0010183 -0.0061088
880 3.10197323 -0.0010186 -0.0061106
900 3.08159787 -0.0010189 -0.0061126
920 3.06121515 -0.0010193 -0.0061148
940 3.04082445 -0.0010197 -0.0061172
960 3.02042513 -0.0010202 -0.0061198
980 3.00001653 -0.0010207 -0.0061226
1000 2.97959801 -0.0010212 -0.0061256
1020 2.95916891 -0.0010217 -0.0061287
1040 2.93872856 -0.0010223 -0.0061321
16 17 18 19 20 21 22 23
15 16 17 18 19 20 21 22
191.286851 192.866255 194.159365 195.218077 196.08488 196.794561 197.3756 197.851317
1.74262977 1.42674908 1.16812703 0.95638454 0.7830239 0.64108777 0.52487993 0.42973669
15.5 16.5 17.5 18.5 19.5 20.5 21.5 22.5
192.158166 193.579629 194.743428 195.69627 196.476392 197.115105 197.63804 198.066185
1.56836679 1.28407417 1.05131433 0.86074608 0.70472151 0.57697899 0.47239193 0.38676302
192.071035 193.508292 194.685022 195.64845 196.437241 197.083051 197.611796 198.044698
1.58579309 1.29834166 1.0629956 0.87030993 0.71255175 0.58338987 0.47764073 0.39106039
16 17 18 19 20 21 22 23
192.872644 194.164596 195.22236 196.088387 196.797432 197.377951 197.853241 198.242377
1.42547115 1.16708075 0.95552791 0.78232255 0.64051355 0.52440979 0.42935178 0.35152461
9.47642069 7.7586615 6.35227479 5.20081911 4.25808397 3.48623528 2.85429703 2.33690812
24 25 26 27 28 29 30 31
23 24 25 26 27 28 29 30
198.240801 198.559685 198.820766 199.034522 199.209531 199.352817 199.470129 199.566177
0.35183975 0.28806293 0.23584673 0.19309558 0.15809378 0.12943665 0.1059741 0.08676453
23.5 24.5 25.5 26.5 27.5 28.5 29.5 30.5
198.416721 198.703717 198.93869 199.13107 199.288578 199.417535 199.523117 199.60956
0.31665578 0.25925664 0.21226205 0.17378602 0.14228441 0.11649299 0.09537669 0.07808808
198.399129 198.689314 198.926897 199.121415 199.280673 199.411063 199.517818 199.605221
0.32017418 0.26213727 0.21462052 0.17571697 0.14386534 0.11778735 0.09643643 0.07895572
24 25 26 27 28 29 30 31
198.560975 198.821823 199.035387 199.210239 199.353396 199.470604 199.566566 199.645133
0.28780492 0.23563548 0.19292262 0.15795218 0.12932072 0.10587918 0.08668681 0.07097338
1.91330458 1.56648624 1.2825345 1.05005374 0.859714 0.70387651 0.57628716 0.47182551
Hoy lun 10 de nov 2014
Chapra, problema 25.1 Aplicando el mtodo de Euler

yi 1 yi f ( xi , yi )h
1.6

1.4
0x2 y (0) = 1
h= ? 1.2
n= 4
h=(xf-fi)/n = 0.5 1

0.8
yx -1.1y
2

0.6
xi yi f(xi,yi) f(xi,yi) h
0 1 -1.1 -0.55 0.4
0.5 0.45 -0.3825 -0.19125
1 0.25875 -0.025875 -0.0129375 0.2
1.5 0.2458125 0.28268438 0.14134219 0
2 0.38715469 1.12274859 0.5613743 0 0.5 1 1.5 2 2

Aplicando el mtodo de Euler modificado o mejorado (predice y corrige)


Chapra, problema 25.1
0x2 y (0) = 1
PVI h= ?
n= 4
h=(xf-fi)/n = 0.5
yi 1 yi h deriv _ prom yprom=[f(xi,yi)+ f(xi+1,yi+1)]/2

= yx2-1.1y yi+1 = =y x
i+1 i+1
2
-1.1yi+1
xi yi f(xi,yi) yi+f(xi,yi) h f(xi+1, yi+1) y prom ypromh
0 1 -1.1 0.45 -0.3825 -0.74125 -0.370625
0.5 0.629375 -0.5349688 0.36189063 -0.0361891 -0.2855789 -0.1427895
1 0.48658555 -0.0486586 0.46225627 0.53159471 0.24146808 0.12073404
1.5 0.60731959 0.69841752 0.95652835 2.77393221 1.73617487 0.86808743
2 1.47540702 4.27868035 3.6147472 18.6159481 11.4473142 5.7236571
yi
Ymejorado

1 1.5 2 2.5
mi 18 mayo 2016
E.D.O.
* es comn usarlas en la solucin de problemas de reactores, cintica qumica,
.. simulacin de procesos. f(x), f(x,y), f(x,y1,y2,y3)
Algunas consideraciones para el tamao de paso conc, temp, P,
xixxf h (unidades) En caso que el valor de yi+1 se dispare x (distancia, temp, tiempo..)
0-1 0.05 o 0.1 disminuir el tamao de paso, h, desde
0 - 10 0.5 o 1 0.1 hasta 1E-6
0 - 100 5 o 10 si t (s) = 3 en algunas reacciones qumicas
1 - 1000 50 o 100 h= 0.1 s 0.5 s ... 0.001 s

Pueden usar este criterio en caso que no tuviesen esta informacin


calculando dos pasos o incrementos en x, ver el resultado de yi+1 para
decidir el tamao de paso adecuado y visualizar el comportamiento de EDO

Tambin hacemos uso de una paquetera matemtica, Scilab, para evaluar la EDO
Ejemplo 25.5 Chapra, paso a paso:
Use el m. de Heun para integrar y=4e 0.8x-0.5y desde x=0 hasta x=4 con 1 tamao
de paso de 1. La condicin inicial en x=0 es y=2.

Aplicando el Mtodo de Euler, yi+1=yi + f(xi,yi) h

dy
Y' = DY f ( x, y ) 4e0.8 x 0.5 y
dx
te pueden dar este intervalo
xi=0 hasta xn=4 h=1 x0=0 opcional=[0x4]
PVI h= 1 0x4 h=1 h=1
yi=2 y=2 f(x0)=2, f(4)=? o f(x4)=? f(0)=2, f(4)=?

h= 1 =4*EXP(0.8*B34)-0.5*C34
f(xi,yi) =D34*B$31
yi
60
xi yi y=4e0.8x-0.5y f(xi,yi) h
50
0 2 3 3
1 5 6.402163714 6.40216371 40
2 11.4021637 14.111047841 14.1110478 30
3 25.5132116 31.336099745 31.3360997
20
4 56.8493113 69.705465139 69.7054651
10

0
0 0.5 1 1.5 2 2.5 3 3.
x), f(x,y), f(x,y1,y2,y3)
onc, temp, P,
(distancia, temp, tiempo..)

este intervalo
pcional=[0x4]

yi

1 1.5 2 2.5 3 3.5 4 4.5


Lun 7 de nov 16
EDO Ver referencias bibliogrficas y otras fechas en este libro de Excel
Mtodo de Euler simple o mtodo de la lnea tangente,
mtodo de primera diferencia finita dividida hacia adelante
y' + y = 1 y'(x) + y(x) = 1 d y(x) + y(x) = 1 d y(x) = f(x,y)
dx dx
y' = -y +1 f(x,y) =1 - y

PVI y (0 ) = 0 x= 0 h= 0.1
y (2) = ? xf = 2

http://rabfis15.uco.es/LaboratorioVirtual/Tutorial/t16.htm
Mtodo de Heun
La mejora del mtodo de Heun consiste en la aproximacin a la pendiente mediante
la aplicacin de dos derivadas del intervalo, una en el punto inicial y otra en punto final.
La aproximacin mejorada de la pendiente ser el promedio de las dos derivadas.
Recordando el mtodo de Euler, la pendiente al principio del intervalo es

f(x,y) = 1 - y
PVI = 0x1, y=0, n=4, h=(xf-xi)/n
n= 4
h 0.25

xi yi f(xi,yi) = y'i
0 0 1
0.25 0.21875 0.78125
0.5 0.38964844 0.61035156
0.75 0.52316284 0.47683716
1 0.62747097 0.37252903

Mtodo mejorado del polgono (Euler modificado)

El mtodo mejorado del polgono emplea el mtodo de Euler para predecir un valor de
y en el punto medio del intervalo.
f(x,y) = 1 - y
PVI = 0x1, y=0, n=4, h=(xf-xi)/n
n= 4
h 0.25

xi yi f(xi,yi) yi+1/2 =
0 0 1 0.125
0.25 0.21875 0.78125 0.31640625
0.5 0.38964844 0.61035156 0.46594238
0.75 0.52316284 0.47683716 0.58276749
1 0.62747097 0.37252903 0.6740371

Ejemplo 25.5 Chapra, paso a paso:


xi=0 hasta xn=4
dy
DY f ( x, y ) 4e0.8 x 0.5 y PVI h= 1
dx yi=2

Mtodo mejorado del polgono (Euler modificado)


h= 1
=4*EXP(0.8*A65)-0.5*B65
=A66+0.5 Usando matlab, ode45
xi yi f(xi,yi) x i+1/2
yi+1/2 = y'i+1/2 >> f=inline('4*exp(0.8*x)-0.5*y')
0 2 3 0.5 3.5 4.21729879 >> [x,y]=ode45(f,[0,1,2,3,4],2)
1 6.21729879 5.79351432 1.5 9.11405595 8.72343972
2 14.9407385 12.3417604 2.5 21.1116187 19.000415 x=
3 33.9411535 27.1221288 3.5 47.5022179 42.0274781
4 75.9686317 60.145805 4.5 106.041534 93.3721707

y=

Ejemplo de mtodo de Runge-Kutta de 4to orden k1=f(x0,y0)


Nieves, 2a edicin, Ejercicios 7.1 k2=f(x0+h/2, y0+hk1/2)
k3=f(x0+h/2, y0+hk2/2)
k4=f(x0+h, y0+hk3)
_(+1)=_+(_1+2_2+2_3+_4 )
/6
h (s) = 30
-0.0026653*raiz(2ga)
-0.0026653*raiz(2ga) k2=f(x0+h/2, y0+hk1/2)k3=f(x0+h/2, y0+hk2/2)
ti (s) ai (m) k1=f(x0,y0) x0+h/2 y0+hk1/2 k2 y0+hk2/2 k3
0 3 -0.0204483 15 2.69327619 -0.0193747 2.70937879 -0.0194326
30 2.41791435 -0.0183576 45 2.14255025 -0.0172807 2.15870398 -0.0173457
60 1.89854901 -0.016267 75 1.65454455 -0.0151857 1.6707635 -0.0152599
90 1.44190441 -0.0141763 105 1.22925945 -0.0130893 1.24556448 -0.0131759
120 1.04798137 -0.0120857 135 0.86669563 -0.0109908 0.88311953 -0.0110944
150 0.71678176 -0.0099951 165 0.5668546 -0.0088886 0.58345335 -0.0090178
180 0.44831034 -0.0079047 195 0.32973996 -0.0067792 0.34662166 -0.0069506

usando matlab, edo45, use este formato con @(x,y), aunque la funcin diferencial contenga una de ellas
>> fun = @(x,y) -0.0026653*sqrt(2*9.81*y)
fun = usando los programas hecho en el
@(x,y)-0.0026653*sqrt(2*9.81*y) copiado para comparar clase1_ejemplosEulerRungek4to.x
>> [x,y]=ode45(fun,[0:30:180],3) x= y= Metodo de Runge-Kutta_4
x= 0 3 xi=
0 30 2.4179 xf=
30 60 1.8985 h=
60 90 1.4419 xi
90 120 1.048 0
120 150 0.7168 30
150 180 0.4483 60
180 90
120
y= 150
3 180
2.4179 210
1.8985
1.4419
1.048
0.7168
0.4483
=G26+H26*$G$23
=1-I26

y0i+1 y'i+1 yprom'i+1


0.25 0.75 0.875
0.4140625 0.5859375 0.68359375
0.54223633 0.45776367 0.53405762
0.64237213 0.35762787 0.41723251
0.72060323 0.27939677 0.3259629
y'i+1/2
0.875
0.68359375
0.53405762
0.41723251
0.3259629

sando matlab, ode45


> f=inline('4*exp(0.8*x)-0.5*y') 200 mbit
> [x,y]=ode45(f,[0,1,2,3,4],2) 25 bit
0.02441406 byte
0 MBps Mbps
1
2
3
4

2
6.1946
14.8439
33.6772
75.339

2_3+_4 )
=f(x0+h/2, y0+hk2/2) k4=f(x0+h, y0+hk3)
3
ai (m)
x0+h, y0+hk3 k4 k1+2(k2+k3)+k4
3.5
30 2.4170226 -0.0183542 -0.1164171
60 1.89754297 -0.0162627
3 -0.1038731
90 1.44075053 -0.0141707
2.5 -0.0913289
120 1.04662885 -0.0120779 -0.0787846
2 ai (m)
150 0.71514821 -0.0099837 -0.0662399
180 0.44624896 -0.0078865
1.5 -0.0536943
210 0.23979179 -0.0057811
1 -0.0411456

0.5

ontenga una de ellas 0


0 20 40 60 80 100 120 140 160 180 200
sando los programas hecho en el libro
lase1_ejemplosEulerRungek4to.xlsm
Metodo de Runge-Kutta_4
0
180
30
yi
3
2.41791435
1.89854901
1.44190441
1.04798137
0.71678176
0.44831034
0.24258259
ai (m)

200
k1,1=f(x0,y0) k1,2=f(x0,y0,z0)
k2,1=f(x0+h/2, y0+hk1,1/2) k2,2=f(x0+h/2, y0+hk1,2/2, z0+k1,2/2) =
k3,1=(x0+h/2, y0+hk2,1/2) k3,2=(x0+h/2, y0+hk2,2/2, z0+hk2,2/2)
k4,1=(x0+h, y0+hk3,1) k4,2=(x0+h, y0+hk3,2, z0+hk2,2)
_(+1)=_+1/6 (_11+2(_21+_31 )
+_41 )
_(+1)=_+1/6 (_21+2(_22+_32 )+_42 )
h= 0.2
-2y+4e^-x
-(yz^2)/3
xi yi zi k1,1 k1,2 x0+h/2 y0+k(1,1)h/2 z0+k(1,2)h/2
0 2 4 0 -10.666667 0.1 2 2.93333333
0.2 1.934213 2.61931934 -0.593503 -4.423438 0.3 1.8748627 2.17697555
0.4 1.78254186 1.97634304 -0.8838035 -2.320829 0.5 1.69416151 1.74426014
0.6 1.59279269 1.61651105 -0.9903388 -1.3873798 0.7 1.49375881 1.47777308
0.8 1.39348018 1.39244814 -0.9896445 -0.9006117 0.9 1.29451573 1.30238697
1 1.20082676 1.2428988 -0.9301358 -0.6183447 1.1 1.10781318 1.18106433

-2y+4e^-x
4.5
>> fun = @(x,y) -0.0026653*sqrt(2*9.81*y) -(yz^2)/3
fun = 4
@(x,y)-0.0026653*sqrt(2*9.81*y)
>> [x,y]=ode45(fun,[0:30:180],3) 3.5

3
>> fun = @(x,y) -2*y+4*e.^-x >> fun = @(x,y,z) -y*z.^2/3
>> [x,y]=ode45(fun,[0:0.2:1],2) >> [x,y,z]=ode45(fun,[0:0.2:1],4) 2.5

1.5

0.5

0
0 0.2 0.4 0.6

Nieves, 2da edicin, Ejercicios 7.7


usando las dos edo, iniciales

h= 1
f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2) i=1 i=2
ti C1 C2 k1,1 k1,2 ti+h/2 Ci0+k1,1h/2 Ci0+k1,2h/2
0 30 30 6 0 0.5 33 30
1 35.18325 30.74025 4.445025 1.3329 1.5 37.4057625 31.4067
2 39.023196 32.4401139 3.29304121 1.97492461 2.5 40.6697166 33.4275763
3 41.8679719 34.5524809 2.43960842 2.19464731 3.5 43.0877762 35.6498046
4 43.9754887 36.7493685 1.8073534 2.16783604 4.5 44.8791654 37.8332866
5 45.5368161 38.8450901 1.33895517 2.00751779 5.5 46.2062937 39.848849
6 46.693506 40.7445281 0.9919482 1.78469335 6.5 47.1894801 41.6368748
7 47.5504252 42.4086617 0.73487243 1.54252905 7.5 47.9178615 43.1799263
8 48.1852632 43.8318789 0.54442105 1.30601528 8.5 48.4574737 44.4848865
9 48.6555749 45.0272808 0.40332753 1.08848823 9.5 48.8572387 45.5715249
10 49.0039995 46.0173591 0.29880016 0.89599211 10.5 49.1533995 46.4653552

Tarea repetir el ejercicio anterior usando las 3 ecuaciones diferenciales

mi16 nov 2016


usando matlab
>>fun1 = @(t,C) [ 15-0.3*C(1) ; 0.3*(C(1)-C(2) );0.3*(C(2)-C(3))];
>> [t,C]=ode45(fun1,[0:1:10],[ 30 ;30;30 ])
t= para graficar (opcion 1)
0 ode45(fun1,[0:1:10],[ 30 ;30;30 ])
1
2
3
4
5
6
7
8
9
10

C= C1 C2
30.0000 30.0000 30.0000 30 30
35.1836 30.7388 30.0719 35.18325 30.74025
39.0238 32.4381 30.4622 39.02320 32.44011
41.8686 34.5504 31.2571 41.86797 34.55248
43.9761 36.7475 32.4102 43.97549 36.74937
45.5374 38.8435 33.8230 45.53682 38.84509
46.6940 40.7433 35.3876 46.69351 40.74453
47.5509 42.4077 37.0074 47.55043 42.40866
48.1856 43.8312 38.6058 48.18526 43.83188
48.6559 45.0268 40.1275 48.65557 45.02728
49.0043 46.0170 41.5362 49.00400 46.01736

Nieves, 2da edicin, Ejercicios 7.7


usando las tres edo
h= 1 f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2)
f(t,C2,C3)=0.3(C2-C3)
ti C1 C2 C3 k1,1 k1,2 k1,3 ti+h/2
0 30 30 30 6 0 0 0.5
1 35.18325 30.74025 30.06975 4.445025 1.3329 0.20115 1.5
2 39.023196 32.4401139 30.4596384 3.29304121 1.97492461 0.59414266 2.5
3 41.8679719 34.5524809 31.2548413 2.43960842 2.19464731 0.98929187 3.5
4 43.9754887 36.7493685 32.4085909 1.8073534 2.16783604 1.30223329 4.5
5 45.5368161 38.8450901 33.8220249 1.33895517 2.00751779 1.50691955 5.5
6 46.693506 40.7445281 35.3870579 0.9919482 1.78469335 1.60724106 6.5
7 47.5504252 42.4086617 37.0072312 0.73487243 1.54252905 1.62042914 7.5
8 48.1852632 43.8318789 38.6059319 0.54442105 1.30601528 1.5677841 8.5
9 48.6555749 45.0272808 40.1277599 0.40332753 1.08848823 1.46985627 9.5
10 49.0039995 46.0173591 41.5365129 0.29880016 0.89599211 1.34425386 10.5

error=|v1-v2|
C1 C2 C3 c1 c2 c3 error c1 error c2
30 30 30 30 30 30 0 0
35.18325 30.74025 30.06975 35.1836 30.7388 30.0719 0.00035 0.00145
39.023196 32.4401139 30.4596384 39.0238 32.4381 30.4622 0.00060403 0.00201395
41.8679719 34.5524809 31.2548413 41.8686 34.5504 31.2571 0.00062805 0.0020809
43.9754887 36.7493685 32.4085909 43.9761 36.7475 32.4102 0.00061133 0.00186854
45.5368161 38.8450901 33.8220249 45.5374 38.8435 33.823 0.00058392 0.00159012
46.693506 40.7445281 35.3870579 46.694 40.7433 35.3876 0.00049401 0.00122815
47.5504252 42.4086617 37.0072312 47.5509 42.4077 37.0074 0.00047476 0.00096173
48.1852632 43.8318789 38.6059319 48.1856 43.8312 38.6058 0.00033684 0.0006789
48.6555749 45.0272808 40.1277599 48.6559 45.0268 40.1275 0.0003251 0.00048079
49.0039995 46.0173591 41.5365129 49.0043 46.017 41.5362 0.00030053 0.0003591
y0+hk1,2/2, z0+k1,2/2) =
0+hk2,2/2, z0+hk2,2/2)
+hk3,2, z0+hk2,2)

31 )

+_42 )

-2y+4e^-x -2y+4e^-x
-(yz^2)/3 -y(z^2)/3
k2,1 k2,2 y0+k2,1h/2 z0+k2,2h/2 k3,1 k3,2 x0+h y0+hk3,1
-0.3806503 -5.7362963 1.96193497 3.42637037 -0.3045203 -7.6777146 0.2 1.93909595
-0.7864525 -2.9617972 1.85556775 2.32313963 -0.7478626 -3.3381526 0.4 1.78464048
-0.9622004 -1.7181302 1.68632183 1.80453002 -0.946521 -1.830406 0.6 1.59323766
-1.0011764 -1.0873634 1.49267505 1.50777471 -0.9990089 -1.1311415 0.8 1.39299092
-0.9627528 -0.7319243 1.2972049 1.31925572 -0.9681312 -0.7525672 1 1.19985395
-0.884142 -0.515101 1.11241256 1.1913887 -0.8933408 -0.5263221 1.2 1.0221586

yi
zi

0.2 0.4 0.6 0.8 1 1.2


f(t,C1)=15-0.3C1 f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2) f(t,C1,C2)=0.3(C1-C2)
k2,1 k2,2 C1,0+k2,1h/2C2,0+k2,2h/2k3,1 k3,2 ti+h C1,0+k3,1h
5.1 0.9 32.55 30.45 5.235 0.63 1 35.235
3.77827125 1.79971875 37.0723856 31.6401094 3.87828431 1.62968288 2 39.0615343
2.79908503 2.1726421 40.4227385 33.526435 2.87317845 2.06889105 3 41.8963744
2.07366715 2.23139148 42.9048055 35.6681766 2.12855834 2.17098866 4 43.9965303
1.53625039 2.11376364 44.7436139 37.8062504 1.57691584 2.08120905 5 45.5524045
1.1381119 1.9072334 46.105872 39.7987068 1.16823839 1.89214956 6 46.7050545
0.84315597 1.66578158 47.115084 41.5774189 0.86547481 1.66129951 7 47.5589808
0.62464156 1.42138056 47.862746 43.119352 0.64117619 1.42301821 8 48.1916014
0.46275789 1.19177614 48.4166421 44.427767 0.47500737 1.19666254 9 48.6602705
0.3428284 0.98571413 48.8269891 45.5201379 0.35190327 0.99205537 10 49.0074782
0.25398014 0.80641332 49.1309895 46.4205658 0.26070314 0.81312713 11 49.2647026

50
48
46
44
42
40 C1
C2
38
36
34
32
30
0 2 4 6 8 10 12

50
48
46
44
42
C1
40
C2
38 C3
36
34
32
30
0 2 4 6 8 10 12
34
32
30
0 2 4 6 8 10 12

f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2)
i=1 i=2 i=3 f(t,C2,C3)=0.3(C2-C3)
Ci0+k1,1h/2 Ci0+k1,2h/2 Ci0+k1,2h/2 k2,1 k2,2 k2,3 C1,0+k2,1h/2C2,0+k2,2h/2
33 30 30 5.1 0.9 0 32.55 30.45
37.4057625 31.4067 30.170325 3.77827125 1.79971875 0.3709125 37.0723856 31.6401094
40.6697166 33.4275763 30.7567097 2.79908503 2.1726421 0.80125995 40.4227385 33.526435
43.0877762 35.6498046 31.7494873 2.07366715 2.23139148 1.17009519 42.9048055 35.6681766
44.8791654 37.8332866 33.0597075 1.53625039 2.11376364 1.4320737 44.7436139 37.8062504
46.2062937 39.848849 34.5754847 1.1381119 1.9072334 1.58200929 46.105872 39.7987068
47.1894801 41.6368748 36.1906785 0.84315597 1.66578158 1.63385891 47.115084 41.5774189
47.9178615 43.1799263 37.8174458 0.62464156 1.42138056 1.60874413 47.862746 43.119352
48.4574737 44.4848865 39.3898239 0.46275789 1.19177614 1.52851878 48.4166421 44.427767
48.8572387 45.5715249 40.862688 0.3428284 0.98571413 1.41265106 48.8269891 45.5201379
49.1533995 46.4653552 42.2086398 0.25398014 0.80641332 1.27701459 49.1309895 46.4205658

error c3
0
0.00215
0.00256159
0.00225867
0.0016091
0.00097506
0.00054207
0.00016875
0.00013189
0.00025991
0.00031291
-2y+4e^-x
-y(z^2)/3 k1,1+2(k2,1+k3,1)+k4,1
z0+hk3,2 k4,1 k4,2 k1,2+2(k2,2+k3,2)+k4,2
2.46445708 -0.6032689 -3.9257312 -1.9736101 -41.42042
1.95168882 -0.8880008 -2.2659516 -4.550134 -19.289289
1.61026184 -0.9912288 -1.3770582 -5.6924751 -10.79496
1.39028276 -0.988666 -0.8974976 -5.9793754 -6.7218872
1.2419347 -0.9281901 -0.6168856 -5.7796026 -4.4864804
1.13763438 -0.8395404 -0.4409633 -5.3246417 -3.1421541
f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2)
C2,0+k3,2h k4,1 k4,2 k1,1+2(k2,1+k1,2+2(k2,2+k2,3)+k4,2
30.63 4.4295 1.3815 31.0995 4.4415
32.3699329 3.28153971 2.00748043 23.0396758 10.1991837
34.509005 2.43108767 2.21621083 17.0686558 12.6742017
36.7234696 1.80104091 2.18191822 12.6451003 13.1813258
38.8305776 1.33427865 2.01654808 9.36796451 12.5743295
40.7372397 0.98848366 1.79034444 6.94013941 11.3966281
42.4058277 0.73230576 1.54594594 5.14151553 9.98480148
43.8316799 0.54251957 1.30797645 3.80902751 8.53930304
45.0285414 0.40191884 1.08951873 2.82187042 7.17241138
46.0193362 0.29775655 0.8964426 2.09054743 5.94046983
46.8304862 0.22058922 0.73026491 1.54875593 4.86533793
f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2)
f(t,C2,C3)=0.3(C2-C3)
C3,0+k2,3h/2k3,1 k3,2 k3,3 ti+h C1,0+k3,1h C2,0+k3,2h C3,0+k3,3h
30 5.235 0.63 0.135 1 35.235 30.63 30.135
30.2552063 3.87828431 1.62968288 0.41547094 2 39.0615343 32.3699329 30.4852209
30.8602684 2.87317845 2.06889105 0.79984998 3 41.8963744 34.509005 31.2594884
31.8398889 2.12855834 2.17098866 1.14848632 4 43.9965303 36.7234696 32.4033276
33.1246278 1.57691584 2.08120905 1.40448678 5 45.5524045 38.8305776 33.8130777
34.6130296 1.16823839 1.89214956 1.55570317 6 46.7050545 40.7372397 35.3777281
36.2039874 0.86547481 1.66129951 1.61202946 7 47.5589808 42.4058277 36.9990874
37.8116033 0.64117619 1.42301821 1.59232461 8 48.1916014 43.8316799 38.5995559
39.3701913 0.47500737 1.19666254 1.51727271 9 48.6602705 45.0285414 40.1232046
40.8340854 0.35190327 0.99205537 1.40581573 10 49.0074782 46.0193362 41.5335756
42.1750202 0.26070314 0.81312713 1.27366367 11 49.2647026 46.8304862 42.8101766
f(t,C1)=15-0.3C1
f(t,C1,C2)=0.3(C1-C2) k1,1+2(k2,1+k3,1)+k4,1
f(t,C2,C3)=0.3(C2-C3) k1,2+2(k2,2+k2,3)+k4,2
k4,1 k4,2 k4,3 k1,3+2(k2,3+k3,3)+k4,3
4.4295 1.3815 0.1485 31.0995 4.4415 0.4185
3.28153971 2.00748043 0.56541358 23.0396758 10.1991837 2.33933046
2.43108767 2.21621083 0.97485498 17.0686558 12.6742017 4.77121751
1.80104091 2.18191822 1.29604258 12.6451003 13.1813258 6.92249746
1.33427865 2.01654808 1.50524997 9.36796451 12.5743295 8.48060423
0.98848366 1.79034444 1.60785347 6.94013941 11.3966281 9.39019794
0.73230576 1.54594594 1.62202208 5.14151553 9.98480148 9.72103989
0.54251957 1.30797645 1.56963722 3.80902751 8.53930304 9.59220384
0.40191884 1.08951873 1.47160105 2.82187042 7.17241138 9.13096813
0.29775655 0.8964426 1.34572816 2.09054743 5.94046983 8.452518
0.22058922 0.73026491 1.2060929 1.54875593 4.86533793 7.65170328

Potrebbero piacerti anche