p49.mw

> restart:#"m09_p49"

Para la propulsión de un vehículo híbrido, se va a considerar el reformado de etanol con vapor, que a 500 ºC, 100 kPa, y usando un catalizador especial, da lugar a la reacción C2H5OH+2,2·H2O=4,66·H2+1,47·CO2+0,26·CO+0,27·CH4. Se pide:
a) Calcular la entalpía y la función de Gibbs de esa reacción en condiciones estándar, interpretando el signo obtenido.
b) Calcular la entalpía de esa reacción en las condiciones de operación especificadas.
c) Calcular la entalpía y la función de Gibbs de la reacción completa (sin formación de CO ni de CH4), en condiciones estándar y en las de operación.
d) Si no se dispusiera de los datos termoquímicos del etanol en estado gaseoso ideal, ¿cómo se podrían obtener estos a partir de los del líquido (dar ecuaciones explícitas)?
Datos:

> read`../therm_eq.m`:read`../therm_chem.m`:with(therm_chem);with(therm_proc):#Global Elem,Comp,C_,MfComp,cpComp,eqNX,eqBC,eqBH,eqBO,eqBN,eqBS,delta_

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

> su1:="C2H6O":su2:="H2O":su3:="CO2":su4:="H2":su5:="CO":su6:="CH4":dat:=[T500=(500+273.15)*K_];

Typesetting:-mprintslash([dat := [T500 = `+`(`*`(773.15, `*`(K_)))]], [[T500 = `+`(`*`(773.15, `*`(K_)))]]) (1)

Eqs. const.:

> dat:=op(dat),op(subs(g=g0,[Const])),SI2,SI1:datW:=get_gas_data("H2O"),get_liq_data("H2O"):datE:=get_gas_data(su1),get_liq_data(su1):datC:=get_gas_data("CO2"):datc:=get_gas_data("CO"):datH:=get_gas_data("H2"):datM:=get_gas_data("CH4"):get_pv_data(su1):

a) Calcular la entalpía y la función de Gibbs de esa reacción en condiciones estándar, interpretando el signo obtenido.

Si la reacción fuese a 25 ºC, 100 kPa, y con entradas y salidas separadas, el etanol y el agua serán líquidos y los demás serían gases, y por tanto:

> eq1:=C2H6O+2.2*H2O=4.66*H2+1.47*CO2+0.26*CO+0.27*CH4;eq9_9b;hfEtL:=h26_;hfH2OL:=h5_;hfH2:=h8_;hfCO2:=h4_;hfCO:=h7_;hfCH4:=h10_;d:=hgs_r25(eq1):hr25:=d[1];gr25:=d[2];sr25:=d[3];

