> restart:#"m15_p23"

> 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 quema adiabáticamente propano con un 30% de exceso de aire atmosférico con un 60% de humedad relativa. Un análisis en seco de los productos de combustión revela un 5,2% de O2 por volumen careciéndose de los datos restantes del análisis de los productos. Si el flujo es continuo, las condiciones atmosféricas 25 °C de temperatura y 100 kPa de presión y los reactivos entran separados y en las condiciones atmosféricas, se pide determinar:

a) Punto de rocío de la mezcla gaseosa de los productos.

b) Relación combustible/aire.

c) Temperatura máxima teórica de la combustión.

d) Producción de entropía durante la combustión.

e) Capacidad relativa de producir trabajo con los gases calientes.

Datos:

> su1:="Aire":su2:="H2O":fuel:=C3H8:dat:=[e=0.3,phi0=0.6,xO2s=0.052,T0=298*K_];

[e = .3, phi0 = .6, xO2s = 0.52e-1, T0 = `+`(`*`(298, `*`(K_)))]

Eqs. const.:

> Adat:=get_gas_data(su1):Wdat:=get_gas_data(su2),get_liq_data(su2):get_pv_data(su2):dat:=op(dat),op(subs(g=g0,[Const])),Adat,SI2,SI1:

a) Punto de rocío de la mezcla gaseosa de los producto

b) Relación combustible/aire.

El dato del exceso de aire es redundante con el de xO2seca (hay que comprobar que concuerdan).

> eq1:=eq15_2;eq1_:=Ateo(fuel);eq:=eqMIX(a*fuel+b*(subs(dat,c21*O2+c79*N2))=[2,3,4,6]);eqDat:=b/a=(1+e)*A[0];eqDat:=b/a=subs(A[0]=rhs(eq1_),dat,(1+e)*A[0]);sol1_:=solve(subs(dat,{eqNX,eqBC,eqBH,eqBO,eqBN,eqDat}),{a,b,x[N2],x[O2],x[CO2],x[H2O]});eqDatO2:=subs(sol1_,dat,xsO2=x[O2]/(x[CO2]+x[O2]+x[N2]));PCI_:=subs(sol1_,PCI(eq)/a);eq8_2;Trocio_:=solve(subs(dat,eval(subs(x[v,sat]=x[H2O],sol1_,p[v]=pv,p=p0,dat,eq8_2))),T);'Trocio'=TKC(Trocio_);

A[0] = `/`(`*`(`+`(u, `*`(`/`(1, 4), `*`(v)), `-`(`*`(`/`(1, 2), `*`(w))), y)), `*`(c21))
A[0] = 23.809523809523809524
`+`(`*`(a, `*`(C3H8)), `*`(b, `*`(`+`(`*`(.79, `*`(N2)), `*`(.21, `*`(O2)))))) = `+`(`*`(CO2, `*`(x[CO2])), `*`(H2O, `*`(x[H2O])), `*`(N2, `*`(x[N2])), `*`(O2, `*`(x[O2])))
`/`(`*`(b), `*`(a)) = `*`(`+`(1, e), `*`(A[0]))
`/`(`*`(b), `*`(a)) = 30.952380952380952381
{a = 0.30346820809248554913e-1, b = .93930635838150289017, x[CO2] = 0.91040462427745664740e-1, x[H2O] = .12138728323699421965, x[N2] = .74205202312138728324, x[O2] = 0.45520231213872832370e-1}
xsO2 = 0.51809210526315789474e-1
`+`(`/`(`*`(2043990.0000000000000, `*`(J_)), `*`(mol_)))
x[v, sat] = `/`(`*`(p[v](T)), `*`(p))
`+`(`*`(322.75917087134610865, `*`(K_)))
Trocio = `+`(`*`(49.60917087134610865, `*`(ºC)))

i.e. la relación aire/fuel es A=b/a=31 molA/molF, y el punto de rocío es 49,6 ºC

