Está en la página 1de 13

Simulacin de la Destilacin Fraccionada

Gonzalo Rund Candia


Universidad de Chile. Facultad de Ciencias Fsicas y Matemticas.
Doctorado en Ciencias de la Ingeniera mencin Ciencia de los Materiales
Av. Blanco Encalada 2008. Santiago- Chile: ggrund@cec.uchile.cl;

La destilacin es un proceso tan antiguo como la civilizacin, es un hecho fcil


de reconocer que si se calienta una mezcla de alcohol y agua, la fase vapor es ms rica
en alcohol que en agua. Actualmente la destilacin en una etapa (alambique) se utiliza
principalmente para producir bebidas alcohlicas, sin embargo, en el siglo XIX se
desarroll la destilacin en varias etapas o fraccionada, optimizando el grado de
separacin en modo superlativo.
El modo de simular ms ampliamente utilizado para este proceso es el grfico o
de grafos. Vamos primeramente a considerar el mtodo de Ponchon y Savarit que es un
mtodo riguroso que requiere datos detallados de entalpa, a diferencia de otros mtodos
como el de McCabe Thiele que slo requieren los datos de equilibrio de concentracin.
El mtodo se basa en los diagramas de entalpa-concentracin y equilibrio de
concentraciones, se utilizar el programa escrito en el compilador de Qbasic[1]
denominado destilar.bas del apndice A.
Ejemplo 1
Se necesita destilar una mezcla de metanol y agua que tiene 40% molar de
metanol. La operacin se llevar a cabo en una columna de destilacin abierta (1
atmsfera de presin), se desea lograr un destilado con 97% molar de metanol, mientras
que el residuo deber tener un 0,8% molar. La mezcla de alimentacin entrar a 41C.
El destilado se licuar completamente y el reflujo se ingresar en su punto de burbuja,
se utilizar una razn de reflujo de 1,7 veces el mnimo.
Mediante el programa destilar.bas calcular:
1. Punto de roco de la mezcla de alimentacin.
2. Punto de burbuja de la mezcla de alimentacin.
3. Entalpa y estado de la mezcla de alimentacin.
4. Etapas ideales ( a reflujo infinito)
5. Reflujo mnimo ( a etapas infinitas)
6. Composicin molar de metanol por platos operando a reflujo infinito.
7. Etapas ideales a 1,7 veces el reflujo mnimo.
7.1. Etapa de alimentacin ptima
7.2. Composicin molar por platos
8. Considerando una eficiencia de Murphree del 90%, el nmero de etapas reales
8.1. Etapa de alimentacin ptima
8.2. Composicin por platos
A continuacin se ir explicando la metodologa para realizar los clculos grficos
siguiendo el funcionamiento del programa. Para los detalles del mtodo mismo se
puede consultar la obra de Treybal [2].

La primera parte del programa pregunta por la mezcla a destilar de las que existen en la
base de datos,
PRINT "Anlisis del proceso de destilacin por el mtodo de Ponchon y Savarit"
LOCATE 5, 1
PRINT "Mezclas en base de datos : (a 1 atmsfera)"
PRINT "
agua-etanol (m1)"
PRINT "
agua-metanol (m2)"
LOCATE 10, 2
INPUT "Ingrese mezcla a destilar ", mez$
WHILE mez$ <> a$
READ a$
WEND
READ N, MB, MA, too
FOR i = 1001 TO N + 1000
READ t(i), x(i), y(i), CL(i), hsol(i), CLA(i), lambdaA(i), CLB(i), lambdaB(i)
Mpr = MA * x(i) + MB * (1 - x(i))
HL(i) = CL(i) * (t(i) - too) * Mpr + hsol(i) * x(i)
HG(i) = y(i) * (CLA(i) * MA * (t(i) - too) + lambdaA(i) * MA) + (1 - y(i)) * (CLB(i) * MB * (t(i) - too) + lambdaB(i) * MB)
NEXT i

