Sie sind auf Seite 1von 9

Multicomponent Absorption

Numerical solution
Copyright Brian G. Higgins (2010)

Introduction
In this notebook we consider multicomponent absorption in a tray tower. Each tray is assumed to
operate at 100% efficiency. That is, the vapor and liquid streams leaving each tray are in thermodynamic equilibrium. The traditional method for solving such problems is based on the Kremser approximation (ref. 1) first published in 1930!
The example we will consider is adapted from Seader and Henley, Chapter 5: Problem 5.18. The inlet
gas stream has six hydrocarbon components. The mole fractions of methane HC1 L, ethane (C2 ),
propane ( C3 ), nButane ( C4 ) and n-pentane ( C5 ) are
C1 = 0.949, C2 = 0.042, C3 = 0.007, C4 = 0.001, C5 = 0.001
The inlet gas flow rate is V@N + 1D = 106 lb mol/day we are also given the K-values for the 5 species in
the inlet stream:
K@1D = 2.85, K@2D = 0.36, K@3D = 0.066, K@4D = 0.017, K@5D = 0.004
The absorbent is n-heptane which at the operating conditions of the column is a liquid oil, denoted by
C7 We will assume that the n-heptane is barely stripped into the gas phase and has a K value of
0.000001. The inlet L-phase is pure C7 . The design specifications are to be based on the key component C2 : The column must be designed to remove 50% of C2 in the inlet gas stream. Our goal is to
determine the compositions of all the inlet/exit streams to the absorber. We are told that the column has
5 equilibrium stages.

