Está en la página 1de 8

ECUACIONES DIFERENCIALES ORDINARIAS

SE hacen reaccionar isotérmicamente 260g de acetato de etilo (CH3COOC2H5) con 175g de


hidróxido de sodio (NAOH) en solución acuosa (ajustando el volumen total a 5 litros ) para dar
acetato de sodio (CH3COONA) y alcohol etílico (C2H5OH) de acuerdo con la siguiente ecuación
estequiometria

CH3COOC2H5+ NAOH CH3COONA+ C2H5OH

Si la constante de velocidad de reacción k está dado por

−2 L
K=1.44∗10
mol ×min
Determine la cantidad de acetato de sodio y alcohol etílico presentes 30 minutos después de
iniciada la reacción

SOLUCION:

dx
=k ×C A1 × C B1
dt
 C A: concentración de acetato de etilo
 C B: concentración de hidróxido de sodio

CH3COOC2H5 + NAOH CH3COONA + C2H5OH

270 g 175 g
Inicialmente:
PM CH 3 COOC 2 H 5 ×5 L PM NAOH × 5 L

Equilibrio: -x -x x x

270 g 175 g
Tiempo=t −x −x x x
PM CH 3 COOC 2 H 5 ×5 L PM NAOH × 5 L

Obtenemos:

dx
=1.44∗10−2 ×(0.59−x)( 0.875−x)
dt
X(0)=0

X(30)=?

MÉTODO DE EULER

%metodo de euler
clc
t0=0;
tf=30;
n=10;
h=(tf-t0)/n;
t1=t0+h;
t2=t1+h;
t3=t2+h;
t4=t3+h;
t5=t4+h;
t6=t5+h;
t7=t6+h;
t8=t7+h;
t9=t8+h;
t10=t9+h;
x0=0;
x1=x0+h*(1.44*10^-2*(0.59-x0)*(0.875-x0));
x2=x1+h*(1.44*10^-2*(0.59-x1)*(0.875-x1));
x3=x2+h*(1.44*10^-2*(0.59-x2)*(0.875-x2));
x4=x3+h*(1.44*10^-2*(0.59-x3)*(0.875-x3));
x5=x4+h*(1.44*10^-2*(0.59-x4)*(0.875-x4));
x6=x5+h*(1.44*10^-2*(0.59-x5)*(0.875-x5));
x7=x6+h*(1.44*10^-2*(0.59-x6)*(0.875-x6));
x8=x7+h*(1.44*10^-2*(0.59-x7)*(0.875-x7));
x9=x8+h*(1.44*10^-2*(0.59-x8)*(0.875-x8));
x10=x9+h*(1.44*10^-2*(0.59-x9)*(0.875-x9));
disp(' i ti xi ')
fprintf('%9.0f %12.5f %12.5f \n' ,0,t0,x0)
fprintf('%9.0f %12.5f %12.5f \n' ,1,t1,x1)
fprintf('%9.0f %12.5f %12.5f \n' ,2,t2,x2)
fprintf('%9.0f %12.5f %12.5f \n' ,3,t3,x3)
fprintf('%9.0f %12.5f %12.5f \n' ,4,t4,x4)
fprintf('%9.0f %12.5f %12.5f \n' ,5,t5,x5)
fprintf('%9.0f %12.5f %12.5f \n' ,6,t6,x6)
fprintf('%9.0f %12.5f %12.5f \n' ,7,t7,x7)
fprintf('%9.0f %12.5f %12.5f \n' ,8,t8,x8)
fprintf('%9.0f %12.5f %12.5f \n' ,9,t9,x9)
fprintf('%9.0f %12.5f %12.5f \n' ,10,t10,x10)

SALIDA:

>> i ti xi
0 0.00000 0.00000
1 3.00000 0.02230
2 6.00000 0.04321
3 9.00000 0.06286
4 12.00000 0.08136
5 15.00000 0.09880
6 18.00000 0.11527
7 21.00000 0.13085
8 24.00000 0.14561
9 27.00000 0.15961
10 30.00000 0.17291
>>
MÉTODO DE TAYLOR

