> | restart:#"m07_p28" |
A una cámara de separación entra un flujo equimolar de 0,1 kg/s de n-butano y n-pentano a 100 ºC y 1 MPa. Suponiendo despreciables las pérdidas de presión y de calor, se pide:
a) Esquema del diagrama T-x de las mezclas n-butano y n-heptano a 1 MPa, y del diagrama p-x a 100 ºC, indicando los valores extremos y el estado actual.
b) Determinar la composición de las fases separadas a la salida.
c) Determinar los gastos másicos de las fases separadas a la salida.
Datos:
> | read"../therm_eq.m":read"../therm_proc.m":with(therm_proc): |
> | su1:="C4H10":su2:="C5H12":dat:=[x01=0.5,x02=0.5,mdot=0.1*kg_/s_,T1=(100+273)*K_,p1=1e6*Pa_]; |
![]() |
Esquema:
> | ![]() |
> | ![]() |
Eqs. const.:
> | eqETg:=subs(eq1_11,eq1_12);eqEE:=eq1_16;for i from 1 to 2 do gdat||i:=get_gas_data(su||i);ldat||i:=get_liq_data(su||i);dat||i:=op(dat),Const,gdat||i,ldat||i,SI2,SI1;od:pv1:=proc(T) global su1;get_pv_data(su1);RETURN(pv(T)):end:pv2:=proc(T) global su1;get_pv_data(su2);RETURN(pv(T)):end:'rho1'=subs(dat1,rho),'rho2'=subs(dat2,rho); |
![]() |
![]() |
![]() |
> | eqNV:=xv1+xv2=1;eqNL:=xl1+xl2=1;eqC1:=xv1*xv0+xl1*xl0=x01;eqC2:=xv2*xv0+xl2*xl0=x02;eqE1:=xv1/xl1=pv1/p;eqE2:=xv2/xl2=pv2/p;sol1:=solve({eqNV,eqNL,eqE1,eqE2},{xv1,xv2,xl1,xl2});sol2:=solve({eqC1,eqC2},{xv0,xl0}); |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
a) Esquema del diagrama T-x de las mezclas n-butano y n-heptano a 1 MPa, y del diagrama p-x a 100 ºC, indicando los valores extremos y el estado actual.
A 1 MPa:
> | T1_:=subs(dat1,evalf(subs(dat1,solve(p1=pv1(T),T)))):'T1'=evalf(%,3);T2_:=subs(dat2,evalf(subs(dat2,solve(p1=pv2(T),T)))):'T2'=evalf(%,3);N:=5:print(`T [K] pv1 [kPa] pv2 [kPa] xv1 xl1 xl0`); pl1:=[[1,T1_/K_]]:pl2:=[[1,T1_/K_]]:for i from 1 to N-1 do T[i]:=(T1_+(T2_-T1_)*(i/N))/K_;pv1__:=evalf(pv1(T[i]*K_))/Pa_;pv2__:=evalf(pv2(T[i]*K_))/Pa_;xv1_[i]:=subs(sol1,p=p1/Pa_,dat,pv1=pv1__,pv2=pv2__,xv1);xl1_[i]:=subs(sol1,p=p1/Pa_,dat,pv1=pv1__,pv2=pv2__,xl1);pl1:=[op(pl1),[xv1_[i],T[i]]];pl2:=[op(pl2),[xl1_[i],T[i]]];xl0_:=solve(subs(xv0=1-xl0,xv1=xv1_[i],xl1=xl1_[i],dat,eqC1),xl0);print(evalf([T[i],pv1__,pv2__,xv1_[i],xl1_[i],xl0_],3));od:pl1:=[op(pl1),[0,T2_/K_]]:pl2:=[op(pl2),[0,T2_/K_]]:pl3:=seq([[0,op(2,op(i,pl1))],[1,op(2,op(i,pl1))]],i=1..N+1):plot({pl1,pl2,pl3=0,[[0.9,0],[0.9,200]],[[1,0],[1,400]],[[0.5,0],[0.5,400]],[[0,subs(dat,T1/K_)],[1,subs(dat,T1/K_)]]},x=0..1,'T'=300..400,color=black); |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
a 100 ºC:.
> | p1_:=evalf(subs(dat,pv1(T1))):'p1'=evalf(%,2);p2_:=evalf(subs(dat,pv2(T1))):'p2'=evalf(%,2);N:=5:pl1_:=[[1,p1_]]:pl2_:=[[1,p1_]]:for i from 1 to N-1 do p[i]:=p1_+(p2_-p1_)*(i/N);xv1_[i]:=subs(sol1,p=p[i],pv1=p1_,pv2=p2_,dat,xv1);xl1_[i]:=subs(sol1,p=p[i],pv1=p1_,pv2=p2_,dat,xl1);pl1_:=[op(pl1_),[xv1_[i],p[i]]];pl2_:=[op(pl2_),[xl1_[i],p[i]]];print(evalf([p[i],xv1_[i],xl1_[i]],3));od:pl1_:=[op(pl1_),[0,p2_]]:pl2_:=[op(pl2_),[0,p2_]]: |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
> | plot(subs(SI0,{pl1_,pl2_,[[1,0],[1,2e6]],[[0.5,0],[0.5,2e6]],[[0,subs(dat,p1/Pa_)],[1,subs(dat,p1/Pa_)]]}),x=0..1,'p'=0..2e6,color=black); |
![]() |
b) Determinar la composición de las fases separadas a la salida.
> | sol1;sol1_:=subs(p=p1,pv1=p1_,pv2=p2_,dat,sol1):evalf(%,2); |
![]() |
![]() |
c) Determinar los flujos molares de las fases separadas a la salida.
> | eqC1;eqC2;sol2_:=solve(subs(sol1_,dat,{eqC1,eqC2}),{xv0,xl0}):evalf(%,2):evalf(%,2);Mm:=x01*M1+x02*M2;Mm_:=subs(dat,M1=M,dat1,M2=M,dat2,Mm):'Mm'=evalf(%,2);mdot=subs(dat,mdot);ndot:=mdot/Mm;ndot_:=subs(dat,mdot/Mm_):'ndot'=evalf(%,3);ndotv:='ndot*xv0';ndotv_:=subs(sol2_,ndot_*xv0):'ndotv'=evalf(%,3);ndotl_:=subs(sol2_,ndot_*xl0):'ndotl'=evalf(%,3); |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
> |
i.e. el 69% del flujo molar es líquido y el 32% gaseoso.