Formulation
For this problem we have 6 species. We will denote the species as
C1 species 1, C2 species 2, , C5 species 5, C7 species 6
For each equilibrium tray we have 6 species balance equations
{@i, j - 1D + u@i, j + 1D = {@i, jD + u@i, jD,
j = 1, 2, , 10, i = 1, 2, , 6

(1)

where {@i, jDis the molar flow rate of species i in the absorbent phase leaving stage j, and u@i, jD
is the molar flow rate of species i in the gas phase leaving stage j. For the equilibrium stage we have
the following relationships
{@i, jD = A@i, jD u@i, jD, j = 1, 2, , 10, i = 1, 2, , 6
where A@i, jD is the absorption factor for the i

th

(2)

species at tray j. The absorption factor is defined as

MultiCompAbs.nb

A@i, jD =

L@jD

(3)

K@iD V@jD

where L@jD, V@jD are the total molar flows rates of absorbent and gas leaving tray j:
6

L@jD = {@i, jD,

V@jD = u@i, jD

i=1

(4)

i=1

Thus for each equilibrium tray we have 12 equations and 24 unknowns. This means that to solve the set
of equation at the tray level we need to specify 12 additional variables. Suppose for stage 1 we know
the composition of absorbent stream 0
{@i, 0D = ai , i = 1, 2, , 6

(5)

and the composition of the exit gas stream 1


u@i, 1D = bi , i = 1, 2, , 6

(6)

then we can use (1)-(4) to solve for {@i, 1D and u@i, 2D. This process can then be repeated to find
{@i, 2D and u@i, 3D, and so on until we reach stage 5. Note that at each stage we have to solve a
nonlinear set of equations, given by (2).
Unfortunately the approach described above will not work as the compositions in the exiting gas stream
are not known. We also do not know the molar flow rate of the entering absorbent. For our problem the
only information we are given for the entering absorbent stream is that it is pure C7 . On the exiting gas
stream all we are given is that u@2, 1D = 0.5 u@2, 6D. A Degree of Freedom analysis shows that we
cannot start our calculations at the top of the column.
The obvious procedure then is to solve the full set of nonlinear equations using the information given at
the inlet gas stream, information about the inlet absorbent stream, and the design specification , i.e.
u@2, 1D = 0.5 u@2, 6D. A Degree of Freedom analysis shows that for 5 trays we have 60 equations (
for each tray we have 6 species balances and 6 equilibrium relations) for 72 unknowns associated with
the 12 streams. Based on the information given we have 12 additional equations. Thus the problem is
well posed and we can solve for all the unknown variables.
First we will analyze this system using the approximate method put forward by Kremser in 1930

Approximate Solution: Kremser Method


Recall that for the key component (species 2) we have the relationship ( see previous notebook for
notation)
ANe =

Lk0 + Hr - Ae L UkN+1
Lk0 - Ae H1 - rL UkN+1

(7)

In this expression Ae is the effective absorption factor( see definition below) , r is the recovery factor for
the key component, Lk0 is the molar flow rate of the key component in the entering absorbent stream,

and UkN+1 is the molar flow rate of the key component in the entering gas stream where N is the number
of equilibrium trays.
In our problem there is no ethane HC2 L in the entering L-phase; thus Lk0 =0 so
ANe =

Hr - Ae L UkN+1
Ae Hr - 1L UkN+1

Hr - Ae L
Ae Hr - 1L

Since we are given r, N and UkN+1 we can solve this expression for Ae . We will use Mathematica to
solve the equation. Note that there is a trivial root Ae = 1

(8)

MultiCompAbs.nb

Since we are given r, N and UkN+1 we can solve this expression for Ae . We will use Mathematica to
solve the equation. Note that there is a trivial root Ae = 1
Remove@eqns, A, Y, V, L, u, {, K, b, A, ND;
eqns = :A5 ==

H0.5 - AL
A H0.5 - 1L

>;

Solve@eqns, AD
88A - 1.01184 - 0.683959 <, 8A - 1.01184 + 0.683959 <,
8A 0.257507- 1.11879 <, 8A 0.257507+ 1.11879 <, 8A 0.50866<, 8A 1.<<

The appropriate real root is Ae = 0.50866. We can use the definition for Ae to determine an effective
flow rate. Recall the definition for Ae for the key component
Ae =

Le

(9)

K@2D Ve

where K@2D is the K-value for the key component. As a first approximation we take Le = L@0D and
Ve = V@N + 1D thus
L@0D = Ae K@2D V@N + 1D = H0.50866L H0.36L I106 M = 183 118 lb mol day
The next set of calculations involves determining the composition of the outlet stream V@1D. From the
Kremser analysis we showed that the molar flow rate of species i in the V@N + 1D stream is related to
the molar flow rate in the V@1D stream by
UiN+1 = biN Ui1 - biN-1 Li0

(10)

We can use our conventional notation to write


u@i, 1D =

1
biN

u@i, N + 1D +

biN-1
biN

{@i, 0D

(11)

where for the ith species


biN

1 - IAie M

N+1

1 - Aie

(12)

We will use Mathematica to perform the calculations


First we define a function to hold all the mole fractions of the entering gas phase and define variables
for the inlet gas flow rate (V@N + 1D) and the liquid flow rate L@0Ddetermined previously
N = 5;
y@i_, N + 1D := 80.949, 0.042, 0.007, 0.001, 0.001, 0<@@iDD
V@N + 1D = 106 ;
L@0D = 183 118;

Next we define functions to hold all the K-values, the absorption factors and the b values. Note that we
have assigned an extremely small value for the K[6] so that we can compare with the full analytical
solution
u@i_, N + 1D := y@i, N + 1D V@N + 1D
K@i_D := 82.85, 0.36, 0.066, 0.17, 0.004, 0.0000001<@@iDD
{@i_, 0D := 80, 0, 0, 0, 0, L@0D<@@iDD
Ae @i_D := L@0D HK@iD V@N + 1DL
bN_ @i_D := I1 - Ae @iDN+1 M H1 - Ae @iDL

MultiCompAbs.nb

Here are the molar flow rates for the species in the exit gas stream V@1D
TableBu@i, 1D =

1
b5 @iD

u@i, N + 1D +

b4 @iD
b5 @iD

{@i, 0D, 8i, 1, 6<F

9888 025., 21 000., 27.2903, 137.294, 4.86467 10-6 , 183 118.=


be @5D
2.05564 108

Note that Ae @5D = 45.7795 so that b5 @5D = 2.05564 108 . This means that the molar flow rate of C5
in the exit gas phase is negligible. Its K- value suggests that it is readily absorbed into the L-phase. The
same applies to the absorbent, species 6. The total molar flow of the exit gas stream in lb mol/day is
6

V@1D = u@i, 1D
i=1

1.09231 106

Next we determine the molar flow rates of the species in the liquid stream. From an overall species
balance we have the relation
UiN+1 = LiN + Ui1 - Li0 , i = 1, 2, 6

or in terms of our conventional notation


{@i, ND = u@i, N + 1D - u@i, 1D + {@i, 0D

Recall that {@i, 0D = 0 for all gas species (i = 1, 2, 3, , 6). Here is the calculation
Table@{@i, ND = u@i, N + 1D - u@i, 1D + {@i, 0D, 8i, 1, 6<D
860 975., 21 000., 6972.71, 862.706, 1000., 0.<

The above list is the molar flow rates for the 6 species in exit L-phase. The total flow rate of the L-phase
in lb mol/day is
6

L@1D = {@i, ND
i=1

90 810.5

In the next section we will compare the approximate solution to the numerical solution for all 60
equations

Numerical Solution
Let us define the following set of Mathematica equations for the jth equilibrium stage
Remove@{, u, KD
speciesBalanceEqns@j_D := Table@{@i, j - 1D + u@i, j + 1D {@i, jD + u@i, jD, 8i, 1, 6<D

Here are the species balance equations for stage 1

MultiCompAbs.nb

speciesBalanceEqns@1D
8{@1, 0D + u@1, 2D {@1, 1D + u@1, 1D, {@2, 0D + u@2, 2D {@2, 1D + u@2, 1D,
{@3, 0D + u@3, 2D {@3, 1D + u@3, 1D, {@4, 0D + u@4, 2D {@4, 1D + u@4, 1D,
{@5, 0D + u@5, 2D {@5, 1D + u@5, 1D, {@6, 0D + u@6, 2D {@6, 1D + u@6, 1D<

Thus for 5 trays we have


TotalSpeciesBalanceEqns = Flatten@Table@speciesBalanceEqns@iD, 8i, 1, 5<DD
8{@1, 0D + u@1, 2D {@1, 1D + u@1, 1D, {@2, 0D + u@2, 2D {@2, 1D + u@2, 1D,
{@3, 0D + u@3, 2D {@3, 1D + u@3, 1D, {@4, 0D + u@4, 2D {@4, 1D + u@4, 1D,
{@5, 0D + u@5, 2D {@5, 1D + u@5, 1D, {@6, 0D + u@6, 2D {@6, 1D + u@6, 1D,
{@1, 1D + u@1, 3D {@1, 2D + u@1, 2D, {@2, 1D + u@2, 3D {@2, 2D + u@2, 2D,
{@3, 1D + u@3, 3D {@3, 2D + u@3, 2D, {@4, 1D + u@4, 3D {@4, 2D + u@4, 2D,
{@5, 1D + u@5, 3D {@5, 2D + u@5, 2D, {@6, 1D + u@6, 3D {@6, 2D + u@6, 2D,
{@1, 2D + u@1, 4D {@1, 3D + u@1, 3D, {@2, 2D + u@2, 4D {@2, 3D + u@2, 3D,
{@3, 2D + u@3, 4D {@3, 3D + u@3, 3D, {@4, 2D + u@4, 4D {@4, 3D + u@4, 3D,
{@5, 2D + u@5, 4D {@5, 3D + u@5, 3D, {@6, 2D + u@6, 4D {@6, 3D + u@6, 3D,
{@1, 3D + u@1, 5D {@1, 4D + u@1, 4D, {@2, 3D + u@2, 5D {@2, 4D + u@2, 4D,
{@3, 3D + u@3, 5D {@3, 4D + u@3, 4D, {@4, 3D + u@4, 5D {@4, 4D + u@4, 4D,
{@5, 3D + u@5, 5D {@5, 4D + u@5, 4D, {@6, 3D + u@6, 5D {@6, 4D + u@6, 4D,
{@1, 4D + u@1, 6D {@1, 5D + u@1, 5D, {@2, 4D + u@2, 6D {@2, 5D + u@2, 5D,
{@3, 4D + u@3, 6D {@3, 5D + u@3, 5D, {@4, 4D + u@4, 6D {@4, 5D + u@4, 5D,
{@5, 4D + u@5, 6D {@5, 5D + u@5, 5D, {@6, 4D + u@6, 6D {@6, 5D + u@6, 5D<

We can also define a function that generates the equilibrium relations for each stage,
equilEqns@j_D := TableB{@i, jD

I6k = 1 {@k, jDM


K@iD 6k = 1 u@k, jD

u@i, jD, 8i, 1, 6<F

Here are the equilibrium equations for stage 1


equilEqns@1D
:{@1, 1D
{@2, 1D
{@3, 1D
{@4, 1D
{@5, 1D
{@6, 1D

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@1, 1D


K@1D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@2, 1D


K@2D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@3, 1D


K@3D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@4, 1D


K@4D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@5, 1D


K@5D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

H{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1DL u@6, 1D


K@6D Hu@1, 1D + u@2, 1D + u@3, 1D + u@4, 1D + u@5, 1D + u@6, 1DL

,
,
,
,
,
>

Thus for 5 trays we have (output suppressed)


TotalEquilEqns = Flatten@Table@equilEqns@iD, 8i, 1, 5<DD;

We also have a process equation that relates u@2, 6D to u@2, 1Dbased on the specified recovery
factor for species 2.

MultiCompAbs.nb

processeqns = 8u@2, 1D 0.5 u@2, 6D<;

We are also given a set of initial data: compositions of the inlet gas stream, K factors for each species,
and that the absorbent is pure C7 . These conditions can be expressed as a set of replacement rules
initData = 8{@1, 0D 0, {@2, 0D 0, {@3, 0D 0, {@4, 0D 0,
{@5, 0D 0, u@1, 6D -> 949 000., u@2, 6D -> 42 000., u@3, 6D -> 7000.,
u@4, 6D -> 1000., u@5, 6D -> 1000., u@6, 6D 0, K@1D -> 2.85, K@2D -> 0.36,
K@3D -> 0.066, K@4D -> 0.17, K@5D -> 0.004, K@6D -> 0.0000001<;

The reason for using replacement rules to specify the initial data is that then our program can be
readily extended to handle new initial data. We can now combine all the equations that we have generated and then use the initial data to set known variables .
systemEqns = Join@processeqns, TotalEquilEqns, TotalSpeciesBalanceEqnsD . initData;

We have therefore
Length@systemEqnsD
61

equations for the 61 unknowns given below


unknownVar = Join@8{@6, 0D<, Flatten@Table@{@i, jD, 8j, 1, 5<, 8i, 1, 6<DD,
Flatten@Table@u@i, jD, 8j, 1, 5<, 8i, 1, 6<DDD
8{@6, 0D, {@1, 1D, {@2, 1D, {@3, 1D, {@4, 1D, {@5, 1D, {@6, 1D, {@1, 2D,
{@2, 2D, {@3, 2D, {@4, 2D, {@5, 2D, {@6, 2D, {@1, 3D, {@2, 3D, {@3, 3D, {@4, 3D,
{@5, 3D, {@6, 3D, {@1, 4D, {@2, 4D, {@3, 4D, {@4, 4D, {@5, 4D, {@6, 4D, {@1, 5D,
{@2, 5D, {@3, 5D, {@4, 5D, {@5, 5D, {@6, 5D, u@1, 1D, u@2, 1D, u@3, 1D, u@4, 1D,
u@5, 1D, u@6, 1D, u@1, 2D, u@2, 2D, u@3, 2D, u@4, 2D, u@5, 2D, u@6, 2D,
u@1, 3D, u@2, 3D, u@3, 3D, u@4, 3D, u@5, 3D, u@6, 3D, u@1, 4D, u@2, 4D, u@3, 4D,
u@4, 4D, u@5, 4D, u@6, 4D, u@1, 5D, u@2, 5D, u@3, 5D, u@4, 5D, u@5, 5D, u@6, 5D<
Length@unknownVarD
61

We can solve the system of 61 nonlinear equations and 61 unknowns using Newton's method. The
tricky part is finding initial guesses for all 61 equations. The approach we have taken is to solve the
system of equations for a one or two stages, and then use these values for all the other variables. Thus
initialGuess = 8176 381, 106 429, 21 000., 5915., 679., 10.,
176 381, 106 429, 21 000., 5915., 679., 10., 176 381, 106 429, 21 000.,
5915., 679., 10., 176 381, 106 429, 21 000., 5915., 679., 10.,
176 381, 106 429, 21 000., 5915., 679., 10., 176 381, 842 570., 21 000.,
1084., 320., 10.9, 0.048994, 842 570., 21 000., 1084., 320., 10.9, 0.048994,
842 570., 21 000., 1084., 320., 10.9, 0.048994 , 842 570., 21 000., 1084.,
320., 10.9, 0.048994, 842 570., 21 000., 1084., 320., 10.9, 0.048994 <;

Note that all the {@i, jD and u@i, j D values are the same for each value of j. The final task is to use
FindRoot to solve the system of equations. The only tricky part is to program Mathematica to insert all
the initial guesses into FindRoot. Recall that the syntax for FindRoot for solving n equations in terms of
n unknowns is
FindRootA8eqn1 , eqn2 , , eqnn <, 9x1 , x01 =, 9x2 , x02 =, , 9xn , x0n =E
The following function does this task

the initial guesses into FindRoot. Recall that the syntax for FindRoot for solving n equations in terms of
n unknowns is
MultiCompAbs.nb

FindRootA8eqn1 , eqn2 , , eqnn <, 9x1 ,

x01 =,

9x2 ,

x02 =,

, 9xn ,

x0n =E

The following function does this task


myFindRoot@eqns, Evaluate@Apply@Sequence, Transpose@88x1, x2<, 8x10, x20<<DDDD
myFindRootB:A5 -

2. H0.5- AL
A

>, 8x1, x10<, 8x2, x20<F

Thus for our system we have (it may take awhile to run on your computer)
sol = FindRoot@systemEqns,
Evaluate@Apply@Sequence, Transpose@8unknownVar, initialGuess<DDDD
9{@6, 0D 94 341.2, {@1, 1D 54 650.3, {@2, 1D 10 251.2,
{@3, 1D 82.5663, {@4, 1D 149.437, {@5, 1D 0.000249293, {@6, 1D 94 341.2,
{@1, 2D 56 407., {@2, 2D 14 831.2, {@3, 2D 294.003, {@4, 2D 295.464,
{@5, 2D 0.0108902, {@6, 2D 94 341.2, {@1, 3D 57 630.1, {@2, 3D 17 341.1,
{@3, 3D 857.972, {@4, 3D 450.968, {@5, 3D 0.474591, {@6, 3D 94 341.2,
{@1, 4D 59 071.1, {@2, 4D 18 995.1, {@3, 4D 2402.31, {@4, 4D 624.789,
{@5, 4D 21.1614, {@6, 4D 94 341.2, {@1, 5D 62 700.6, {@2, 5D 21 000.,
{@3, 5D 6968.99, {@4, 5D 855.44, {@5, 5D 1000., {@6, 5D 94 341.1,
u@1, 1D 886 299., u@2, 1D 21 000., u@3, 1D 31.0091, u@4, 1D 144.56,
u@5, 1D 5.67431 10-6 , u@6, 1D 0.0536839, u@1, 2D 940 950.,
u@2, 2D 31 251.2, u@3, 2D 113.575, u@4, 2D 293.997, u@5, 2D 0.000254967,
u@6, 2D 0.0552192, u@1, 3D 942 706., u@2, 3D 35 831.2, u@3, 3D 325.012,
u@4, 3D 440.025, u@5, 3D 0.0108959, u@6, 3D 0.0541482,
u@1, 4D 943 929., u@2, 4D 38 341.1, u@3, 4D 888.982, u@4, 4D 595.528,
u@5, 4D 0.474597, u@6, 4D 0.0528958, u@1, 5D 945 370., u@2, 5D 39 995.1,
u@3, 5D 2433.32, u@4, 5D 769.349, u@5, 5D 21.1614, u@6, 5D 0.0499099=

Note that Newton's method will fail to converge if you do not have a reasonable initial guess.
The solution is in the form of a set of replacement rules. Thus the molar flow rates of all the species in
the gas streams are
TableForm@Table@u@i, jD, 8j, 1, 5<, 8i, 1, 6<D . sol,
TableHeadings -> 8Table@"j=" <> ToString@iD, 8i, 1, 5<D, Table@u@i, jD, 8i, 1, 6<D<D
u@1, jD
j=1
j=2
j=3
j=4
j=5

886 299.
940 950.
942 706.
943 929.
945 370.

u@2, jD
21 000.
31 251.2
35 831.2
38 341.1
39 995.1

u@3, jD
31.0091
113.575
325.012
888.982
2433.32

u@4, jD
144.56
293.997
440.025
595.528
769.349

u@5, jD

u@6, jD
-6

5.67431 10
0.000254967
0.0108959
0.474597
21.1614

0.0536839
0.0552192
0.0541482
0.0528958
0.0499099

The molar flow rates in the absorbent streams for trays 1-5 are
TableForm@Table@{@i, jD, 8j, 1, 5<, 8i, 1, 6<D . sol,
TableHeadings 8Table@"j=" <> ToString@iD, 8i, 1, 5<D, Table@{@i, jD, 8i, 1, 6<D<D
j=1
j=2
j=3
j=4
j=5

{@1, jD
54 650.3
56 407.
57 630.1
59 071.1
62 700.6

{@2, jD
10 251.2
14 831.2
17 341.1
18 995.1
21 000.

{@3, jD
82.5663
294.003
857.972
2402.31
6968.99

{@4, jD
149.437
295.464
450.968
624.789
855.44

Here is a summary of the inlet streams

{@5, jD
0.000249293
0.0108902
0.474591
21.1614
1000.

{@6, jD
94 341.2
94 341.2
94 341.2
94 341.2
94 341.1

MultiCompAbs.nb

TableForm@8Table@{@i, 0D, 8i, 1, 6<D, Table@u@i, 6D, 8i, 1, 6<D< . sol . initData,
TableHeadings 88{@i, 0D, u@i, 6D<, Table@"i=" <> ToString@iD, 8i, 1, 6<D<D
i=1
i=2
i=3
i=4
i=5
i=6
{@i, 0D 0
0
0
0
0
94 341.2
u@i, 6D 949 000. 42 000. 7000. 1000. 1000. 0

Let us now compute the absorption factor for each stream. We define the absorption factor as
A@i_, j_D :=

Sum@{@k, jD, 8k, 1, 6<D


K@iD Sum@u@k, jD, 8k, 1, 6<D

Using this definition we can compute the absorption factor for each species at each tray
TableForm@Table@A@i, jD . sol . initData, 8j, 1, 5<, 8i, 1, 6<D,
TableHeadings 8Table@"A@i," <> ToString@jD <> "D", 8j, 1, 5<D,
Table@"i=" <> ToString@iD, 8i, 1, 6<D<D
i=1

i=2

i=3

i=4

i=5

i=6

A@i,1D 0.0616612 0.488152 2.66264 1.03373 43.9336 1.75735 106


A@i,2D 0.0599469 0.47458

2.58862 1.00499 42.7122 1.70849 106

A@i,3D 0.0611326 0.483966 2.63982 1.02487 43.5569 1.74228 106


A@i,4D 0.06258

0.495425 2.70232 1.04913 44.5882 1.78353 106

A@i,5D 0.0663239 0.525064 2.86399 1.1119

47.2558 1.89023 106

As expected the absorption factor is not constant from tray-to-tray.


Finally we can compare our numerical results with the results found using the approximate method due
to Kremser. The first thing to not is that the absorbent flow rate is significantly different. The Kremser
Method predicts that the absorbent flow rate {[6,0] is
{[6,0]=183,118 lbmol/day
while the numerical solution gives a value that is almost half that value.
{[6,0]=94,341 lbmol/day
A comparison of the exit gas stream shows
TableForm@8Table@u@i, 1D . sol, 8i, 1, 6<D,
8889 033.246, 21 323.68, 29.38, 143.596, 5.285 ^ - 6, 0.1<<,
TableHeadings 88"Numerical", "Kremser"<, Table@u@i, 1D, 8i, 1, 6<D<D
u@1, 1D

u@2, 1D

u@3, 1D

u@4, 1D

u@5, 1D

u@6, 1D

Numerical 886 299. 21 000. 31.0091 144.56 5.67431 10-6 0.0536839


Kremser
889 033. 21 323.7 29.38
143.596 0.0000458913 0.1
8888024.9810766666`, 20999.972390992898`, 27.290296006359252`,
137.29350173219376`, 4.86466535223313`*^-6, 183118.`<

Note that the agreement is reasonable. Here is a comparison of the exit absorbent stream for the two
methods

MultiCompAbs.nb

TableForm@8Table@{@i, 5D . sol, 8i, 1, 6<D,


859 966.75, 20 676.31, 6970.61, 856.403, 999.9, 183 117.9<<,
TableHeadings 88"Numerical", "Kremser"<, Table@{@i, 1D, 8i, 1, 6<D<D
{@1, 1D {@2, 1D {@3, 1D {@4, 1D {@5, 1D {@6, 1D
Numerical 62 700.6 21 000. 6968.99 855.44 1000. 94 341.1
Kremser
59 966.8 20 676.3 6970.61 856.403 999.9 183 118.

Again the agreement is reasonable except for the absorbent flow rate.
Sum@{@i, 1D, 8i, 1, 6<D
{@1, 1D + {@2, 1D + {@3, 1D + {@4, 1D + {@5, 1D + {@6, 1D
TableForm@8Table@{@i, 5D . sol, 8i, 1, 6<D, 860975.01892333338`, 21000.027609007102`,
6972.709703993641`, 862.7064982678062`, 999.9999951353346`, 0.`<<,
TableHeadings 88"Numerical", "Kremser"<, Table@{@i, 1D, 8i, 1, 6<D<D
{@1, 1D {@2, 1D {@3, 1D {@4, 1D {@5, 1D {@6, 1D
Numerical 62 700.6 21 000. 6968.99 855.44 1000. 94 341.1
Kremser
60 975. 21 000. 6972.71 862.706 1000. 0.
860975.01892333338`, 21000.027609007102`,
6972.709703993641`, 862.7064982678062`, 999.9999951353346`, 0.`<

Conclusions
We have shown how to solve the full system of equations that describes multicomponent absorption in
a tray column. The key assumption is that the equilibrium K-values are constant at each tray. This
assumption is reasonable if the temperature and pressure of the column are constant and the liquid
mixture is an ideal mixture. Since all the species are hydrocarbons, the assumption of ideal mixture is
quite reasonable.
Our analysis shows that for this system the Kremser method over predicts the absorbent molar flow rate
by almost twice 183,118 lb mol/day versus 94,341 lb mol/day. However, Kremser method gives very
reasonable values for the molar flow rates of the other species in the exit streams.
Our numerical method makes use of Newton's method for solving the nonlinear system of equations. In
our Mathematica code we opted to use the built-in function FindRoot which by default computes the
Jacobian symbolically. This requires a large amount of storage when the number of equations exceeds
30-40 . To reduce storage requirements we can compute the Jacobian numerically. However this
requires 2 initial guesses for each unknown.
For Newton's method to be successful, we must have "good" initial guesses for each of the unknowns.
In the above analysis we found the initial guesses by solving a one or two stage problem, and then used
those values of all the other streams. This approach was successful for the given problem, but may not
always work.

References
1. Kremser, A., Natl., Petroleum News, 22(21), 43-49, 1930
2. Seader, J. D. and Henley, E.J. ,Separation Process Principles, John Wiley & Sons, 1998

Das könnte Ihnen auch gefallen