%metodo de taylor
clc
t0=0;
tf=30;
n=10;
h=(tf-t0)/n;
t1=t0+h;
t2=t1+h;
t3=t2+h;
t4=t3+h;
t5=t4+h;
t6=t5+h;
t7=t6+h;
t8=t7+h;
t9=t8+h;
t10=t9+h;
x0=0;
df0=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x0)*(1.44*10^-2*(0.59-
x0)*(0.875-x0));
df1=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x1)*(1.44*10^-2*(0.59-
x1)*(0.875-x1));
df2=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x2)*(1.44*10^-2*(0.59-
x2)*(0.875-x2));
df3=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x3)*(1.44*10^-2*(0.59-
x3)*(0.875-x3));
df4=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x4)*(1.44*10^-2*(0.59-
x4)*(0.875-x4));
df5=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x5)*(1.44*10^-2*(0.59-
x5)*(0.875-x5));
df6=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x6)*(1.44*10^-2*(0.59-
x6)*(0.875-x6));
df7=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x7)*(1.44*10^-2*(0.59-
x7)*(0.875-x7));
df8=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x8)*(1.44*10^-2*(0.59-
x8)*(0.875-x8));
df9=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x9)*(1.44*10^-2*(0.59-
x9)*(0.875-x9));
df10=(-1.44*10^-2*(0.59+0.875)+2*1.44*10^-2*x10)*(1.44*10^-2*(0.59-
x10)*(0.875-x10));
x0=0;
x1=x0+h*(1.44*10^-2*(0.59-x0)*(0.875-x0))+h^2/2*df0;
x2=x1+h*(1.44*10^-2*(0.59-x1)*(0.875-x1))+h^2/2*df1;
x3=x2+h*(1.44*10^-2*(0.59-x2)*(0.875-x2))+h^2/2*df2;
x4=x3+h*(1.44*10^-2*(0.59-x3)*(0.875-x3))+h^2/2*df3;
x5=x4+h*(1.44*10^-2*(0.59-x4)*(0.875-x4))+h^2/2*df4;
x6=x5+h*(1.44*10^-2*(0.59-x5)*(0.875-x5))+h^2/2*df5;
x7=x6+h*(1.44*10^-2*(0.59-x6)*(0.875-x6))+h^2/2*df6;
x8=x7+h*(1.44*10^-2*(0.59-x7)*(0.875-x7))+h^2/2*df7;
x9=x8+h*(1.44*10^-2*(0.59-x8)*(0.875-x8))+h^2/2*df8;
x10=x9+h*(1.44*10^-2*(0.59-x9)*(0.875-x9))+h^2/2*df9;
disp(' i xi yi df')
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,0,t0,x0,df0)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,1,t1,x1,df1)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,2,t2,x2,df2)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,3,t3,x3,df3)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,4,t4,x4,df4)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,5,t5,x5,df5)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,6,t6,x6,df6)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,7,t7,x7,df7)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,8,t8,x8,df8)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,9,t9,x9,df9)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,10,t10,x10,df10)

SALIDA
i xi yi df
0 0.00000 0.00000 -0.00016
1 3.00000 0.02160 -0.00021
2 6.00000 0.04161 -0.00027
3 9.00000 0.06016 -0.00032
4 12.00000 0.07735 -0.00038
5 15.00000 0.09331 -0.00043
6 18.00000 0.10813 -0.00048
7 21.00000 0.12191 -0.00053
8 24.00000 0.13475 -0.00057
9 27.00000 0.14673 -0.00061
10 30.00000 0.15794 -0.00064
>>

MÉTODO DE EULER MODIFICADO


%metodo de euler modificado
clc
t0=0;
tf=30;
n=10;
h=(tf-t0)/n;
t1=t0+h;
t2=t1+h;
t3=t2+h;
t4=t3+h;
t5=t4+h;
t6=t5+h;
t7=t6+h;
t8=t7+h;
t9=t8+h;
t10=t9+h;