c) Temperatura máxima teórica de la combustión.

Con el 30% de exceso de aire sería:

> eq15_7_2;Ta_:=subs(sol1_,cpComp,dat,rhs(eqTa));

Ta = `+`(T25, `/`(`*`(a, `*`(PCI)), `*`(Sum(`*`(x[Com[i]], `*`(c[p, i])), i = 1 .. CP))))
`+`(`*`(1956.5699381761978362, `*`(K_)))

i.e., unos 1960 K. La máxima sería con e=0:

> eqDat:=b/a=subs(A[0]=rhs(eq1_),dat,(1+0)*A[0]);sol1_:=solve(subs(dat,{eqNX,eqBC,eqBH,eqBO,eqBN,eqDat}),{a,b,x[N2],x[O2],x[CO2],x[H2O]});PCI_:=subs(sol1_,PCI(subs(sol1_,eq))/a);Ta0_:=subs(sol1_,cpComp,dat,rhs(eqTa));

`/`(`*`(b), `*`(a)) = 23.809523809523809524
{a = 0.38745387453874538745e-1, b = .92250922509225092251, x[CO2] = .11623616236162361624, x[H2O] = .15498154981549815498, x[N2] = .72878228782287822878, x[O2] = 0.15498154981549815498e-20}
`+`(`/`(`*`(2043990.0000000000000, `*`(J_)), `*`(mol_)))
`+`(`*`(2363.6299326275264677, `*`(K_)))

d) Producción de entropía durante la combustión

Como la combustión es adiabática, Sgen=Ssalida-Sentrada.

Una manera aproximada de calcular Sgen es usando la relación de Guy-Stodola, que dice que T0*Sgen es el trabajo perdido. A la entrada, el trabajo obtenible prácticamente coincide con el poder calorífico, mientras que a la salida sería como máximo el de Carnot a esa temperatura:

> eqGuy_Stod:=T0*Sgen=PCI-PCI*(1-T0/Ta);Sgen_:=PCI/Ta;Sgen_:=PCI_/Ta_;

`*`(T0, `*`(Sgen)) = `+`(PCI, `-`(`*`(PCI, `*`(`+`(1, `-`(`/`(`*`(T0), `*`(Ta))))))))
`/`(`*`(PCI), `*`(Ta))
`+`(`/`(`*`(1044.6802642308253629, `*`(J_)), `*`(mol_, `*`(K_))))

i.e.  se generan 1 kJ/K por cada mol de propano que reacciona.

e) Capacidad relativa de producir trabajo con los gases calientes.

Será la exergía (termomecánica, despreciamos la química de la disolución). Podemos aproximar el cp de los gases por el del aire ambiente (aunque sería algo major por tener más CO2 y H2O y estar más calientes).

> eqeta:=eta=W/Q;eqeta:=eta=(Dh-T0*Ds)/Dh;eqeta:=eta=(Ta-T0-T0*ln(Ta/T0))/(Ta-T0);eqeta_:=evalf(subs(Ta=Ta_,dat,%));

eta = `/`(`*`(W), `*`(Q))
eta = `/`(`*`(`+`(`-`(`*`(Ds, `*`(T0))), Dh)), `*`(Dh))
eta = `/`(`*`(`+`(Ta, `-`(T0), `-`(`*`(T0, `*`(ln(`/`(`*`(Ta), `*`(T0)))))))), `*`(`+`(Ta, `-`(T0))))
eta = .66188178863341405234

Nótese que  el rendimiento de Carnot para la temperatura adiabática nos daría un límite superior (pero no se podría obtener tanto trabajo porque al ir extrayendo calor de una fuente finita se va enfriando).

> eta[C]:=1-T0/Ta;eta[C]:=subs(dat,1-T0/Ta_);

`+`(1, `-`(`/`(`*`(T0), `*`(Ta))))
.84769264099100976123

>