Como se puede ver en el listado del programa, al final se encuentra la base de datos, que
consta con los datos de agua-metanol y agua-etanol a 1 atm.(se puede ampliar a
cualquier mezcla binaria). Abajo se detallan los datos para agua-metanol
REM agua-metanol
REM clave de identificacin,N de datos de eq. disponibles, peso m. del menos voltil, peso m. del ms voltil, temp. de ref.
para entalpas
DATA m2,17,18.02,32.04,19.69
REM t,x,y,CL,hsol,CLA,lambdaA,CLB,lambdaB
DATA 100,0,0,3.852,-3000,2.583,1047,2.323,2314
DATA 96.4,0.02,0.134,3.852,-3000,2.583,1047,2.323,2314
DATA 93.5,0.04,0.23,3.852,-3000,2.583,1047,2.323,2314
DATA 91.2,0.06,0.304,3.852,-3000,2.583,1047,2.323,2314
DATA 89.3,0.08,0.365,3.852,-3000,2.583,1047,2.323,2314
DATA 87.7,0.1,0.418,3.852,-3000,2.583,1047,2.323,2314
DATA 84.4,0.15,0.517,3.852,-3000,2.583,1047,2.323,2314
DATA 81.7,0.2,0.579,3.852,-3000,2.583,1047,2.323,2314
DATA 78,0.3,0.665,3.852,-3000,2.583,1047,2.323,2314
DATA 75.3,0.4,0.729,3.852,-3000,2.583,1047,2.323,2314
DATA 73.1,0.5,0.779,3.852,-3000,2.583,1047,2.323,2314
DATA 71.2,0.6,0.825,3.852,-3000,2.583,1047,2.323,2314
DATA 69.3,0.7,0.87,3.852,-3000,2.583,1047,2.323,2314
DATA 67.5,0.8,0.915,3.852,-3000,2.583,1047,2.323,2314
DATA 66,0.9,0.958,3.852,-3000,2.583,1047,2.323,2314
DATA 65,0.95,0.979,3.852,-3000,2.583,1047,2.323,2314
DATA 64.5,1,1,3.852,-3000,2.583,1047,2.323,2314

Al ingresar en este caso m2, el programa calcula con los datos termodinmicos las
masas moleculares promedio y las entalpas del vapor y lquido saturado a diversas
temperaturas de equilibrio.
Con esos datos se construirn los diagramas de entalpa-concentracin para esta mezcla,
adems mediante la subrutina lagrange la cul calcula mediante el mtodo de
interpolacin de lagrange(apndice B) los diversos puntos de las curvas.
lagrange:
REM interpolacin de lagrange
sum = 0
g = 1001
WHILE funx(g) < des * .999
g=g+1
WEND
cont1 = g - 2: cont2 = g + 1
IF cont1 = 1000 OR cont1 = 999 THEN cont1 = 1001: cont2 = 1004
IF cont2 = N + 1001 THEN cont2 = N + 1000
FOR j = cont1 TO cont2
prod = 1
FOR k = cont1 TO cont2
IF k = cont2 AND j = cont2 THEN ban = 1
IF k = j THEN k = k + 1

IF ban = 0 THEN prod = prod * (des - funx(k)) / (funx(j) - funx(k))


NEXT k
ban = 0
sum = sum + prod * funy(j)
NEXT j
res = sum
RETURN

Es as como la siguiente parte del programa pregunta los datos de la temperatura de


alimentacin y las concentraciones molares de metanol en las corrientes de
alimentacin, cabeza y cola. Con estos datos se ubica en el diagrama de concentracinentalpa el punto correspondiente a la alimentacin. En el caso del ejemplo 1, la
alimentacin es lquido subenfriado.
Ingrese temperatura de la alimentacin en C 41
Ingrese fraccin molar del componente ms voltil en la alimentacin .4
Ingrese XD .97
Ingrese XW .008
El punto de roco es : 88.24635 C
El punto de burbuja es : 75.3 C
La alimentacin es lquido subenfriado y su entalpa es :
739.5308 [kJ/kmol]

Alimentacin

Pantalla 1: Clculo grfico de las etapas ideales mnimas para lograr las condiciones requeridas, adems
se entregan los datos de reflujo mnimo y las coordenadas termodinmicas para su clculo.