x0=0;
X1=x0+h*(1.44*10^-2*(0.59-x0)*(0.875-x0));
x1=x0+h/2*((1.44*10^-2*(0.59-x0)*(0.875-x0))+(1.44*10^-2*(0.59-
X1)*(0.875-X1)));
X2=x1+h*(1.44*10^-2*(0.59-x1)*(0.875-x1));
x2=x1+h/2*((1.44*10^-2*(0.59-x1)*(0.875-x1))+(1.44*10^-2*(0.59-
X2)*(0.875-X2)));
X3=x2+h*(1.44*10^-2*(0.59-x2)*(0.875-x2));
x3=x2+h/2*((1.44*10^-2*(0.59-x2)*(0.875-x2))+(1.44*10^-2*(0.59-
X3)*(0.875-X3)));
X4=x3+h*(1.44*10^-2*(0.59-x3)*(0.875-x3));
x4=x3+h/2*((1.44*10^-2*(0.59-x3)*(0.875-x3))+(1.44*10^-2*(0.59-
X4)*(0.875-X4)));
X5=x4+h*(1.44*10^-2*(0.59-x4)*(0.875-x4));
x5=x4+h/2*((1.44*10^-2*(0.59-x4)*(0.875-x4))+(1.44*10^-2*(0.59-
X5)*(0.875-X5)));
X6=x5+h*(1.44*10^-2*(0.59-x5)*(0.875-x5));
x6=x5+h/2*((1.44*10^-2*(0.59-x5)*(0.875-x5))+(1.44*10^-2*(0.59-
X6)*(0.875-X6)));
X7=x6+h*(1.44*10^-2*(0.59-x6)*(0.875-x6));
x7=x6+h/2*((1.44*10^-2*(0.59-x6)*(0.875-x6))+(1.44*10^-2*(0.59-
X7)*(0.875-X7)));
X8=x7+h*(1.44*10^-2*(0.59-x7)*(0.875-x7));
x8=x7+h/2*((1.44*10^-2*(0.59-x7)*(0.875-x7))+(1.44*10^-2*(0.59-
X8)*(0.875-X8)));
X9=x8+h*(1.44*10^-2*(0.59-x8)*(0.875-x8));
x9=x8+h/2*((1.44*10^-2*(0.59-x8)*(0.875-x8))+(1.44*10^-2*(0.59-
X9)*(0.875-X9)));
X10=x9+h*(1.44*10^-2*(0.59-x9)*(0.875-x9));
x0=0;
x1=x0+h/2*((1.44*10^-2*(0.59-x0)*(0.875-x0))+(1.44*10^-2*(0.59-
X1)*(0.875-X1)));
x2=x1+h/2*((1.44*10^-2*(0.59-x1)*(0.875-x1))+(1.44*10^-2*(0.59-
X2)*(0.875-X2)));
x3=x2+h/2*((1.44*10^-2*(0.59-x2)*(0.875-x2))+(1.44*10^-2*(0.59-
X3)*(0.875-X3)));
x4=x3+h/2*((1.44*10^-2*(0.59-x3)*(0.875-x3))+(1.44*10^-2*(0.59-
X4)*(0.875-X4)));
x5=x4+h/2*((1.44*10^-2*(0.59-x4)*(0.875-x4))+(1.44*10^-2*(0.59-
X5)*(0.875-X5)));
x6=x5+h/2*((1.44*10^-2*(0.59-x5)*(0.875-x5))+(1.44*10^-2*(0.59-
X6)*(0.875-X6)));
x7=x6+h/2*((1.44*10^-2*(0.59-x6)*(0.875-x6))+(1.44*10^-2*(0.59-
X7)*(0.875-X7)));
x8=x7+h/2*((1.44*10^-2*(0.59-x7)*(0.875-x7))+(1.44*10^-2*(0.59-
X8)*(0.875-X8)));
x9=x8+h/2*((1.44*10^-2*(0.59-x8)*(0.875-x8))+(1.44*10^-2*(0.59-
X9)*(0.875-X9)));
x10=x9+h/2*((1.44*10^-2*(0.59-x9)*(0.875-x9))+(1.44*10^-2*(0.59-
X10)*(0.875-X10)));
disp(' i ti xi Xi')
fprintf('%9.0f %12.5f %12.5f \n' ,0,t0,x0)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,1,t1,x1,X1)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,2,t2,x2,X2)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,3,t3,x3,X3)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,4,t4,x4,X4)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,5,t5,x5,X5)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,6,t6,x6,X6)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,7,t7,x7,X7)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,8,t8,x8,X8)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,9,t9,x9,X9)
fprintf('%9.0f %12.5f %12.5f %12.5f \n' ,10,t10,x10,X10)