Typesetting:-mprintslash([eq1 := `+`(C2H6O, `*`(2.2, `*`(H2O))) = `+`(`*`(4.66, `*`(H2)), `*`(1.47, `*`(CO2)), `*`(.26, `*`(CO)), `*`(.27, `*`(CH4)))], [`+`(C2H6O, `*`(2.2, `*`(H2O))) = `+`(`*`(4.66, ...
hrR = Sum(`*`(nu[i], `*`(h[i])), i = 1 .. C)
Typesetting:-mprintslash([hfEtL := `+`(`-`(`/`(`*`(277690.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(277690.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfH2OL := `+`(`-`(`/`(`*`(285830.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(285830.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfH2 := 0.], [0.])
Typesetting:-mprintslash([hfCO2 := `+`(`-`(`/`(`*`(393520.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(393520.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfCO := `+`(`-`(`/`(`*`(110530.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(110530.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfCH4 := `+`(`-`(`/`(`*`(74850.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(74850.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hr25 := `+`(`/`(`*`(279094.3000, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(279094.3000, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([gr25 := `+`(`/`(`*`(67575.1000, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(67575.1000, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([sr25 := `+`(`/`(`*`(709.6003000, `*`(J_)), `*`(mol_, `*`(K_))))], [`+`(`/`(`*`(709.6003000, `*`(J_)), `*`(mol_, `*`(K_))))]) (2)

i.e. hr=279 kJ/mol y gr=67,6 kJ/mol. El signo positivo de hr indica que es endotérmica, y el de gr que necesita aporte de exergía (no es espontánea). Esto significa que, con entrada y salida a 25 ºC, 100 kPa y componentes separados, habría que aporatr 279 kJ por cada mol de etanol (normalmente de calor, pero que si se aportara trabajo, bastarían 67,6 kJ y el resto hasta los 279 kJ podrían tomarse del ambiente).

b) Calcular la entalpía de esa reacción en las condiciones de operación especificadas.

Ahora el reactor está a 500 ºC y 100 kPa. Si suponemos que también la entrada es en estas condiciones para determinar la entalpía de la reacción, el etanol y el agua serán también gases (el etanol no se descompone térmicamente hasta 1000 K, apreciablemente), y además habrá que contabilizar el efecto en la hr de la DT aunque la hr varía poco con la T; la diferencia es Dh=Sum(nui*cpi*(T500-T25)=28 kJ/mol (frente a los 279 kJ/mol).

> hfEtV:=h26_+subs(datE,h[lv0]*M);hfH2OV:=h6_;hfH2:=h8_;hfCO2:=h4_;hfCO:=h7_;hfCH4:=h10_;nui:=nulist(eq1):hr25VV:=nui[8]*hfH2+nui[4]*hfCO2+nui[7]*hfCO+nui[10]*hfCH4+nui[26]*hfEtV+nui[5]*hfH2OV;Dh:=Sum(nu[i]*c[p,i]*(T500-T25),i=1..C)=(subs(datH,nui[8]*c[p]*M)+subs(datC,nui[4]*c[p]*M)+subs(datc,nui[7]*c[p]*M)+subs(datM,nui[10]*c[p]*M)+subs(datE,-1*c[p]*M)+subs(datW,nui[5]*c[p]*M))*subs(dat,T500-T25);hr500_:=hr25VV+rhs(Dh);

Typesetting:-mprintslash([hfEtV := `+`(`-`(`/`(`*`(238360.000, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(238360.000, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfH2OV := `+`(`-`(`/`(`*`(241820.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(241820.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfH2 := 0.], [0.])
Typesetting:-mprintslash([hfCO2 := `+`(`-`(`/`(`*`(393520.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(393520.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfCO := `+`(`-`(`/`(`*`(110530.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(110530.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hfCH4 := `+`(`-`(`/`(`*`(74850.00, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(74850.00, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([hr25VV := `+`(`/`(`*`(142942.3000, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(142942.3000, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([Dh := Sum(`*`(nu[i], `*`(c[p, i], `*`(`+`(T500, `-`(T25))))), i = 1 .. C) = `+`(`/`(`*`(27996.88000, `*`(J_)), `*`(mol_)))], [Sum(`*`(nu[i], `*`(c[p, i], `*`(`+`(T500, `-`(T2...
Typesetting:-mprintslash([hr500_ := `+`(`/`(`*`(170939.1800, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(170939.1800, `*`(J_)), `*`(mol_)))]) (3)

i.e. entrando y saliendo todo a 500 ºC, solo hay que añadir 171 kJ/mol, en lugar de los 279 kJ/mol que había que añadir para reaccionar a 25 ºC. Véase como el Dh=28 kJ/mol es mucho menor que hr25VV=143 kJ/mol.

Si en lugar de entrar el alcohol y el agua a 500 ºC se considera que están a 25 ºC antes de entrar, y se quiere calcular el calor a aportar entre la entrada y la salida, bastaría añadir las entalpías de vaporización a 25 ºC y de calentamiento hasta 500 ºC.

> q25_500:=-nui[26]*hlvEt25-evalf(nui[5])*hlvH2O25+hr500;h[lv25]=h[lvb]-(c-c[p])*(T25-T[b]);hlvEt25_:=subs(datE,dat,(h[lv0]-(c-c[p])*(T25-T[b]))*M);;hlvH2O25_:=subs(datW,dat,(h[lv0]-(c-c[p])*(T25-T[b]))*M);;q25_500_:=subs(hr500=hr500_,hlvEt25=hlvEt25_,hlvH2O25=hlvH2O25_,q25_500);

Typesetting:-mprintslash([q25_500 := `+`(hlvEt25, `*`(2.200000000, `*`(hlvH2O25)), hr500)], [`+`(hlvEt25, `*`(2.200000000, `*`(hlvH2O25)), hr500)])
h[lv25] = `+`(h[lvb], `-`(`*`(`+`(c, `-`(c[p])), `*`(`+`(T25, `-`(T[b]))))))
Typesetting:-mprintslash([hlvEt25_ := `+`(`/`(`*`(42581.55600, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(42581.55600, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([hlvH2O25_ := `+`(`/`(`*`(43706.05200, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(43706.05200, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([q25_500_ := `+`(`/`(`*`(309674.0504, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(309674.0504, `*`(J_)), `*`(mol_)))]) (4)

i.e. si a partir de depósitos de etanol y agua a 25 ºC se quiere que salgan los productos especificados a 500 ºC, hay que añadir 310 kJ por cada mol de etanol, en vez de los 171 kJ/mol anteriores.

c) Calcular la entalpía de la reacción completa (sin formación de CO ni de CH4), en condiciones estándar y en las de operación.

> eq0:=eq_fit(C2H6O+a*H2O=b*H2+c*CO2);d:=hgs_r25(%):hr25:=d[1];gr25:=d[2];sr25:=d[3];nui:=nulist(eq0):hr25VV:=nui[8]*hfH2+nui[4]*hfCO2+nui[7]*hfCO+nui[10]*hfCH4+nui[26]*hfEtV+nui[5]*hfH2OV;Dh:=Sum(nu[i]*c[p,i]*(T500-T25),i=1..C)=(subs(datH,nui[8]*c[p]*M)+subs(datC,nui[4]*c[p]*M)+subs(datc,nui[7]*c[p]*M)+subs(datM,nui[10]*c[p]*M)+subs(datE,-1*c[p]*M)+subs(datW,nui[5]*c[p]*M))*subs(dat,T500-T25);hr500_:=hr25VV+rhs(Dh);q25_500:=-nui[26]*hlvEt25-evalf(nui[5])*hlvH2O25+hr500;q25_500_:=subs(hr500=hr500_,hlvEt25=hlvEt25_,hlvH2O25=hlvH2O25_,q25_500);

Typesetting:-mprintslash([eq0 := `+`(C2H6O, `*`(3, `*`(H2O))) = `+`(`*`(2, `*`(CO2)), `*`(6, `*`(H2)))], [`+`(C2H6O, `*`(3, `*`(H2O))) = `+`(`*`(2, `*`(CO2)), `*`(6, `*`(H2)))])
Typesetting:-mprintslash([hr25 := `+`(`/`(`*`(348140.00, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(348140.00, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([gr25 := `+`(`/`(`*`(97670.00, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(97670.00, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([sr25 := `+`(`/`(`*`(840.21, `*`(J_)), `*`(mol_, `*`(K_))))], [`+`(`/`(`*`(840.21, `*`(J_)), `*`(mol_, `*`(K_))))])
Typesetting:-mprintslash([hr25VV := `+`(`/`(`*`(176780.000, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(176780.000, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([Dh := Sum(`*`(nu[i], `*`(c[p, i], `*`(`+`(T500, `-`(T25))))), i = 1 .. C) = `+`(`/`(`*`(34105.00000, `*`(J_)), `*`(mol_)))], [Sum(`*`(nu[i], `*`(c[p, i], `*`(`+`(T500, `-`(T2...
Typesetting:-mprintslash([hr500_ := `+`(`/`(`*`(210885.0000, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(210885.0000, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([q25_500 := `+`(hlvEt25, `*`(3., `*`(hlvH2O25)), hr500)], [`+`(hlvEt25, `*`(3., `*`(hlvH2O25)), hr500)])
Typesetting:-mprintslash([q25_500_ := `+`(`/`(`*`(384584.7120, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(384584.7120, `*`(J_)), `*`(mol_)))]) (5)

i.e.  para que ocurra la reacción completa, con entrada y salida a 25 ºC (alcohol y agua líquidos) hay que aportar hr25=348 kJ/mol (a 25 ºC pero con alcohol y agua en estado virtual gaseoso habría que aportar 177 kJ/mol). Con entrada y salida a 500 ºC hay que aportar 211 kJ/mol, y si la entrada es a 25 ºC (líquidos) y la salida a 500 ºC, hay que aportar 385 kJ/mol.

d) Si no se dispusiera de los datos termoquímicos del etanol en estado gaseoso ideal, ¿cómo se podrían obtener estos a partir de los del líquido (dar ecuaciones explícitas)?

La reacción de formación del etanol, y la 'reacción' de vaporización son:

> eqForm:=2*C+3*H2+(1/2)*O2=C2H6O(liq);eqVap:=C2H6O(liq)=C2H6O(vap);

Typesetting:-mprintslash([eqForm := `+`(`*`(2, `*`(C)), `*`(3, `*`(H2)), `*`(`/`(1, 2), `*`(O2))) = C2H6O(liq)], [`+`(`*`(2, `*`(C)), `*`(3, `*`(H2)), `*`(`/`(1, 2), `*`(O2))) = C2H6O(liq)])
Typesetting:-mprintslash([eqVap := C2H6O(liq) = C2H6O(vap)], [C2H6O(liq) = C2H6O(vap)]) (6)

de la primera suponemos conoccidos los datos:

> r25L:=hgs_r25(2*C+3*H2+(1/2)*O2=C2H6O);StdL:=get_hgs_data("C2H6O(l)");

Typesetting:-mprintslash([r25L := `+`(`-`(`/`(`*`(277690.00, `*`(J_)), `*`(mol_)))), `+`(`-`(`/`(`*`(174890.00, `*`(J_)), `*`(mol_)))), `+`(`-`(`/`(`*`(345.0100000, `*`(J_)), `*`(mol_, `*`(K_)))))], [...
Typesetting:-mprintslash([StdL := `+`(`-`(`/`(`*`(277690.00, `*`(J_)), `*`(mol_)))), `+`(`-`(`/`(`*`(174890.00, `*`(J_)), `*`(mol_)))), `+`(`/`(`*`(160.7, `*`(J_)), `*`(mol_, `*`(K_))))], [`+`(`-`(`/`... (7)

i.e. en la Tabla viene la entalpía estándar de formación del etanol (líquido), hf=-278 kJ/mol, la función de Gibbs estándar de formación del etanol (líquido), gf=-175 kJ/mol, y la entropía estándar del etanol (líquido), s=161 J/(mol·K), que junto a las entropías estándar del carbono, hidrógeno, y oxígeno, dan la entropía de reacción de formación, sf=-345 J/(mol·K). Y se cumple gr25=hr25-T25*sr25=-278-298·(-0.345)=-175.

Pero para la 'reacción' de vaporización no vale gr=hr-T·sr porque no hay equilibrio entre el líquido a 25 ºC y 100 kPa y el vapor idealmente a 25 ºC y 100 kPa; tenemos que pasar de líquido a 25 ºC y 100 kPa a líquido a 25 ºC y pv25=8 kPa (con el modelo de líquido perfecto no hay variación), luego a vapor en equilibrio a 25 ºC y pv25=8 kPa (como hay equilibrio, Dg=0), y finalmente de vapor a 25 ºC y pv25=8 kPa a vapor virtual a 25 ºC y p0=100 kPa. Calculando las variaciones de entropía y sustituyendo en la variación de g, tenemos:

> pv25_:=subs(dat,evalf(subs(dat,pv(T25))));eqgVap:=gfVvirt-gfL=hfVvirt-hfL-T25*(sVvirt-sL);eqh:=hfVvirt=hfL+hlv25;eqs:=sVvirt=sL+slv25-Rln(p0/pv25);

Typesetting:-mprintslash([pv25_ := `+`(`*`(7895.835274, `*`(Pa_)))], [`+`(`*`(7895.835274, `*`(Pa_)))])
Typesetting:-mprintslash([eqgVap := `+`(gfVvirt, `-`(gfL)) = `+`(hfVvirt, `-`(hfL), `-`(`*`(T25, `*`(`+`(sVvirt, `-`(sL))))))], [`+`(gfVvirt, `-`(gfL)) = `+`(hfVvirt, `-`(hfL), `-`(`*`(T25, `*`(`+`(sV...
Typesetting:-mprintslash([eqh := hfVvirt = `+`(hfL, hlv25)], [hfVvirt = `+`(hfL, hlv25)])
Typesetting:-mprintslash([eqs := sVvirt = `+`(sL, slv25, `-`(Rln(`/`(`*`(p0), `*`(pv25)))))], [sVvirt = `+`(sL, slv25, `-`(Rln(`/`(`*`(p0), `*`(pv25)))))]) (8)

y con los datos de la tabbla de líquidos (y la masa molar del etanol, M=0,046 kg/mol):

> hlvT=hlv(T);hlv25_:=subs(datE,T=T25,dat,hlv(T)*M);slv25:=hlv25/T25;slv25_:=subs(dat,hlv25_/T25);eqR:=-R*ln(p0/pv25)=subs(dat,evalf(subs(dat,-R[u]*ln(p0/pv(T25)))));hfVvirt_:=subs(hfL=StdL[1],hlv25=hlv25_,rhs(eqh));sVvirt_:=subs(sL=StdL[3],sL+slv25_+rhs(eqR));gfVvirt:=gfL+hfVvirt-hfL-T25*(sVvirt-sL);gfVvirt_:=subs(gfL=StdL[2],hfVvirt=hfVvirt_,hfL=StdL[1],sVvirt=sVvirt_,sL=StdL[3],dat,%);

hlvT = `+`(h[lv0], `*`(`+`(c[p], `-`(c)), `*`(`+`(T, `-`(T[b])))))
Typesetting:-mprintslash([hlv25_ := `+`(`/`(`*`(42581.55600, `*`(J_)), `*`(mol_)))], [`+`(`/`(`*`(42581.55600, `*`(J_)), `*`(mol_)))])
Typesetting:-mprintslash([slv25 := `/`(`*`(hlv25), `*`(T25))], [`/`(`*`(hlv25), `*`(T25))])
Typesetting:-mprintslash([slv25_ := `+`(`/`(`*`(142.8192387, `*`(J_)), `*`(mol_, `*`(K_))))], [`+`(`/`(`*`(142.8192387, `*`(J_)), `*`(mol_, `*`(K_))))])
Typesetting:-mprintslash([eqR := `+`(`-`(`*`(R, `*`(ln(`/`(`*`(p0), `*`(pv25))))))) = `+`(`-`(`/`(`*`(21.10787208, `*`(J_)), `*`(mol_, `*`(K_)))))], [`+`(`-`(`*`(R, `*`(ln(`/`(`*`(p0), `*`(pv25)))))))...
Typesetting:-mprintslash([hfVvirt_ := `+`(`-`(`/`(`*`(235108.4440, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(235108.4440, `*`(J_)), `*`(mol_))))])
Typesetting:-mprintslash([sVvirt_ := `+`(`/`(`*`(282.4113666, `*`(J_)), `*`(mol_, `*`(K_))))], [`+`(`/`(`*`(282.4113666, `*`(J_)), `*`(mol_, `*`(K_))))])
Typesetting:-mprintslash([gfVvirt := `+`(gfL, hfVvirt, `-`(hfL), `-`(`*`(T25, `*`(`+`(sVvirt, `-`(sL))))))], [`+`(gfL, hfVvirt, `-`(hfL), `-`(`*`(T25, `*`(`+`(sVvirt, `-`(sL))))))])
Typesetting:-mprintslash([gfVvirt_ := `+`(`-`(`/`(`*`(168596.6880, `*`(J_)), `*`(mol_))))], [`+`(`-`(`/`(`*`(168596.6880, `*`(J_)), `*`(mol_))))]) (9)

i.e. los datos termoquímicos para el etanol en estado de vapor virtual son hf=-235 kJ/mol, gf=-169 kJ/mol, y s=282 J/(mol·K), como se puede comprobar en la Tabla.

>