Documente Academic
Documente Profesional
Documente Cultură
especies
i
j ij i
H O C j A a n
#
1
& ,
4. aplicacin del mtodo de multiplicadores de Jun Tucker para el calculo del mnimo
al formular la funcin lagrangeana se tiene
( )
+
especies
i
j ij i
elementos
j
A a n j ni G j ni L
#
1
#
1
) ( ) , (
ec.1
Aplicando las condiciones necesarias de Karush-Kuhn-Tucker se tiene
( )
ni
A a n j
ni
ni G
ni
j ni L
especies
i
j ij i
elementos
j
]
]
]
#
1
#
1
) ( ) , (
al calcular al derivada
ij
elementos
j
a j
ni
ni G
ni
j ni L
#
1
) ( ) , (
y considerando que se puede expresar la funcin en trminos de la funcin de Gibbs de
formacin para la especie qumica i y adems como se tiene un sistema a baja presin se
tiene un comportamiento de gases ideales, entonces
0 ln
) , (
#
1
#
1
+
,
`
.
|
+
ij
elementos
j
especies
i
o
i
a j
ni
ni
RT Gf
ni
j ni L
ec2
y para las derivadas con respecto a los multiplicadores de Lagrange
( )
j
A a n j
j
ni G
j
j ni L
especies
i
j ij i
elementos
j
]
]
]
#
1
#
1 ) ( ) , (
Se tiene
( ) 0
) , (
#
1
especies
i
j ij i
A a n
j
j ni L
ec3
por lo tanto se tendr que resolver un sistema de ocho ecuaciones ( conjunto ecuaciones 2 y
3) con ocho inc gnitas
5. solucin
La composicin en el equilibrio es
Comp CH4 H2O CO CO2 H2
n [mol] 0.8515 4.2967 7.5936 1.5548 29.0002
Los valores para los multiplicadores de Langrange son
C
=1576
O
=49807
H
= 396
el cdigo en MATLAB utilizado para la obtencin de la solucin fue el siguiente
% inicio del archivo equilibrio.m
clc; clear all; format compact;
global dGfio Ai aij T R
% declaracion de datos del problema
R=1.9782;% cal/ gmol K
T=1000;%K
dGfio=[4610 -46030 -47940 -94610 0];%cal/gmol energia de gibbs de formacion
% para CH4, H20, CO, CO2 & H2
Ai=[2 3 14];% atomos elemento de C, O & H en el sistema
%C O H
aij=[1 0 4; %CH4
0 1 2; %H2O
1 1 0; %CO
1 2 0; %CO2
0 0 2];%H2 # de atomos del elemento j en la especie quimica i
nio= [0.02 0.1 0.2 .03 10];% estimado inicial para el numero de mol de las especies i
Ljo= [1 1 1]*.01;% estimado inicial para los multiplicadores de lagrange
x0=[nio Ljo];
[x,fval,flag]=fsolve('balancemol',x0);
if flag<=0
fprintf('--- *** proponga otro estimado inicial ***---\n ')
break
else
%reasignacion de variables
fprintf('composicion molar ni \n')
ni=x(1:5)
fprintf('@ [i= CH4, H2O, CO, CO2, H2] \n\n')
fprintf('multiplicadores de lagrange Lj \n')
Lj=x(6:8)
fprintf('@ [j= C, O & H]\n')
end
% fin del archivo equilibrio.m
% inicio del archivo balancemol.m
function fun=balancemol(x)
global dGfio Ai aij T R
ni=x(1:5); Lj=x(6:8);
nt=sum(ni);
yi=ni/nt;
RT=R*T;
for j=1:3
suma=0;
for i=1:5
suma=suma+ni(i)*aij(i,j) -Ai(j);
end
fun(j)=suma;
end
for i=1:5
suma=0;
for j=1:3
suma=suma+Lj(j)*aij(i,j);
end
fun(i+3)=dGfio(i)/RT+log(yi(i))+suma/RT;
end
fun=fun';
% fin del archivo balancemol.m