SALIDA
i ti xi Xi
0 0.00000 0.00000
1 3.00000 0.02161 0.02230
2 6.00000 0.04193 0.04256
3 9.00000 0.06107 0.06165
4 12.00000 0.07914 0.07967
5 15.00000 0.09621 0.09670
6 18.00000 0.11238 0.11283
7 21.00000 0.12769 0.12811
8 24.00000 0.14223 0.14262
9 27.00000 0.15605 0.15641
10 30.00000 0.16920 0.16953
>>

MÉTODO DE RUNGE KUTTA


%metodo de runge kutta
clc
t0=0;
tf=30;
n=10;
h=(tf-t0)/n;
t1=t0+h;
t2=t1+h;
t3=t2+h;
t4=t3+h;
t5=t4+h;
t6=t5+h;
t7=t6+h;
t8=t7+h;
t9=t8+h;
t10=t9+h;

x0=0;
k1=1.44*10^-2*(0.59-x0)*(0.875-x0);
k2=1.44*10^-2*(0.59-(x0+h/2*k1))*(0.875-(x0+h/2*k1));
k3=1.44*10^-2*(0.59-(x0+h/2*k2))*(0.875-(x0+h/2*k2));
k4=1.44*10^-2*(0.59-(x0+h*k3))*(0.875-(x0+h*k3));
x1=x0+(h/6)*(k1+2*k2+2*k3+k4);
%2 iteracion
k21=1.44*10^-2*(0.59-x1)*(0.875-x1);
k22=1.44*10^-2*(0.59-(x1+h/2*k21))*(0.875-(x1+h/2*k21));
k23=1.44*10^-2*(0.59-(x1+h/2*k22))*(0.875-(x1+h/2*k22));
k24=1.44*10^-2*(0.59-(x1+h*k23))*(0.875-(x1+h*k23));
x2=x1+(h/6)*(k21+2*k22+2*k23+k24);
%3 iteracion
k31=1.44*10^-2*(0.59-x2)*(0.875-x2);
k32=1.44*10^-2*(0.59-(x2+h/2*k31))*(0.875-(x2+h/2*k31));
k33=1.44*10^-2*(0.59-(x2+h/2*k32))*(0.875-(x2+h/2*k32));
k34=1.44*10^-2*(0.59-(x2+h*k33))*(0.875-(x2+h*k33));
x3=x2+(h/6)*(k31+2*k32+2*k33+k34);
%4 iteracion
k41=1.44*10^-2*(0.59-x3)*(0.875-x3);
k42=1.44*10^-2*(0.59-(x3+h/2*k41))*(0.875-(x3+h/2*k41));
k43=1.44*10^-2*(0.59-(x3+h/2*k42))*(0.875-(x3+h/2*k42));
k44=1.44*10^-2*(0.59-(x3+h*k43))*(0.875-(x3+h*k43));
x4=x3+(h/6)*(k41+2*k42+2*k43+k44);
%5 iteracion
k51=1.44*10^-2*(0.59-x4)*(0.875-x4);
k52=1.44*10^-2*(0.59-(x4+h/2*k51))*(0.875-(x4+h/2*k51));
k53=1.44*10^-2*(0.59-(x4+h/2*k52))*(0.875-(x4+h/2*k52));
k54=1.44*10^-2*(0.59-(x4+h*k53))*(0.875-(x4+h*k53));
x5=x4+(h/6)*(k51+2*k52+2*k53+k54);
%6 iteracion
k61=1.44*10^-2*(0.59-x5)*(0.875-x5);
k62=1.44*10^-2*(0.59-(x5+h/2*k61))*(0.875-(x5+h/2*k61));
k63=1.44*10^-2*(0.59-(x5+h/2*k62))*(0.875-(x5+h/2*k62));
k64=1.44*10^-2*(0.59-(x5+h*k63))*(0.875-(x5+h*k63));
x6=x5+(h/6)*(k61+2*k62+2*k63+k64);
%7 iteracion
k71=1.44*10^-2*(0.59-x6)*(0.875-x6);
k72=1.44*10^-2*(0.59-(x6+h/2*k71))*(0.875-(x6+h/2*k71));
k73=1.44*10^-2*(0.59-(x6+h/2*k72))*(0.875-(x6+h/2*k72));
k74=1.44*10^-2*(0.59-(x6+h*k73))*(0.875-(x6+h*k73));
x7=x6+(h/6)*(k71+2*k72+2*k73+k74);
%8 iteracion
k81=1.44*10^-2*(0.59-x7)*(0.875-x7);
k82=1.44*10^-2*(0.59-(x7+h/2*k81))*(0.875-(x7+h/2*k81));
k83=1.44*10^-2*(0.59-(x7+h/2*k82))*(0.875-(x7+h/2*k82));
k84=1.44*10^-2*(0.59-(x7+h*k83))*(0.875-(x7+h*k83));
x8=x7+(h/6)*(k81+2*k82+2*k83+k84);
%9 iteracion
k91=1.44*10^-2*(0.59-x8)*(0.875-x8);
k92=1.44*10^-2*(0.59-(x8+h/2*k91))*(0.875-(x8+h/2*k91));
k93=1.44*10^-2*(0.59-(x8+h/2*k92))*(0.875-(x8+h/2*k92));
k94=1.44*10^-2*(0.59-(x8+h*k93))*(0.875-(x8+h*k93));
x9=x8+(h/6)*(k91+2*k92+2*k93+k94);
%10 iteracion
k101=1.44*10^-2*(0.59-x9*(0.875-x9));
k102=1.44*10^-2*(0.59-(x9+h/2*k101))*(0.875-(x9+h/2*k101));
k103=1.44*10^-2*(0.59-(x9+h/2*k102))*(0.875-(x9+h/2*k102));
k104=1.44*10^-2*(0.59-(x9+h*k103))*(0.875-(x9+h*k103));
x10=x9+(h/6)*(k101+2*k102+2*k103+k104);
disp(' i ti xi ')
fprintf('%9.0f %12.5f %12.5f \n' ,0,t0,x0)
fprintf('%9.0f %12.5f %12.5f \n' ,1,t1,x1)
fprintf('%9.0f %12.5f %12.5f \n' ,2,t2,x2)
fprintf('%9.0f %12.5f %12.5f \n' ,3,t3,x3)
fprintf('%9.0f %12.5f %12.5f \n' ,4,t4,x4)
fprintf('%9.0f %12.5f %12.5f \n' ,5,t5,x5)
fprintf('%9.0f %12.5f %12.5f \n' ,6,t6,x6)
fprintf('%9.0f %12.5f %12.5f \n' ,7,t7,x7)
fprintf('%9.0f %12.5f %12.5f \n' ,8,t8,x8)
fprintf('%9.0f %12.5f %12.5f \n' ,9,t9,x9)
fprintf('%9.0f %12.5f %12.5f \n' ,10,t10,x10)
SALIDA:
i ti xi
0 0.00000 0.00000
1 3.00000 0.02162
2 6.00000 0.04195
3 9.00000 0.06110
4 12.00000 0.07917
5 15.00000 0.09625
6 18.00000 0.11242
7 21.00000 0.12774
8 24.00000 0.14228
9 27.00000 0.15610
10 30.00000 0.17039
>>

También podría gustarte