Diferencia entre revisiones de «Reacciones con autocatálisis, Grupo C26»
| Línea 68: | Línea 68: | ||
'''3.1 METODO DE EULER''' | '''3.1 METODO DE EULER''' | ||
| + | {{matlab|codigo= | ||
| + | %Método de Euler | ||
| + | %Datos iniciales | ||
| + | t0=0; | ||
| + | y0=0.01; | ||
| + | h=0.1; | ||
| + | t0=0; | ||
| + | tN=10; | ||
| + | |||
| + | %Cálculo de subintervalos equidistantes | ||
| + | N=(tN-t0)/h; | ||
| + | t=t0:h:tN; | ||
| + | |||
| + | %vector solución: | ||
| + | y=zeros(1,N+1); | ||
| + | y(1)=y0; | ||
| + | |||
| + | %aplicamos el metodo de Euler | ||
| + | for i=1:N; | ||
| + | y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2); | ||
| + | end; | ||
| + | %Tabla de Resultados | ||
| + | [t',y']; | ||
| + | x=1.01-y; | ||
| + | hold on ; | ||
| + | plot(t,y,'r') | ||
| + | plot(t,x,'b') | ||
| + | hold off; | ||
| + | legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best'); | ||
| + | xlabel('Tiempo (s)') | ||
| + | ylabel('Concentración (mol/l)') | ||
| + | grid on}} | ||
[[Categoría:Ecuaciones Diferenciales]] | [[Categoría:Ecuaciones Diferenciales]] | ||
[[Categoría:Trabajos 2014-15]] | [[Categoría:Trabajos 2014-15]] | ||
{{ Beta }} | {{ Beta }} | ||
Revisión del 17:28 6 mar 2015
1 INTRODUCCION
Este trabajo estudia las concentraciones de reactivos y productos a lo largo del tiempo en una reaccíon química bimolecular irreversible, con un volumen y una temperatura constantes y con la particularidad de que uno de los componentes (B) hace de efecto catalítico y actuará tanto de reactivo como de producto,es decir, partiendo de un contenido de A y B iniciales, reaccionaran para producir B que a su vez participara de nuevo como reactivo, por lo que es de la siguiente forma:
A +B →2B
Supondremos que en nuestra reacción se satisface la Ley de Accion de masas, que establece que la velocidad de reaccion es proporcional al producto de la concentracion de los reactivos, y la ley de de conservacion de masa ,por la que definimos que la masa de reactivos mas productos es constante en el tiempo Para la resolución del problema se usan los metodos de cálculo de Euler, del Trapecio , de Runge-Kutta
2 INTERPRETACION DEL PROBLEMA Y EXPRESION NUMÉRICA
comenzamos nombrando las variables y expresando el problema numéricamente:
contenido de A= x(t) [mol/l]
contenido de B= y(t) [mol/l]
Ley de Acción de Masas: por definición es:
y'(t)=K*x(t)*y(t) (I)
y'(t)= velocidad de creación del producto [mol/(l*s)]
k = constante de proporcionalidad mol/s
Ley de conservación de masas
masa reactivos + masa productos = cte
x(t)+y(t) =(C) (II)
derivamos esta expresión y se obtiene:
x'(t)+y'(t)=0 x'(t)=-y'(t) (III)
La velocidad de desaparición de los reactivos es igual a la de aparicion de los productos(que es un concepto muy intuitivo) Por lo tanto la formula (III) se explica a partir derivar respecto al tiempo de La ley de conservación de masas. ahora sustitumos el contenido de A , x(t) de (II) en (I)
y'(t)=k*y(t)*(C-y(t)) → y'(t)=k*C*y(t)-K*(y(t)) (IV)
además conocemos las concentraciones iniciales(en t=0) y el valor de la k. A(0)=1mol/l B(0)=0,01mol/l k=mol/s
por lo que sustituyendo estos valores en (II) para deducir la (C) y en (IV) planteamos el problema de valor inicial
{y'(t)= 1,01*y(t)-y²(t)
{ y(0)=0,01 (t,y) ∈ [0,10]x R'
UNICIDAD DE SOLUCIÓN
Aplicamos a continuación el Teorema de Existencia y Unicidad:
Sea f(t,y)=y′(t)⇒f(t,y)=1.01y(t)−y(t), y δf(t,y)/δx=1.01−2y(t).
y B[(t0,y0),r], r>0,en(t0,y0)=(0,0.01)
f(t,y) es continua en B∩D⇒∃ y(t)/y′(t)=1,01y(t)−y²(t)
y su derivada respecto de y →f'(t,y) es continua en la intersección con el dominio
Por lo que hemos demostrado que sí tiene solución y ésta es única.
3 RESOLUCION NUMÉRICA DEL PROBLEMA DE VALOR INICIAL
ahora procedemos a resolver el P.V.I dado anteriormente por loe métodos numéricos de Euler, del Trapecio y de Runge-kutta.
3.1 METODO DE EULER
%Método de Euler
%Datos iniciales
t0=0;
y0=0.01;
h=0.1;
t0=0;
tN=10;
%Cálculo de subintervalos equidistantes
N=(tN-t0)/h;
t=t0:h:tN;
%vector solución:
y=zeros(1,N+1);
y(1)=y0;
%aplicamos el metodo de Euler
for i=1:N;
y(i+1)=y(i)+h*(1.01*y(i)-(y(i)).^2);
end;
%Tabla de Resultados
[t',y'];
x=1.01-y;
hold on ;
plot(t,y,'r')
plot(t,x,'b')
hold off;
legend('Sustancia B: y(t)','Sustancia A: x(t)','Location','best');
xlabel('Tiempo (s)')
ylabel('Concentración (mol/l)')
grid on| |