> restart:#"m15_p06"

> 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]

El análisis volumétrico en base seca de los gases de escape de un motor cuya gasolina tiene de fórmula empírica C8H17 da: 9,2% de CO2, 8,3% de CO, 0,5% de O2, 3,4% de H2, 0,4% de CH4 y 78,2% de N2.

a) Calcular la relación aire/combustible y la riqueza.

Datos:

> su1:="Aire":su2:="H2O":dat:=[u=8,v=17,w=0,y=0,xsCO2=0.092,xsCO=0.083,xsO2=0.005,xsH2=0.034,xsCH4=0.004];

[u = 8, v = 17, w = 0, y = 0, xsCO2 = 0.92e-1, xsCO = 0.83e-1, xsO2 = 0.5e-2, xsH2 = 0.34e-1, xsCH4 = 0.4e-2]

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) Calcular la relación aire/combustible y la riqueza.

> eqMIX(8*a*C+(17/2)*a*H2+b*(c21*O2+c79*N2)=[2,3,4,6,7,8,10]);xsN2:=1-xsCO2-xsCO-xsO2-xsH2-xsCH4;xsN2_:=subs(dat,xsN2);i:='i':aux_:=sum(delta_[i]*x[Comp[i]],i=1..C_);eqDat1:=subs(x[H2O]=0,dat,xsCO2=x[CO2]/aux_);eqDat2:=subs(x[H2O]=0,dat,xsCO=x[CO]/aux_);eqDat3:=subs(x[H2O]=0,dat,xsO2=x[O2]/aux_);eqDat4:=subs(x[H2O]=0,dat,xsH2=x[H2]/aux_);eqDat5:=subs(x[H2O]=0,dat,xsCH4=x[CH4]/aux_);eqDat6:=subs(x[H2O]=0,dat,xsN2=x[N2]/aux_);sol1_:=subs(dat,solve({eqNX,eqBC,eqBH,eqBO,eqBN,eqDat2,eqDat3,eqDat4,eqDat5},{a,b,x[CO2],x[CO],x[H2O],x[H2],x[N2],x[O2],x[CH4]}));

`+`(`*`(8, `*`(a, `*`(C))), `*`(`/`(17, 2), `*`(a, `*`(H2))), `*`(b, `*`(`+`(`*`(c21, `*`(O2)), `*`(c79, `*`(N2)))))) = `+`(`*`(x[O2], `*`(O2)), `*`(x[N2], `*`(N2)), `*`(x[CO2], `*`(CO2)), `*`(x[H2O],...
`+`(1, `-`(xsCO2), `-`(xsCO), `-`(xsO2), `-`(xsH2), `-`(xsCH4))
.782
`+`(x[O2], x[N2], x[CO2], x[H2O], x[CO], x[H2], x[CH4])
0.92e-1 = `/`(`*`(x[CO2]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
0.83e-1 = `/`(`*`(x[CO]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
0.5e-2 = `/`(`*`(x[O2]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
0.34e-1 = `/`(`*`(x[H2]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
0.4e-2 = `/`(`*`(x[CH4]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
.782 = `/`(`*`(x[N2]), `*`(`+`(x[O2], x[N2], x[CO2], x[CO], x[H2], x[CH4])))
{a = 0.1925e-1, b = .8672, x[CH4] = 0.3493e-2, x[CO] = 0.7248e-1, x[CO2] = 0.7805e-1, x[H2] = 0.2969e-1, x[H2O] = .1269, x[N2] = .6849, x[O2] = 0.4366e-2}
{a = 0.1925e-1, b = .8672, x[CH4] = 0.3493e-2, x[CO] = 0.7248e-1, x[CO2] = 0.7805e-1, x[H2] = 0.2969e-1, x[H2O] = .1269, x[N2] = .6849, x[O2] = 0.4366e-2}

Había un dato redundante. Hemos quitado xsCO2; si hubieramos quitado xsO2:

> sol1_:=subs(dat,solve({eqNX,eqBC,eqBH,eqBO,eqBN,eqDat1,eqDat3,eqDat4,eqDat5},{a,b,x[CO2],x[CO],x[H2O],x[H2],x[N2],x[O2],x[CH4]}));

{a = 0.1916e-1, b = .8688, x[CH4] = 0.3496e-2, x[CO] = 0.6934e-1, x[CO2] = 0.8041e-1, x[H2] = 0.2972e-1, x[H2O] = .1261, x[N2] = .6864, x[O2] = 0.4370e-2}
{a = 0.1916e-1, b = .8688, x[CH4] = 0.3496e-2, x[CO] = 0.6934e-1, x[CO2] = 0.8041e-1, x[H2] = 0.2972e-1, x[H2O] = .1261, x[N2] = .6864, x[O2] = 0.4370e-2}

> eq15_2;A0_:=subs(dat,rhs(eq15_2)):A[0]=evalf(%,2);A=b/a;A_:=subs(sol1_,b/a);eq15_3;phi:=A0_/A_;

A[0] = `/`(`*`(`+`(u, `*`(`/`(1, 4), `*`(v)), `-`(`*`(`/`(1, 2), `*`(w))), y)), `*`(c21))
A[0] = 58.
A = `/`(`*`(b), `*`(a))
45.34
phi = `/`(`*`(A[0]), `*`(A))
1.287

>