> restart:#"m07_p02"

Considérese un pozo de 2 km de profundidad conteniendo una mezcla de metano y etano que en la parte superior está a 1 MPa y 30 °C y con una composición molar de 90% de metano. Suponiendo el pozo isotermo, calcular la presión y composición en la parte inferior.

Datos:

> read"../therm_eq.m":read"../therm_proc.m":with(therm_proc):

> su1:="CH4":su2:="C2H6":dat:=[z2=-2e3*m_,p0=1e6*Pa_,T0=(30+273)*K_,x10=0.9,x20=1-x10];

`:=`(dat, [z2 = `+`(`-`(`*`(0.2e4, `*`(m_)))), p0 = `+`(`*`(0.1e7, `*`(Pa_))), T0 = `+`(`*`(303, `*`(K_))), x10 = .9, x20 = `+`(1, `-`(x10))])

Esquema:

> `:=`(Sistemas, [mezcla])

> `:=`(Estados, [1, 2])

Eqs. const.:

> eqETg:=subs(eq1_11,eq1_12);eqEE:=eq1_16;g1dat:=get_gas_data(su1):g2dat:=get_gas_data(su2):dat:=op(dat),op(subs(M=M[1],c[p]=c[p1],[g1dat])),op(subs(M=M[2],c[p]=c[p2],[g2dat])),Const,SI2,SI1:

`:=`(eqETg, `/`(`*`(m), `*`(V)) = `/`(`*`(p), `*`(R, `*`(T))))

`:=`(eqEE, DU = `*`(m, `*`(c[v], `*`(DT))))

a) Suponiendo el pozo isotermo, calcular la presión y composición en la parte inferior.

> eqEespecies:=mu[i](T,p0)+R[u]*T*ln(x[i]*p/p0)+M[i]*g*z=cte;

`:=`(eqEespecies, `+`(mu[i](T, p0), `*`(R[u], `*`(T, `*`(ln(`/`(`*`(x[i], `*`(p)), `*`(p0)))))), `*`(M[i], `*`(g, `*`(z)))) = cte)

> eq1:=R[u]*T*ln((x10*p0)/(x12*p2))+M[1]*g*(z0-z2)=0;eq2:=R[u]*T*ln((x20*p0)/(x22*p2))+M[2]*g*(z0-z2)=0;

`:=`(eq1, `+`(`*`(R[u], `*`(T, `*`(ln(`/`(`*`(x10, `*`(p0)), `*`(x12, `*`(p2))))))), `*`(M[1], `*`(g, `*`(`+`(z0, `-`(z2)))))) = 0)

`:=`(eq2, `+`(`*`(R[u], `*`(T, `*`(ln(`/`(`*`(x20, `*`(p0)), `*`(x22, `*`(p2))))))), `*`(M[2], `*`(g, `*`(`+`(z0, `-`(z2)))))) = 0)

> p2:=simplify(solve(eq1/M[1]-eq2/M[2],p2));

`:=`(p2, `/`(`*`(x10, `*`(p0, `*`(`^`(`/`(`*`(x20, `*`(x12)), `*`(x22, `*`(x10))), `/`(`*`(M[1]), `*`(`+`(M[1], `-`(M[2])))))))), `*`(x12)))

> x12:=solve(subs(x22=1-x12,eq1),x12);

`:=`(x12, `/`(`*`(exp(`+`(`-`(`/`(`*`(g, `*`(`+`(`-`(z0), z2), `*`(`+`(M[1], `-`(M[2]))))), `*`(R[u], `*`(T)))))), `*`(x10)), `*`(`+`(`*`(exp(`+`(`-`(`/`(`*`(g, `*`(`+`(`-`(z0), z2), `*`(`+`(M[1], `-`...

> rho:=p0/(R[u]*T)*(M[1]*x10+M[2]*x20);p2__:='p0-rho*g*z2';

`:=`(rho, `/`(`*`(p0, `*`(`+`(`*`(M[1], `*`(x10)), `*`(M[2], `*`(x20))))), `*`(R[u], `*`(T))))

`:=`(p2__, `+`(p0, `-`(`*`(rho, `*`(g, `*`(z2))))))

NUMÉRICO:

> x12_:=evalf(subs(Const,z0=0,T=T0,dat,dat,x12)):'x12_'=evalf(%,2);x22_:=evalf(1-x12_,2);

x12_ = .89

`:=`(x22_, .11)

> p2_:=subs(x22=x22_,Const,z0=0,T=T0,dat,dat,p2):'p2'=subs(dat,evalf(%,3));

p2 = `+`(`*`(0.114e6, `*`(Pa_)))

>