Como se aprecia en la Pantalla 1, son 6 los platos mnimos de una columna abierta para
lograr la separacin requerida, adems el reflujo mnimo es 0.79.
A continuacin el programa solicita el nmero de veces el mnimo para operar en forma
ms real, ingresando el valor del problema, es decir, 1,7 veces, se tiene,

Pantalla 2: Clculo de las lneas de operacin a reflujo 1.7, como se ve la determinacin es slo de
algunos puntos que luego se almacenan para mediante lagrange interpolar en lneas.

Pantalla 3: Lneas de operacin trazadas, junto con la determinacin de las etapas ideales a 1,7 veces el
reflujo mnimo.

Como se ve en la Pantalla 3, las lneas de operacin fueron trazadas usando la subrutina


de interpolacin de lagrange y posteriormente se realiza el escalamiento de equilibrio
entre los valores requeridos para obtener el nmero de platos ideales, que en este
ejemplo resultan ser 10 platos.
En los ejemplos anteriores los platos operan a 100% de rendimiento, lo que en
ingeniera casi nunca se cumple, por lo que podemos introducir el concepto de
eficiencia de Murphree que no es otra cosa que una fraccin de distancia graficada
desde las lneas de operacin hasta la curva de equilibrio lquido-vapor.

Pantalla 4: Determinacin de los platos reales a partir de una eficiencia de Murphree del 90%.

En nuestro ejemplo, el nmero de platos es 14 para una eficiencia del 90%.


Como se puede apreciar en el ejemplo precedente, mediante un sencillo programa
escrito en basic, es posible simular mediante el mtodo de Ponchon y Savarit, la
destilacin fraccionada para las mezclas binarias cuyas variables termodinmicas
conozcamos o podamos calcular. Cualquiera que haya realizado estas labores mediante
tcnicas manuales, como el papel milimetrado, sabe lo engorroso y largo que resulta,
por lo que la tcnica de simulacin computacional ac es una gran ayuda.

[1] El compilador usado para este programa es el Qbasic 4.5 de Microsoft, se puede
descargar desde http://www.upseros.com/compiladores.php
[2] Treybal, R., Operaciones de Transferencia de Masa, Segunda Edicin, McGrawHill, 1994, ISBN:968-6046-34-8.
Apndice A

Listado Completo programa destilar.bas.


DIM SHARED funx(1500), funy(1500), x(1500), y(1500), HL(1500), HG(1500)
DIM SHARED platx(1000), platy(1000), opa1(1500), opa2(1500), ope1(1500), ope2(1500)
DIM SHARED t(1500), CL(1500), hsol(1500), CLA(1500), lambdaA(1500), CLB(1500), lambdaB(1500)
efi = 1
CLS
PRINT "An lisis del proceso de destilacin por el mtodo de Ponchon y Savarit"
LOCATE 5, 1
PRINT "Mezclas en base de datos : (a 1 atmsfera)"
PRINT "
agua-etanol (m1)"
PRINT "
agua-metanol (m2)"
LOCATE 10, 2
INPUT "Ingrese mezcla a destilar ", mez$
WHILE mez$ <> a$
READ a$
WEND
READ N, MB, MA, too
FOR i = 1001 TO N + 1000
READ t(i), x(i), y(i), CL(i), hsol(i), CLA(i), lambdaA(i), CLB(i), lambdaB(i)
Mpr = MA * x(i) + MB * (1 - x(i))
HL(i) = CL(i) * (t(i) - too) * Mpr + hsol(i) * x(i)
HG(i) = y(i) * (CLA(i) * MA * (t(i) - too) + lambdaA(i) * MA) + (1 - y(i)) * (CLB(i) * MB * (t(i) - too) + lambdaB(i) * MB)
NEXT i
REM menu
CLS
COLOR 3
INPUT " Ingrese temperatura de la alimentacin en C ", tal
INPUT " Ingrese fraccin molar del componente m s vol til en la alimentacin ", xz
INPUT " Ingrese XD ", xd
INPUT " Ingrese XW ", xw
Mpr = MA * xz + MB * (1 - xz)
FOR l = 1001 TO N + 1000
funx(l) = x(l): funy(l) = t(l)
NEXT l
des = xz
GOSUB lagrange
t = res
FOR l = 1001 TO N + 1000
funx(l) = y(l): funy(l) = t(l)
NEXT l
des = xz
GOSUB lagrange
tv = res
FOR l = 1001 TO N + 1000
funx(l) = y(l): funy(l) = CLB(l)
NEXT l
des = xz
GOSUB lagrange
CLB = res
FOR l = 1001 TO N + 1000
funx(l) = x(l): funy(l) = CLA(l)
NEXT l
des = xz
GOSUB lagrange
CLA = res
FOR l = 1001 TO N + 1000
funx(l) = x(l): funy(l) = lambdaA(l)
NEXT l
des = xz
GOSUB lagrange
lambdaA = res
FOR l = 1001 TO N + 1000

