> restart:#"m15_p56"

> read`../therm_eq.m`:read`../therm_chem.m`:with(therm_chem);with(therm_proc):

[Ateo, Mf, PCI, PCS, eqEQ, eqMIX, eq_fit, get_hgs_data, hgs_r25, nulist, seqEBE]

Se quiere estudiar la combustión de gas natural (supóngase metano puro) con un 80% de aire teórico. Se pide:
a) Aire teórico, poder calorífico superior y temperatura adiabática correspondientes al aire teórico.
b) Suponiendo que sólo aparece CO como inquemado, calcular la relación aire/combustible real, y el poder calorífico superior y temperatura adiabática correspondientes al aire realmente usado.
c) Sabiendo que, además de CO, aparece H2 como inquemado, calcular el poder calorífico superior y temperatura adiabática correspondientes al aire realmente usado.

Datos:

> su0:="Aire":su1:="CH4":dat:=[lambda=0.8];

[lambda = .8]

Eqs. const.:

> dat:=op(subs(g=g0,[Const])),op(dat),SI2,SI1:Adat:=get_gas_data(su0):

a) Aire teórico, poder calorífico superior y temperatura adiabática correspondientes al aire teórico.

> eqST:=CH4+2*O2=CO2+2*H2O;Ateo(su1);eq15_5;PCS_:=PCS(eqST);eq15_7_2;PCI_:=PCI(eqST);eqMIX_:=eqMIX(a*CH4+a*A[0]*(c21*O2+c79*N2)=[2,3,4,5]);sol1_:=subs(A[0]=rhs(Ateo(CH4)),dat,solve({eqBC,eqBH,eqBO,eqBN,eqNX},{a,x[O2],x[N2],x[CO2],x[H2O]})):evalf(%,2);eqTa_:=subs(sol1_,cpComp,dat,eqTa):evalf(%);

`+`(CH4, `*`(2, `*`(O2))) = `+`(CO2, `*`(2, `*`(H2O)))
A[0] = 9.52
PC = `+`(`-`(Sum(`*`(nu[i], `*`(h[i])), i = 1 .. C)))
`+`(`/`(`*`(0.891e6, `*`(J_)), `*`(mol_)))
Ta = `+`(T25, `/`(`*`(a, `*`(PCI)), `*`(Sum(`*`(x[Com[i]], `*`(c[p, i])), i = 1 .. CP))))
`+`(`/`(`*`(0.803e6, `*`(J_)), `*`(mol_)))
`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A[0], `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2))))))) = `+`(`*`(x[O2], `*`(O2)), `*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*`(H2O)))
{a = 0.95e-1, x[CO2] = 0.95e-1, x[H2O] = .19, x[N2] = .72, x[O2] = 0.}
Ta = `+`(`*`(0.229e4, `*`(K_)))

i.e. A0=9,5 moles de aire por mol de metano, PCS=890 kJ/mol de metano y Ta=2280 K

b) Suponiendo que sólo aparece CO como inquemado, calcular la relación aire/combustible real, y el poder calorífico superior y temperatura adiabática correspondientes al aire realmente usado.

> A=lambda*A[0];A_:=subs(dat,lambda*rhs(Ateo(su1)));eqMIX_:=eqMIX(a*CH4+a*A*(c21*O2+c79*N2)=[3,4,5,7]);sol1_:=subs(A=A_,dat,solve({eqBC,eqBH,eqBO,eqBN,eqNX},{a,x[CO],x[N2],x[CO2],x[H2O]})):evalf(%,2);eq15_5_;PCS_:=subs(sol1_,PCS(eqMIX_)/a);PCI_:=subs(sol1_,PCI(eqMIX_)/a);eqTa_:=subs(sol1_,cpComp,dat,eqTa):evalf(%);

A = `*`(lambda, `*`(A[0]))
7.62
`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2))))))) = `+`(`*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*`(H2O)), `*`(x[CO], `*`(CO)))
{a = .11, x[CO] = 0.89e-1, x[CO2] = 0.21e-1, x[H2O] = .22, x[N2] = .67}
PCS = `+`(`-`(`/`(`*`(Sum(`*`(x[i], `*`(h[std, i])), i = 1 .. C)), `*`(a))))
`+`(`/`(`*`(0.660e6, `*`(J_)), `*`(mol_)))
`+`(`/`(`*`(0.572e6, `*`(J_)), `*`(mol_)))
Ta = `+`(`*`(0.201e4, `*`(K_)))

i.e. A=7,6 moles de aire por mol de metano, PCS=660 kJ/mol de metano y Ta=2010 K.

c) Sabiendo que, además de CO, aparece H2 como inquemado, calcular el poder calorífico superior y temperatura adiabática correspondientes al aire realmente usado.

Conviene empezar suponiendo que la Ta varía poco.

> eqMIX_:=eqMIX(a*CH4+a*A*(c21*O2+c79*N2)=[3,4,5,7,8]);eqEQ_:=eqEQ(CO2+H2=CO+H2O);Ta__:=rhs(eqTa_);eqEQ__:=evalf(subs(T=Ta__,eqEQ_));sol1_:=allvalues(subs(A=A_,dat,solve({eqBC,eqBH,eqBO,eqBN,eqNX,eqEQ__},{a,x[H2],x[CO],x[N2],x[CO2],x[H2O]})))[1]:evalf(%,2);PCS_:=subs(sol1_,PCS(eqMIX_)/a);PCI_:=subs(sol1_,PCI(eqMIX_)/a);eqTa_:=subs(sol1_,cpComp,dat,eqTa):evalf(%);

`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2))))))) = `+`(`*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*`(H2O)), `*`(x[CO], `*`(CO)), `*`(x[H2], `*`(H2)))
`/`(`*`(x[H2O], `*`(x[CO])), `*`(x[CO2], `*`(x[H2]))) = `+`(`*`(281., `*`(exp(`+`(`-`(`/`(`*`(0.504e4, `*`(K_)), `*`(T))))))))
`+`(`*`(0.201e4, `*`(K_)))
`/`(`*`(x[H2O], `*`(x[CO])), `*`(x[CO2], `*`(x[H2]))) = 22.8
{a = .11, x[CO] = 0.72e-1, x[CO2] = 0.39e-1, x[H2] = 0.18e-1, x[H2O] = .20, x[N2] = .67}
`+`(`/`(`*`(0.660e6, `*`(J_)), `*`(mol_)))
`+`(`/`(`*`(0.580e6, `*`(J_)), `*`(mol_)))
Ta = `+`(`*`(0.202e4, `*`(K_)))