funx(l) = x(l): funy(l) = lambdaB(l)


NEXT l
des = xz
GOSUB lagrange
lambdaB = res
FOR l = 1001 TO N + 1000
funx(l) = x(l): funy(l) = CL(l)
NEXT l
des = xz
GOSUB lagrange
CL = res
FOR l = 1001 TO N + 1000
funx(l) = x(l): funy(l) = hsol(l)
NEXT l
des = xz
GOSUB lagrange
hsol = res
LOCATE 12, 1: PRINT "El punto de roco es : "; tv; " C"
LOCATE 13, 1: PRINT "El punto de burbuja es : "; t; " C"
SELECT CASE tal
CASE IS < t
HLF = CL * (tal - too) * Mpr + hsol * xz
LOCATE 15, 1: PRINT "La alimentacin es lquido subenfriado y su entalpa es : "
PRINT HLF; " [kJ/kmol]"
CASE IS > tv
HLF = xz * (CLA * MA * (tal - too) + lambdaA * MA) + (1 - xz) * (CLB * MB * (tal - too) + lambdaB * MB)
LOCATE 15, 1: PRINT "La alimentacin es vapor sobrecalentado y su entalpa es : "
PRINT HLF; " [kJ/kmol]"
CASE t TO tv
LOCATE 14, 1: PRINT "La alimentcin es mezcla lquido-vapor"
frv = 1 / ((tv - tal) / (tal - t) + 1)
LOCATE 15, 1: PRINT "La fraccin molar de vapor en la alimentacin es : "; frv
HLFV = xz * (CLA * MA * (tv - too) + lambdaA * MA) + (1 - xz) * (CLB * MB * (tv - too) + lambdaB * MB)
HLFL = CL * (t - too) * Mpr + hsol * xz
HLF = frv * HLFV + (1 - frv) * HLFL
LOCATE 17, 1: PRINT "La entalpa de la alimentacin es : "; HLF; " [kJ/kmol]"
END SELECT
LOCATE 20, 1: INPUT "presione enter para continuar", y$
REM estudio etapas ideales
colpan = 3
GOSUB diagramas
COLOR 5: PSET (212 * (xz + 1) + 215, 250 - 200 * HLF / HG(1001))
COLOR 3
i=0
WHILE xp < xz * 1000
des = i
GOSUB xHL
GOSUB lagrange
HLP = res
GOSUB xy
GOSUB lagrange
des = res
GOSUB yHG
GOSUB lagrange
IF des <> i THEN pendle = ((res - HLP) / (des - i)): xp = des + (HLF - res) / pendle
LINE (212 * (des / 1000 + 1) + 215, 250 - 200 * res / HG(1001))-(212 * (i / 1000 + 1) + 215, 250 - 200 * HLP / HG(1001))
i=i+1
WEND
HMD = pendle * ((1000 * xd) - des) + res
HMW = pendle * (1000 * xw - des) + res
LINE (212 * (xd + 1) + 215, 250 - 200 * HMD / HG(1001))-(212 * (xw + 1) + 215, 250 - 200 * HMW / HG(1001))
COLOR 5: PSET (212 * (xz + 1) + 215, 250 - 200 * HLF / HG(1001))
COLOR 3
xp = 1000 * xd
yp = xp
ideales:
i=0
res = 0
WHILE yp > res
des = i
GOSUB xy
GOSUB lagrange
i=i+1
WEND
i=i-2
LINE (212 * (xp / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)

LINE (212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 675 - 212 * (i / 1000 + 1))
platx(cont) = i: platy(cont) = xp
cont = cont + 1
etap = etap + 1
IF 1000 * xw < i THEN xp = i: yp = xp: GOSUB ideales
etap = etap - 1 + (xp - 1000 * xw) / (xp - i)
REM reflujo minimo
GOSUB yHG
des = 1000 * xd
GOSUB lagrange
HGD = res
GOSUB xHL
GOSUB lagrange
HLD = res
des = 1000 * xw
GOSUB lagrange
HLW = res
remin = (HMD - HGD) / (HGD - HLD)
PRINT "Etapas ideales (a reflujo infinito) : "; etap
PRINT "Reflujo mnimo (a etapas infinitas) : "; remin
PRINT "Ordenada HD + QC/D
[kJ/kmol] : "; HMD
PRINT "Ordenada HW - QB/W
[kJ/kmol] : "; HMW
PRINT "QC/D
[kJ/kmol] : "; HMD - HLD
PRINT "QB/W
[kJ/kmol] : "; -HMW + HLW
PRINT
PRINT "Composicin molar del componente "
PRINT "m s vol til, por platos:"
FOR i = 0 TO cont - 1
PRINT "plato "; i + 1; " x= "; platx(i) / 1000; " y= "; platy(i) / 1000
NEXT i
PRINT
PRINT "Desea operar con un reflujo distinto al mnimo (s/n)"
INPUT "", y$
IF y$ = "n" THEN END
REM etapas reales
CLS
colpan = 5
GOSUB diagramas
COLOR 3
PRINT "Ingrese nmero de veces del"
INPUT "reflujo mnimo que utilizar ", fac
WHILE fac <= 1
LOCATE 4, 1
PRINT "debe ser mayor que 1, de lo contrario"
INPUT "se requerir n infinitas etapas
", fac
WEND
Q = fac * remin * (HGD - HLD) + HGD
pendop = (Q - HLF) / (1000 * (xd - xz))
QW = pendop * (1000 * (xw - xd)) + Q
kx = 0
xp = 1: xpp = 0
WHILE xp > xpp
des = kx
GOSUB xHL
GOSUB lagrange
xp = res
xpp = pendop * (kx - 1000 * xd) + Q
kx = kx + 1
WEND
xt = (kx - 2) / 1000
LINE (212 * (xd + 1) + 215, 250 - 200 * Q / HG(1001))-(212 * (xw + 1) + 215, 250 - 200 * QW / HG(1001))
var1 = 1001
inter = 1000 * (xd - xw) / (N - 1)
i = 1000 * xw - inter
WHILE var1 <= 1000 + N
i = i + inter
des = i
GOSUB xHL
GOSUB lagrange
var = res
pen1 = (Q - var) / (xd * 1000 - i)
COLOR 5
LINE (212 * (xd + 1) + 215, 250 - 200 * Q / HG(1001))-(212 * (i / 1000 + 1) + 215, 250 - 200 * var / HG(1001))
kx = i - 1
xp = 1: xpp = 0
WHILE xp > xpp

des = kx
GOSUB yHG
GOSUB lagrange
xp = res
xpp = (kx - 1000 * xd) * pen1 + Q
kx = kx + 1
WEND
COLOR 3: PSET (212 * (i / 1000 + 1) + 215, 675 - 212 * ((kx - 2) / 1000 + 1))
COLOR 5
ope1(var1) = i
ope2(var1) = kx - 2
var1 = var1 + 1
WEND
var1 = 1001
i = 1000 * xw - inter
WHILE var1 <= 1000 + N
i = i + inter
des = i
GOSUB yHG
GOSUB lagrange
var = res
pen1 = (QW - var) / (xw * 1000 - i)
COLOR 5
LINE (212 * (xw + 1) + 215, 250 - 200 * QW / HG(1001))-(212 * (i / 1000 + 1) + 215, 250 - 200 * var / HG(1001))
kx = i + 1
xp = 0: xpp = 1
WHILE xp < xpp
des = kx
GOSUB xHL
GOSUB lagrange
xp = res
xpp = pen1 * (kx - 1000 * xw) + QW
kx = kx - 1
WEND
COLOR 3: PSET (212 * ((kx + 2) / 1000 + 1) + 215, 675 - 212 * (i / 1000 + 1))
COLOR 5
opa1(var1) = kx + 2
opa2(var1) = i
var1 = var1 + 1
WEND
LOCATE 30, 1
COLOR 3: INPUT "presione enter para continuar ", y$
CLS
colpan = 9
GOSUB diagramas
FOR l = 1000 * xw TO ope1(1000 + N)
FOR i = 1001 TO 1000 + N
funx(i) = ope1(i): funy(i) = ope2(i)
NEXT i
des = l
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT l
FOR l = 1000 * xw TO opa1(1000 + N)
FOR i = 1001 TO 1000 + N
funx(i) = opa1(i): funy(i) = opa2(i)
NEXT i
des = l
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT l
COLOR 2
cont = 0: etap = 0
xp = 1000 * xd
yp = xp
reales:
i=0
res = 0
WHILE yp > res
des = i
GOSUB xy
GOSUB lagrange
i=i+1
WEND
i=i-2
LINE (212 * (xp / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)

platx(cont) = i: platy(cont) = yp
cont = cont + 1
etap = etap + 1
IF 1000 * xw < i THEN
xp = i
IF i > xt * 1000 THEN
FOR l = 1001 TO 1000 + N
funx(l) = ope1(l): funy(l) = ope2(l)
NEXT l
des = i
GOSUB lagrange
ELSEIF i <= xt * 1000 THEN
FOR l = 1001 TO 1000 + N
funx(l) = opa1(l): funy(l) = opa2(l)
NEXT l
des = i
ban2 = ban2 + 1
GOSUB lagrange
END IF
LINE (212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 675 - 212 * (res / 1000 + 1))
yp = res
IF ban2 = 1 THEN etapop = etap
GOSUB reales
END IF
etap = etap - 1 + (xp - 1000 * xw) / (xp - i)
COLOR 3
PRINT "Etapas ideales
: "; etap
PRINT "Etapa de alimentacin ptima : "; etapop
PRINT "Ordenada HD + QC/D
[kJ/kmol] : "; Q
PRINT "Ordenada HW - QB/W
[kJ/kmol] : "; QW
PRINT "QC/D
[kJ/kmol] : "; Q - HLD
PRINT "QB/W
[kJ/kmol] : "; -QW + HLW
PRINT
INPUT "presione enter, para ver composicin por platos ", y$
PRINT
PRINT "Composicin molar del componente "
PRINT "m s vol til, por platos:"
FOR i = 0 TO cont - 1
PRINT "plato "; i + 1; " x= "; platx(i) / 1000; " y= "; USING ".###"; platy(i) / 1000
NEXT i
PRINT
PRINT
PRINT "desea operar con una eficiencia de Murphree"
INPUT "distinta de 100% (s/n) ", y$
IF y$ = "n" THEN END
REM eficiencias de etapa
colpan = 2
GOSUB diagramas
FOR l = 1000 * xw TO ope1(1000 + N)
FOR i = 1001 TO 1000 + N
funx(i) = ope1(i): funy(i) = ope2(i)
NEXT i
des = l
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT l
FOR l = 1000 * xw TO opa1(1000 + N)
FOR i = 1001 TO 1000 + N
funx(i) = opa1(i): funy(i) = opa2(i)
NEXT i
des = l
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT l
COLOR 3
INPUT "Ingrese eficiencia de los platos (sin %) ", efi
COLOR 7
REM curva eq.
LINE (427, 251)-(639, 463), , B
LINE (427, 463)-(639, 251)
GOSUB xy
FOR i = funx(1001) TO funx(1000 + N)
des = i
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT i

10

cont = 0: etap = 0
ban2 = 0
xp = 1000 * xd
yp = xp
reales2:
i=0
res = 0
WHILE yp > res
des = i
GOSUB xy
GOSUB lagrange
i=i+1
WEND
i=i-2
LINE (212 * (xp / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)
platx(cont) = i: platy(cont) = yp
cont = cont + 1
etap = etap + 1
IF 1000 * xw < i THEN
xp = i
IF i > xt * 1000 THEN
FOR l = 1001 TO 1000 + N
funx(l) = ope1(l): funy(l) = ope2(l)
NEXT l
des = i
GOSUB lagrange
ELSEIF i <= xt * 1000 THEN
FOR l = 1001 TO 1000 + N
funx(l) = opa1(l): funy(l) = opa2(l)
NEXT l
des = i
ban2 = ban2 + 1
GOSUB lagrange
END IF
LINE (212 * (i / 1000 + 1) + 215, 463 - 212 * yp / 1000)-(212 * (i / 1000 + 1) + 215, 675 - 212 * (res / 1000 + 1))
yp = res
IF ban2 = 1 THEN etapop = etap
GOSUB reales2
END IF
etap = etap - 1 + (xp - 1000 * xw) / (xp - i)
COLOR 3
PRINT "Etapas reales
: "; etap
PRINT "Etapa de alimentacin ptima : "; etapop
PRINT
INPUT "presione enter, para ver composicin por platos ", y$
PRINT
PRINT "Composicin molar del componente "
PRINT "m s vol til, por platos:"
FOR i = 0 TO cont - 1
PRINT "plato "; i + 1; " x= "; platx(i) / 1000; " y= "; USING ".###"; platy(i) / 1000
NEXT i
END

REM subrutinas
diagramas:
CLS
SCREEN 12
COLOR colpan
REM curva eq.
LINE (427, 251)-(639, 463), , B
LINE (427, 463)-(639, 251)
GOSUB xy
FOR i = funx(1001) TO funx(1000 + N)
des = i
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 463 - 212 * res / 1000)
NEXT i
REM entalpia composicion
LINE (427, 0)-(427, 250)
LINE (639, 0)-(639, 250)
GOSUB xHL
FOR i = funx(1001) TO funx(1000 + N)
des = i

11

GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 250 - 200 * res / HG(1001))
NEXT i
GOSUB yHG
FOR i = funx(1001) TO funx(1000 + N)
des = i
GOSUB lagrange
PSET (212 * (des / 1000 + 1) + 215, 250 - 200 * res / HG(1001))
NEXT i
RETURN
lagrange:
REM interpolacion de lagrange
sum = 0
g = 1001
WHILE funx(g) < des * .999
g=g+1
WEND
cont1 = g - 2: cont2 = g + 1
IF cont1 = 1000 OR cont1 = 999 THEN cont1 = 1001: cont2 = 1004
IF cont2 = N + 1001 THEN cont2 = N + 1000
FOR j = cont1 TO cont2
prod = 1
FOR k = cont1 TO cont2
IF k = cont2 AND j = cont2 THEN ban = 1
IF k = j THEN k = k + 1
IF ban = 0 THEN prod = prod * (des - funx(k)) / (funx(j) - funx(k))
NEXT k
ban = 0
sum = sum + prod * funy(j)
NEXT j
res = sum
RETURN
xy:
FOR l = 1001 TO N + 1000
funx(l) = 1000 * x(l): funy(l) = (1000 * (y(l) - x(l))) * efi + 1000 * x(l)
PSET (212 * (funx(l) / 1000 + 1) + 215, 463 - 212 * funy(l) / 1000)
NEXT l
RETURN
xHL:
FOR l = 1001 TO N + 1000
funx(l) = 1000 * x(l): funy(l) = HL(l)
PSET (212 * (funx(l) / 1000 + 1) + 215, 250 - 200 * funy(l) / HG(1001))
NEXT l
RETURN
yHG:
FOR l = 1001 TO N + 1000
funx(l) = 1000 * y(l): funy(l) = HG(l)
PSET (212 * (funx(l) / 1000 + 1) + 215, 250 - 200 * funy(l) / HG(1001))
NEXT l
RETURN
REM agua-etanol
REM clave de identificacin,N de datos de eq. disponibles, peso m. del menos vol til, peso m. del m s vol til, temp. de ref.
para entalpas
DATA m1,16,18.02,46,19.69
REM tC,x,y,CL(kJ/kg K),hsol(KJ/Kmol A),CLA,lambdaA,CLB,lambdaB
DATA 100,0,0,4.186,0,1.6,627.6,2.323,2314
DATA 95.5,0.019,0.17,4.186,0,1.6,627.6,2.323,2314
DATA 89,0.0721,0.3891,4.186,0,1.6,627.6,2.323,2314
DATA 86.7,0.0966,0.4375,4.186,0,1.6,627.6,2.323,2314
DATA 85.3,.1238,.4704,4.186,0,1.6,627.6,2.323,2314
DATA 84.1,0.1661,0.5089,4.186,0,1.6,627.6,2.323,2314
DATA 82.7,0.2337,0.5445,4.186,0,1.6,627.6,2.323,2314
DATA 82.3,0.2608,0.558,4.186,0,1.6,627.6,2.323,2314
DATA 81.5,0.3273,0.5826,4.186,0,1.6,627.6,2.323,2314
DATA 80.7,.3965,.6122,4.186,0,1.6,627.6,2.323,2314
DATA 79.8,0.5079,0.6564,4.186,0,1.6,627.6,2.323,2314
DATA 79.7,0.5198,0.6599,4.186,0,1.6,627.6,2.323,2314
DATA 79.3,0.5732,0.6841,4.186,0,1.6,627.6,2.323,2314
DATA 78.74,0.6763,0.7385,4.186,0,1.6,627.6,2.323,2314
DATA 78.41,.7472,.7815,4.186,0,1.6,627.6,2.323,2314
DATA 78.15,.8943,.8943,4.186,0,1.6,627.6,2.323,2314
REM agua-metanol
REM clave de identificacin,N de datos de eq. disponibles, peso m. del menos vol til, peso m. del m s vol til, temp. de ref.
para entalpas
DATA m2,17,18.02,32.04,19.69

12

REM t,x,y,CL,hsol,CLA,lambdaA,CLB,lambdaB
DATA 100,0,0,3.852,-3000,2.583,1047,2.323,2314
DATA 96.4,0.02,0.134,3.852,-3000,2.583,1047,2.323,2314
DATA 93.5,0.04,0.23,3.852,-3000,2.583,1047,2.323,2314
DATA 91.2,0.06,0.304,3.852,-3000,2.583,1047,2.323,2314
DATA 89.3,0.08,0.365,3.852,-3000,2.583,1047,2.323,2314
DATA 87.7,0.1,0.418,3.852,-3000,2.583,1047,2.323,2314
DATA 84.4,0.15,0.517,3.852,-3000,2.583,1047,2.323,2314
DATA 81.7,0.2,0.579,3.852,-3000,2.583,1047,2.323,2314
DATA 78,0.3,0.665,3.852,-3000,2.583,1047,2.323,2314
DATA 75.3,0.4,0.729,3.852,-3000,2.583,1047,2.323,2314
DATA 73.1,0.5,0.779,3.852,-3000,2.583,1047,2.323,2314
DATA 71.2,0.6,0.825,3.852,-3000,2.583,1047,2.323,2314
DATA 69.3,0.7,0.87,3.852,-3000,2.583,1047,2.323,2314
DATA 67.5,0.8,0.915,3.852,-3000,2.583,1047,2.323,2314
DATA 66,0.9,0.958,3.852,-3000,2.583,1047,2.323,2314
DATA 65,0.95,0.979,3.852,-3000,2.583,1047,2.323,2314
DATA 64.5,1,1,3.852,-3000,2.583,1047,2.323,2314

Apndice B

La interpolacin de lagrange genera un polinomio de grado n, que permite interpolar


cuando se conocen n pares ordenados de puntos que pertenecen a una curva dada, es as
como, si conocemos n puntos de una curva,
P0 = {x0 , y0 }; P1 = {x1 , y1};...; Pn = {xn , yn } es posible calcular un polinomio de gardo n que
pase por todos los puntos y del cual podemos calcular cualquier y que pertenezca a este
polinomio para un x dado, mediante la siguiente ecuacin,
n

y ( x ) = yi
i =0

j =n

x xj

j =0, j i

xi x j

13

También podría gustarte