2ª iteración:

> Ta__:=rhs(eqTa_);eqEQ__:=evalf(subs(T=Ta__,eqEQ_));sol1_:=allvalues(subs(A=A_,dat,solve({eqBC,eqBH,eqBO,eqBN,eqNX,eqEQ__},{a,x[H2],x[CO],x[N2],x[CO2],x[H2O]})))[1]:evalf(%,2);PCS_:=subs(sol1_,PCS(eqMIX_)/a);PCI_:=subs(sol1_,PCI(eqMIX_)/a);eqTa_:=subs(sol1_,cpComp,dat,eqTa):evalf(%);

`+`(`*`(0.202e4, `*`(K_)))
`/`(`*`(x[H2O], `*`(x[CO])), `*`(x[CO2], `*`(x[H2]))) = 23.3
{a = .11, x[CO] = 0.72e-1, x[CO2] = 0.39e-1, x[H2] = 0.18e-1, x[H2O] = .20, x[N2] = .67}
`+`(`/`(`*`(0.659e6, `*`(J_)), `*`(mol_)))
`+`(`/`(`*`(0.578e6, `*`(J_)), `*`(mol_)))
Ta = `+`(`*`(0.201e4, `*`(K_)))

efectivamente, la segunda iteración muestra la bondad del método aproximado: PCS=660 kJ/mol y Ta=2010 K.

Podemos resolver el sistema no lineal de golpe para comprobarlo:

> eqMIX_:=eqMIX(a*CH4+a*A*(c21*O2+c79*N2)=[3,4,5,7,8]);eqEQ_:=eqEQ(CO2+H2=CO+H2O);PCI_:=subs(PCI(eqMIX_)/a);eqTa_:=subs(cpComp,dat,eqTa);eqEQ__:=subs(T=rhs(eqTa_),eqEQ_);sol1_:=fsolve(subs(A=A_,dat,SI0,{eqBC,eqBH,eqBO,eqBN,eqNX,eqEQ__}),{a,x[H2],x[CO],x[N2],x[CO2],x[H2O]},{a=0..1,x[H2]=0..1,x[CO]=0..1,x[N2]=0..1,x[CO2]=0..1,x[H2O]=0..1});PCS_:=subs(sol1_,PCS(eqMIX_)/a);PCI_:=subs(sol1_,PCI(eqMIX_)/a);eqTa_:=subs(sol1_,cpComp,dat,eqTa):evalf(%);

`+`(`*`(a, `*`(CH4)), `*`(a, `*`(A, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2))))))) = `+`(`*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O], `*`(H2O)), `*`(x[CO], `*`(CO)), `*`(x[H2], `*`(H2)))
`/`(`*`(x[H2O], `*`(x[CO])), `*`(x[CO2], `*`(x[H2]))) = `+`(`*`(281., `*`(exp(`+`(`-`(`/`(`*`(0.504e4, `*`(K_)), `*`(T))))))))
`/`(`*`(`+`(`/`(`*`(0.3935e6, `*`(x[CO2], `*`(J_))), `*`(mol_)), `/`(`*`(0.242e6, `*`(x[H2O], `*`(J_))), `*`(mol_)), `/`(`*`(0.1105e6, `*`(x[CO], `*`(J_))), `*`(mol_)), `-`(`/`(`*`(0.7485e5, `*`(a, `*...
Ta = `+`(`*`(298, `*`(K_)), `/`(`*`(`+`(`/`(`*`(0.3935e6, `*`(x[CO2], `*`(kg_, `*`(`^`(m_, 2))))), `*`(`^`(s_, 2), `*`(mol_))), `/`(`*`(0.242e6, `*`(x[H2O], `*`(kg_, `*`(`^`(m_, 2))))), `*`(`^`(s_, 2)...
`/`(`*`(x[H2O], `*`(x[CO])), `*`(x[CO2], `*`(x[H2]))) = `+`(`*`(281., `*`(exp(`+`(`-`(`/`(`*`(0.504e4, `*`(K_)), `*`(`+`(`*`(298, `*`(K_)), `/`(`*`(`+`(`/`(`*`(0.3935e6, `*`(x[CO2], `*`(kg_, `*`(`^`(m...
{a = .111, x[CO] = 0.730e-1, x[CO2] = 0.381e-1, x[H2] = 0.170e-1, x[H2O] = .205, x[N2] = .667}
`+`(`/`(`*`(0.660e6, `*`(J_)), `*`(mol_)))
`+`(`/`(`*`(0.579e6, `*`(J_)), `*`(mol_)))
Ta = `+`(`*`(0.202e4, `*`(K_)))

>