Document Text Contents
Page 1
Fall 2006 313
MATLAB[1] is best described as easytouse mathematical software that allows powerful graphical presentation and numerical analysis. At Cornell
University, MATLAB has been used intensively as a teaching
aid in undergraduate courses. For example, every engineering
freshman is required to take a computer programming course
(COMS100) that includes basic programming concepts and
problem analysis using MATLAB. Students in chemical engi
neering take an engineering distribution course on computers
and programming (ENGRD211), which deals extensively with
MS Excel and MATLAB. They also develop userfriendly
computer programs using MATLAB to solve homework in
many chemical engineering core courses, including heat and
mass transfer. This early integration of MATLAB provides
an excellent background for use in the second semester of the
junior year, allowing these students to be comfortable with
MATLAB in the separations course. In addition, MATLAB
can be a very useful teaching aid in a separations course, as its
powerful graphical presentation and numerical analysis tools
can be utilized both in an interactive, stepbystep, graphical
display of conventional methods, and also in solving systems
of equations for complex separation processes. The ability to
integrate powerful computer software into the course rests
on the availability of appropriate computing equipment.
Our department’s undergraduate computing laboratory is an
excellent facility for such activities, and is equipped with 42
Windowsbased PCs with a site license for MATLAB.
THE COURSE
Although typical chemical engineering curricula recognize
the importance of recent trends in emerging technologies,
fundamentals.[2] ChemE332 at Cornell is a threecredit course
for chemical engineering juniors covering separation methods.
The emphasis of the course had formerly been placed on
traditional, equilibriumbased methods that involve using
manual graphical techniques, including McCabeThiele,
PonchonSavarit, and HunterNash.[37] As computers became
readily available, however, the graphical approaches were
supplemented with assignments to write Fortran code and/or
use spreadsheets for distillation columns.[811] Modern tools,
USING VISUALIZATION
AND COMPUTATION
in the Analysis of Separation Processes
Yong Lak Joo and devashish ChoudharY
Cornell University • Ithaca, NY 14853
© Copyright ChE Division of ASEE 2006
ChE curriculum
Yong Lak Joo has been an assistant pro
fessor of chemical and biomolecular engi
neering at Cornell University since 2001. He
received his B.S. in chemical engineering
from Seoul National University in Korea, and
his M.S. and Ph.D. in chemical engineer
ing from Stanford University. His research
interests are in the area of nonNewtonian
fluid mechanics and advanced materials
processing, with particular emphasis on
molecular modeling and complex flow
simulation of polymeric liquids.
Devashish Choudhary was born in New
Delhi, India. He majored in chemical
engineering at the Indian Institute of Tech
nology, Bombay. In 2004, he received
his Ph.D. from the School of Chemical
and Biomolecular Engineering at Cornell
University. During his Ph.D., he worked
on orderproperty relationships in semi
conducting materials. Currently, he works
at Intel Corp.
Page 2
Chemical Engineering Education314
such as the easytouse mathematical software MATLAB[1]
and Mathematica,[12] can be used to write simple codes that
allow undergraduates to calculate and display accurate graphi
cal solutions interactively, and thus make learning graphical
methods more enjoyable and effective. We introduced in
class visualization of conventional graphical methods using
a simple MATLAB code. The interactive nature of MATLAB
allowed “what if” analyses[11, 13] in which the effect of changing
parameter values such as relative volatility, reflux ratio, feed
condition, and stage efficiency are graphically displayed. By
spending less time on the details of solving problems graphi
cally or by trial and error, we can spend more time discussing
the conceptual and quantitative descriptions of processes,
recent trends, and design aspects. With condensed lectures
on equilibriumbased processes, ChemE332 in spring 2001
was reconstructed to reinforce ratebased processes such as
membrane and sorption separations. Furthermore, emerging
processes in bioseparations, such as electrophoresis and is
sues in choosing and designing separation processes, were
integrated in the course without sacrificing conventional
separations. More than half of the total lectures in ChemE332
are currently spent on ratebased methods, bioseparations, and
the design of separation processes.
Despite the advantage of helping students visualize the
separation, graphical methods no longer represent the mod
ern practice of chemical engineering.[7] Modern practice for
designing and simulating separations involves commercial
process simulators such as AspenPlus, ChemCad, Hysys,
and Prosim.[14] To be prepared for commercial practice, stu
dents need experience simulating and designing separation
processes using these methods. Unfortunately, students often
treat these commercial simulators as black boxes, and tend to
believe the results they obtain without further checking.[7, 14]
The exact methods used in these simulators involve solving
systems of nonlinear equations and large matrices. Although
there is a limit for complicated systems, these exact methods
are now tractable due to userfriendly routines and software
for numerical analysis. To avoid the potential creation of yet
another “black box” using MATLAB, students can be asked to
implement specific parts of the code such as a thermodynamic
model, matrix solving, and time integration scheme.
In this paper we demonstrate that using easytodevelop
mathematical solutions for visualization and numerical
computation can make conventional graphical approaches
more enjoyable and effective, providing students better un
derstanding of more complex problems. Visualization and
interactive display of graphical methods in distillation,
solution procedures for complex processes such as mul
ticomponent distillation, and thermal swing adsorption
can promote understanding of how these separation
processes work. Although we present the examples in
distillation and adsorption, this approach can also be
extended to many other separation processes such as
absorption, stripping, and extraction. We present four
examples used in the separations course. In the first
two examples, the stepbystep, interactive display of
conventional graphical methods for binary distillation
were facilitated by MATLAB, while systems of nonlin
ear equations were rigorously solved using MATLAB
in the last two examples on multicomponent distillation
and adsorption.
Example 1
Visualization of McCabeThiele Method and
Stage Efficiency in Binary Distillation
We used MATLAB to visualize the McCabeThiele
graphical equilibriumstage method and estimation of
stage efficiency in a distillation process for a binary mix
ture of A and B. As described in Table 1, the code consists
of (i) constructing and displaying the equilibrium curve,
(ii) drawing operating lines and feed line, (iii) displaying
the equilibrium stages, and (iv) illustrating stage and over
all efficiency. We use the commands “plot” and “movie”
in MATLAB[1] to visualize and animate the diagrams (see
Table 1). The code was used for interactive display of the
method in lectures and homework assignments.
Step 1: Display y vs. x diagram (eq. curve)
Step 2: Display operating lines and feed line
Step 3: Determine theoretical equilibrium stages, Nt
Constant relative volatility/ Raoult’s law/ Actual
data
Determine actual stages Na and overall efficiency Eo
Obtain equilibrium data
Reflux ratio & feed condition
or
Reflux ratio & boilup ratio
or
Boilup ratio & feed condition
Murphree vapor efficiency, Emv
• Horizontal line to equilibrium curve
• Vertical drop to operating line
Design Input
Thermodynamic Input
Design Input
• Step 4: Display new stepping based on Emv
Figure 1. Flowchart of Example 1: McCabeThiele
method for binary distillation.
Page 3
Fall 2006 315
Interactive Display in Lectures
Before the McCabeThiele graphical method was dem
onstrated by stepbystep display, a lecture was given on
the concept and a handout on the detailed description of the
options and functions of the MATLAB code for the method
was distributed. Inclass visualization of the graphical method
Step 1. We show how the equilibrium curves can be
constructed. Three ways of determining the equilibrium re
lationship between liquid and vapor phases are implemented
in the code: using (i) a constant volatility for mixtures with
a similar heat of vaporization, (ii) a simple thermodynamic
model such as Raoult’s law[4] in which the Antoine equation
is used to provide the vapor pressure information, and (iii)
actual data. For the Antoine equation, the function “fzero” in
MATLAB[1]
of partial pressures of two components equals the total pres
sure (i.e., P P PAsat Bsat total+ = ) for a liquid composition xA and xB
(see Table 1).
Step 2. We show how to draw operating lines. Once any
two of three parameters (e.g.
VB
and the feed line are uniquely determined. We
also explain the relation between the slope of
the qline and the state of the feed (subcooled,
saturated liquid, partially vaporized, saturated
vapor, and superheated).
Step 3. We demonstrate how to determine
theoretical stages. Once the equilibrium curve,
operating lines, and feed line are drawn, the
equilibrium composition at each stage is deter
mined by the McCabeThiele method. Starting
from the distillate xD (or bottoms product xB),
drawing a horizontal line from (xD, xD) on the
y = x line to the equilibrium curve, followed by
dropping a vertical line to the operating line, is
repeated until x reaches xB. When actual data is
used for the equilibrium curve, the MATLAB
interpolation function called “interp1” is used

librium curve (see Table 1).[1] The transfer in
the operating line from the rectifying section
to stripping section is typically made when the
liquid composition, x, passes the intersection
of the two operating lines and feed line. The
interactive nature of MATLAB allows “what
if” analyses[9, 11] in which parameter values such

dition may be changed, and their effects on the
distillation column are graphically displayed
during the presentation.
Step 4. The actual stages, based on the Murphree vapor
MV, for each stage, are displayed on top of theoreti
actual number of stages. In the current example, we note that a
MV, is used throughout the
entire distillation column for simplicity and symmetry in the
o, is then determined by
the ratio of the number of the theoretical equilibrium stages to
that of the actual stages, i.e., Eo= Nt/Na. Some snapshots of the
of acetone and toluene that are displayed in class are shown
in Figure 2 (page 318).
Homework Assignments
After the graphical method by MATLAB code was in
troduced, a couple of problems associated with using and
modifying the MATLAB code were given as homework. For
example, students were asked to determine various feed condi
tions such as subcooled, partially vaporized, and superheated
using the thermodynamic properties of benzene and toluene,
and then determine the number of equilibrium stages and
Table 2, page 318). The effect of feed conditions on column
performance is demonstrated by entering different q values
while x >= x_B % loop for stepping
ynew=y
else % using actual data for eq. relation
end
plot([x,xnew],[y,ynew],’r’,’LineWidth’,2) % a. Draw a horizontal line to the eq. curve
hold on
pause
x=xnew
if x >= x_c
%if x >= z
y=LoverV_D*x+x_D/(R+1) % using the op. line for rectifying section
else
y=LoverV_B*xx_B/V_B % using the op. line for stripping section
end
plot([xnew,x],[ynew,y],’r’,’LineWidth’,2) % b. Draw a vertical line to the op. line
hold on
pause
if x >= x_B % calculating # of stages
nstage=nstage+1
else
nstage=nstage+x/x_B
end
end % c. Repeat a and b until x reaches x_B
TaBle 1
Portion of a MaTlaB Code for example 1
Page 4
Chemical Engineering Education316
in the MATLAB code and dis
playing the stagestepping inter
actively. In the second problem,
students were asked to modify
and extend the MATLAB code
to determine the actual number
of stages based on the stage ef
and displayed in the lecture, but
this time the students were asked
to reconstruct what they had
seen in class and use it to solve
a homework problem. About
85% of the students were able
to modify the code correctly to
determine the actual number
of stages.
Figure 2. Snapshots of graphi
cal output in Example 1: Mc
CabeThiele method for binary
distillation of acetone and tolu
ene: a) equilibrium curve from
Raoult’s law; b) operating lines
and feed line for z
A
= 0.5, x
D
=
0.95, x
B
= 0.05, q = 0.5, R = 2; c)
theoretical equilibrium stages;
and d) actual stages (shown in
dashed line) with E
mv
= 0.7 for
the entire distillation column.
TaBle 2
an example of MaTlaB Homework Problem To link the effect of Feed Conditions
to the Number of Theoretical Stages and Boilup Ratio
L/D=3.0 in the rectifying section. The feed has a boiling point of 92 °C and a dew point of 98 °C at a pressure of 1 atm. Determine the q value if (i) the
Component vap (cal/g mol) Cp(cal/g mol °C)
Liquid Vapor
Benzene 7,360 33 23
Toluene 7,960 40 33
Assume a relative volatility of 2.5 and use a simple MATLAB code (feed.m) that is available at the ChemE 332 Web page to determine the number of
theoretical stages and the boilup ratio in the stripping section for three different feed conditions. Submit the printouts (graphs). Each graph should have
your name and the output (number of stages and boilup ratio) printed on the upper left corner. To do this, the MATLAB code has the following gtext
gtext({‘number of stages:,’ num2str(nstage)})
gtext({‘boilup ratio:,’ num2str(V_B)})
gtext({‘run by,’ your_name})
First, the code asks you your name and input conditions including the q value. After running the code, go to the graph and click a location (total three
times) to print out the number of stages, boilup ratio, and your name on the graph.
a b
c d
Page 5
Fall 2006 317
Example 2
Visualization of Enthalpy Method in
Binary Distillation[6]
The McCabeThiele method uses an energy balance
only at the feed tray, whereas the PonchonSavarit graph
ical method uses a rigorous energy balance throughout
the distillation column.[4, 6] Although the PonchonSavarit
method for distillation has largely been supplemented by
rigorous computeraided methods, the concept of using
a diagram for the separating agent (heat in distillation)
and difference points is very important and useful in un
derstanding similar graphical approaches in other separa
tion processes, such as the MaloneySchubert graphical
method[4] in extraction that uses the analogous Janecke
diagram for the separating agent (the solvent).
We used recitation sessions as well as lectures to in
troduce and demonstrate the PonchonSavarit graphical
method. A handout on the method using the MATLAB
code was distributed first, and the graphical method was
demonstrated using stepbystep display. The visualiza
tion of the PonchonSavarit method consists of determin
ing difference points and displaying rays and equilibrium
tie lines on the enthalpy diagram.
The flowchart of the PonchonSa
varit method for binary distillation
is shown in Figure 3. We again used
the commands “plot” and “mov
ie” in MATLAB to visualize and
graphically display the diagrams,[1]
and some snapshots of the method
for distillation of acetone and water
mixtures are shown in Figure 4,
right, as well as in Figure 5 (next
page). The operating lines obtained
under the assumption of constant
molal overflow are shown by the
dashed lines in the y vs. x diagram
for comparison in the figure. The
students were asked to run the same
code as the lecture to solve similar
homework problems by varying de
sign inputs such as feed conditions.
In the future, we will ask students
to modify the MATLAB code for
the PonchonSavarit method for
Step 1: Display y vs. x and enthalpy
Step 2: Determine and display difference and feed points
Display rays that pass difference point and liquid
(vapor) composition
Display equilibrium tie line to determine the
corresponding vapor (liquid) composition.
Step 3: Determine the number of equilibrium stages
Actual equilibrium & enthalpy data
Thermodynamic Input
Reflux ratio & feed condition
Distillate, bottoms compositions
Design Input
On enthalpy
Obtain equilibrium and enthalpy data
diagram
3
Figure 3. Flowchart of Example 2: PonchonSavarit method for
binary distillation.
Figure 4. Graphical output for
Example 2: a) enthalpycomposi
tion diagram from enthalpy data;
and b) difference points (open
circles) and feed line for z
A
= 0.5,
x
D
= 0.90, x
B
= 0.0216, q = 0.5,
and R = 0.288. The yx composi
tion diagram is also shown at the
a
b
Page 6
Chemical Engineering Education318
distillation such that the extraction process can be solved,
analyzed, and displayed interactively.
Example 3
Direct Solving Exact Methods for
Multicomponent Distillation[4]
Despite its practical importance, multicomponent distil
on separations. This is mainly because analysis of multi
component separations requires solving material balances,
enthalpy balances, and equilibrium relations at each stage,
only an approximate method commonly referred to as Fen
skeUnderwoodGilliland (FUG) has been used to make
preliminary designs and optimize simple distillation.[4] Al
ternatively, commercial simulators have been introduced to
solve multicomponent separations in detail, but students often
treat these commercial process
simulators as black boxes.[7,14]
We used MATLAB to solve the
nonlinear algebraic equations for
multicomponent distillation in
userfriendly routines in MAT
LAB were used to employ the
equationtearing, bubblepoint
method in solving the governing
equations. This numerical method
consists of calculating equilibrium
compositions and enthalpies,
solving the modified material
balance equations, and updating
solutions using Newton’s method
(see Table 3). As indicated in the
flowchart of the procedure in
Figure 6 (page 322), the system of
equations was solved for composi
tions at each stage by the matrix
solver “sparse” in MATLAB.[1]
The Newton’s method was used to
update the guess of tearing vari
ables, temperature, and vapor rate
at each stage. A function “froot.m”
was created which solves nonlin
ear equations using a Newton’s
method to update the temperature
and vapor rate at each stage. Once
temperature, enthalpy, and com
positions are obtained, the heat
duties can be determined.
Homework Assignments
Using the developed MATLAB
code, students were asked to solve
a multicomponent distillation of hydrocarbons and compare
the results with those obtained from the commercial pro
cess simulator, AspenPlus (see Table 4, page 322). Again,
a handout that describes the method used in the code was
distributed and explained in a recitation session before the
homework was distributed. As depicted in Figure 7 (page
323), a simple thermodynamic model (Raoult’s law in which
the Antoine equation has been used to provide the vapor pres
sure information) overpredicts the volatility of “light nonkey
(LNK)” component (ethane) and underpredicts that of “heavy
nonkey (HNK)” components (pentane and hexane) in the
multicomponent distillation of hydrocarbons. As a result, the
compositions of the “light key (LK)” component (propane) in
the distillate and the “heavy key (HK)” component (butane)
in the bottoms are slightly lower than the values obtained
from Aspen simulation with more accurate thermodynamics
models such as SoaveRedlichKwong equation.
Figure 5. Snapshots of graphical output of Example 2: PochonSavarit method for
binary distillation of acetone and water: a) rays (solid) and equilibrium lines (dashed)
in the rectifying section; and b) rays and equilibrium tie lines in the rectifying section.
The operating lines obtained under the assumption of constant molal overflow are
shown by the dashed lines in the y vs. x diagram at the right for comparison.
a
b
Page 7
Fall 2006 319
TaBle 3
Portion of a MaTlaB Tutorial Handout for example 3
If we assume that phase equilibrium is achieved at each stage, the governing equations for a distillation process for n components consisting of N stages
can be written as[4]
l x V y F z l U x V W yj j j j j j j j j j j j− − + ++ + − +( ) − +( ) =1 1 1 1 00
x
( )
( )
; ( )
,
, .
1
2
1 1 3
1 1
y K
x y
j i j j
i j
i
n
i j
i
n
=
= =
= =
∑ ∑
ll h V H F h l U h V W Hj j j j j F j j j j j j− − + ++ + − + − +1 1 1 1 ( ) ( ) jj j− =Q 0 ( )4
where lj, Vj, Fj, Uj and Wj are liquid, vapor, feed, liquid side stream, and vapor side stream rates at stage j, respectively. hj, Hj and Qj are liquid and
vapor enthalpies, and heat transfer at stage j, respectively. We utilize the equationtearing, bubblepoint method in solving the governing Eq. (1)(4)
which consists of: i) calculating equilibrium compositions and enthalpy; ii) solving the modified material balance equations; and iii) updating solutions
using the Newton’s method.
i) Equilibrium Compositions and Enthalpy Calculations
For simplicity, the Antoine equation is used to evaluate Kvalues and enthalpy of each component. One of tear variables, temperature is assumed and the
volatility of each component is determined by Ki = yi/xi = P
sat
i/Ptotal. Meanwhile, the enthalpy of each species can be determined from
[4] h h Hv i v i i
vap
, ,= +
0 ∆
where the ideal gas species molar enthalpy h C dT a T T k and Cv i pV i
T
T
k i
i
K K
p, , , ( ) /
0 0
1
4
0
0
= = −∫ ∑
=
VV i i i i ia a T a T a T, , , , ,
0
1 2 3
2
4
3= + + + is the heat capacity at
constant pressure. At low pressures, the enthalpy of vaporization is given in terms of vapor pressure by classical thermodynamics[4]
∆H RT
d P
dT
RT
B
T C
i
vap i
sat
i=
= −
+
2 2ln
ii( )
2 5( )
ii) Modified Material Balance Equations
By rearranging the governing equations Eq. (1)(3) for each stage, the following systems of equations for component i at stage j are obtained:[4]
B C
a B C
a
B C
a B
1 1
2 2 2
3
1 1
0 0
0 0
0 0
…
N N
N N
− −
−
x
x
x
x
1
2
1
N
N
=
−
D
D
D
D
1
2
1
N
N
( )6
where xj=[x1,j, x2,j, x3,j, ??? xn,j] is the liquid composition vector at stage j, and the components of the tridiagonal matrix in each stage are
a V F W U V
B V
j j m m m
m
j
j j
j N= + + +( )− ≤ ≤
=−
=
−
+
∑ 1
1
1
1
2 7, ( )
++ − −( )− + + +
=
∑ F W U V U V Wm m m
m
j
j j j i jK
1
1 ( ) , ,, ( )
, ( ),
1 8
1 1 91 1
≤ ≤
= ≤ ≤ −+ +
j N
K j Nj j i jC V
and the riighthandside vector at each stage jD F=− jzz j j N, ( )1 10≤ ≤
The system of equations Eq. (6) is solved for xi,j by the sparse matrix solver “sparse” in MATLAB
[1] . . . [instructions continue].
Example 4
[4]
Adsorption is one of the most difficult separation processes
to teach since it is ratebased, which requires a mass transfer
analysis, and is usually operated as a time dependent process.
As a result, adsorption with very simple isotherms, such as
an irreversible isotherm, has been analyzed in most separa
tion texts.[3, 4] After we introduced the concept of adsorption
isotherms and a breakthrough curve in fixedbed adsorption,
we used MATLAB to develop a numerical model for rate
based, timedependent adsorption processes such as thermal
swing adsorption. In thermal swing adsorption, one bed is
adsorbing the solute at ambient temperature, while the other
bed is desorbing the adsorbate at a higher temperature. A
numerical solution for the regeneration (desorption) step
can be obtained using a procedure discussed by Wong and
Niedzwiecki[15] (see Figure 8, page 324). Again, a handout
that describes the method used in the MATLAB code was
distributed in the lecture. In the absence of axial dispersion
and a constant fluid velocity, the partial differential equations
can be solved using the fivepoint, biased upwind, finite dif
ference approximation derived from Taylor’s series expan
sion. The time integration of the sets of ordinary differential
equations was carried out using a simple Euler method with
a small step size. Regenerationloading profiles in thermal
swing adsorption at two different regeneration air interstitial
velocities, v = 30 m/min and v = 60 m/min, are shown in
Figure 9 (page 324), and the effect of air flow on the heating
Page 8
Chemical Engineering Education320
Initial guesses for tear variables, T and Vj j
Calculate enthalpy (hj, Hj) and volatility (Kij)
Solve tridiagonal matrix for xj
Compute new Tj, Qi, Vj and Lj
• Antoine equation
• Enthalpy equation
Iterate until Tj is converged
• Sparse matrix solver
• Newton’s method
• Converging criteria
Reflux ratio & feed stage
Distillate, bottoms compositions
Design Input
Display vapor and liquid composition profiles
6
b Figure 6. Flowchart of Example 3: multicomponent distil
lation.
TaBle 4
an example of MaTlaB Homework Problem Paired With a Problem Using aspen Plus
to Solve a Multicomponent Distillation of Hydrocarbons.
1. Multicomponent Distillation using Aspen Plus
Distillation column specifications are given as below:
 Feed (saturated liquid at 250 psia and 213 °F)
Component Lbmol/h
Ethane 3.0
Propane 20.0
nButane 37.0
nPentane 35.0
nHexane 5.0
 Column pressure = 250 psia
 Partial condenser and partial reboiler
 Distillate rate = 23.0 lbmol/h
 Reflux rate = 150.0 lbmol/h
 Number of equilibrium plates (exclusive of condenser and reboiler) = 15
 Feed is sent to middle stage
Email the following to the TA:
1) a printout of your Aspen process with your NetID as the column name as well as a stream table showing the results using the conditions
described in the exercise including stage temperatures, vapor and liquid flow rates, and reboiler and condenser duties.
2) a graph of liquid composition of each component vs. stage number
3) a graph of vapor composition of each component vs. stage number
2. Multicomponent Distillation using MATLAB
Repeat Problem 1 using simple MATLAB codes (problem2.m and froot.m) available at the ChemE 332 Web site. The code utilizes the equa
tiontearing, bubblepoint method in solving the MESH equations as described in the handout. For simplicity, the Antoine equation is used to
evaluate Kvalues and enthalpy of each component. The file froot.m is a function routine which solves nonlinear equations using a Newton’s
method. See the handout for details. When the code is run, you are asked to input the conditions described in the problem. Submit the follow
ing printouts
1) a graph of liquid composition of each component vs. stage number
2) a graph of vapor composition of each component vs. stage number
Compare your results with those obtained in Problem 1.
TaBle 5
Responses of the Students
Responses to:
“How valuable were the lectures and homework assignments based
on MATLAB?”
% responses
1 = taught me little 3.0
2 = taught me some 4.2
3 = educational 16.3
4 = very educational 57.7
5 = extremely educational 17.8
Some comments from the students
“The mix of conventional method and animation helps us to under
stand the concept from the front.”
“I like how much of it is graphic. This makes the learning more
intuitive.”
“I hate graphical methods, but using MATLAB is okay.”
“Some MATLAB homework problems were too easy because I just
punched in numbers”
“No more MATLAB, please.”
Page 9
Fall 2006 321
and cooling cycle in thermal swing adsorption was discussed
in detail. Students were asked to use the MATLAB code to
determine the regeneration characteristics in thermal swing
adsorption at various operating conditions, such as air flow.
In the future, the students will be asked to extend the code
to solve similar ratebased sorption processes such as ion
exchange and chromatography.
PEDAGOGICAL ASPECTS OF STUDENT
ACTIVITIES AND RESPONSES OF STUDENTS
The pedagogical aspects of student activities have evolved
over the years. The incorporation of interactive display of
graphical methods was done in lectures to effectively dem
onstrate the effect of design parameters on the distillation
Figure 7. Vapor composition of each compo
nent at each stage in Example 3: multicompo
nent distillation of hydrocarbons, a) obtained
using direct matrix solver in MATLAB with a
simple thermodynamic model (Raoult’s law),
and b) obtained from Aspen Plus with the
SoaveRedlichKwong model. Operating condi
tions are listed in Table 4.
column. Then, students were asked to run the same code
used in lecture to solve similar problems by varying design
inputs such as feed conditions. We started asking the students
to modify the MATLAB codes to extend its capabilities and
analyze the results. A tutorial on how to develop a MAT
LAB code was instituted in the recitation sessions to make
this transition smoother. We conducted a survey on using
MATLAB in lectures and homework assignments as a part of
midterm evaluation, and results are summarized in Table 5.
The wording of questions and responses in the table is taken
verbatim from the survey. The survey also provided a space
for written comments. As indicated in Table 5, the use of
MATLAB was generally accepted as a useful aid in teaching
separations. In the future, we would like to allow
the students to play more active roles in solving
various separation problems using MATLAB. In
particular, students will be asked to modify the
MATLAB codes and extend them to work out many
other separation processes such as absorption, strip
ping, and extraction.
CONCLUSIONS
We have demonstrated that simple mathemati
cal software, MATLAB, can be integrated into a
separations course as a useful and effective teaching
aid for visualization and numerical computation of
many separation processes. The benefits of using
MATLAB are the following:
• Stepbystep and interactive display can make
conventional graphical approaches more enjoy
able to students and more effective in classroom.
Visualization of the graphical methods has been
further extended to the study of packedcolumn
analysis.
problems graphically and by trialanderror,
we were able to spend more time discussing the
conceptual and quantitative description of pro
cesses, and incorporate recent trends and design
aspects in the separations course.
to solve systems of nonlinear equations and
perform numerical time integration, which, in
turn, provides students with a better understand
ing of complex separation processes such as
multicomponent distillation and thermal swing
adsorption.
a
b
Fall 2006 313
MATLAB[1] is best described as easytouse mathematical software that allows powerful graphical presentation and numerical analysis. At Cornell
University, MATLAB has been used intensively as a teaching
aid in undergraduate courses. For example, every engineering
freshman is required to take a computer programming course
(COMS100) that includes basic programming concepts and
problem analysis using MATLAB. Students in chemical engi
neering take an engineering distribution course on computers
and programming (ENGRD211), which deals extensively with
MS Excel and MATLAB. They also develop userfriendly
computer programs using MATLAB to solve homework in
many chemical engineering core courses, including heat and
mass transfer. This early integration of MATLAB provides
an excellent background for use in the second semester of the
junior year, allowing these students to be comfortable with
MATLAB in the separations course. In addition, MATLAB
can be a very useful teaching aid in a separations course, as its
powerful graphical presentation and numerical analysis tools
can be utilized both in an interactive, stepbystep, graphical
display of conventional methods, and also in solving systems
of equations for complex separation processes. The ability to
integrate powerful computer software into the course rests
on the availability of appropriate computing equipment.
Our department’s undergraduate computing laboratory is an
excellent facility for such activities, and is equipped with 42
Windowsbased PCs with a site license for MATLAB.
THE COURSE
Although typical chemical engineering curricula recognize
the importance of recent trends in emerging technologies,
fundamentals.[2] ChemE332 at Cornell is a threecredit course
for chemical engineering juniors covering separation methods.
The emphasis of the course had formerly been placed on
traditional, equilibriumbased methods that involve using
manual graphical techniques, including McCabeThiele,
PonchonSavarit, and HunterNash.[37] As computers became
readily available, however, the graphical approaches were
supplemented with assignments to write Fortran code and/or
use spreadsheets for distillation columns.[811] Modern tools,
USING VISUALIZATION
AND COMPUTATION
in the Analysis of Separation Processes
Yong Lak Joo and devashish ChoudharY
Cornell University • Ithaca, NY 14853
© Copyright ChE Division of ASEE 2006
ChE curriculum
Yong Lak Joo has been an assistant pro
fessor of chemical and biomolecular engi
neering at Cornell University since 2001. He
received his B.S. in chemical engineering
from Seoul National University in Korea, and
his M.S. and Ph.D. in chemical engineer
ing from Stanford University. His research
interests are in the area of nonNewtonian
fluid mechanics and advanced materials
processing, with particular emphasis on
molecular modeling and complex flow
simulation of polymeric liquids.
Devashish Choudhary was born in New
Delhi, India. He majored in chemical
engineering at the Indian Institute of Tech
nology, Bombay. In 2004, he received
his Ph.D. from the School of Chemical
and Biomolecular Engineering at Cornell
University. During his Ph.D., he worked
on orderproperty relationships in semi
conducting materials. Currently, he works
at Intel Corp.
Page 2
Chemical Engineering Education314
such as the easytouse mathematical software MATLAB[1]
and Mathematica,[12] can be used to write simple codes that
allow undergraduates to calculate and display accurate graphi
cal solutions interactively, and thus make learning graphical
methods more enjoyable and effective. We introduced in
class visualization of conventional graphical methods using
a simple MATLAB code. The interactive nature of MATLAB
allowed “what if” analyses[11, 13] in which the effect of changing
parameter values such as relative volatility, reflux ratio, feed
condition, and stage efficiency are graphically displayed. By
spending less time on the details of solving problems graphi
cally or by trial and error, we can spend more time discussing
the conceptual and quantitative descriptions of processes,
recent trends, and design aspects. With condensed lectures
on equilibriumbased processes, ChemE332 in spring 2001
was reconstructed to reinforce ratebased processes such as
membrane and sorption separations. Furthermore, emerging
processes in bioseparations, such as electrophoresis and is
sues in choosing and designing separation processes, were
integrated in the course without sacrificing conventional
separations. More than half of the total lectures in ChemE332
are currently spent on ratebased methods, bioseparations, and
the design of separation processes.
Despite the advantage of helping students visualize the
separation, graphical methods no longer represent the mod
ern practice of chemical engineering.[7] Modern practice for
designing and simulating separations involves commercial
process simulators such as AspenPlus, ChemCad, Hysys,
and Prosim.[14] To be prepared for commercial practice, stu
dents need experience simulating and designing separation
processes using these methods. Unfortunately, students often
treat these commercial simulators as black boxes, and tend to
believe the results they obtain without further checking.[7, 14]
The exact methods used in these simulators involve solving
systems of nonlinear equations and large matrices. Although
there is a limit for complicated systems, these exact methods
are now tractable due to userfriendly routines and software
for numerical analysis. To avoid the potential creation of yet
another “black box” using MATLAB, students can be asked to
implement specific parts of the code such as a thermodynamic
model, matrix solving, and time integration scheme.
In this paper we demonstrate that using easytodevelop
mathematical solutions for visualization and numerical
computation can make conventional graphical approaches
more enjoyable and effective, providing students better un
derstanding of more complex problems. Visualization and
interactive display of graphical methods in distillation,
solution procedures for complex processes such as mul
ticomponent distillation, and thermal swing adsorption
can promote understanding of how these separation
processes work. Although we present the examples in
distillation and adsorption, this approach can also be
extended to many other separation processes such as
absorption, stripping, and extraction. We present four
examples used in the separations course. In the first
two examples, the stepbystep, interactive display of
conventional graphical methods for binary distillation
were facilitated by MATLAB, while systems of nonlin
ear equations were rigorously solved using MATLAB
in the last two examples on multicomponent distillation
and adsorption.
Example 1
Visualization of McCabeThiele Method and
Stage Efficiency in Binary Distillation
We used MATLAB to visualize the McCabeThiele
graphical equilibriumstage method and estimation of
stage efficiency in a distillation process for a binary mix
ture of A and B. As described in Table 1, the code consists
of (i) constructing and displaying the equilibrium curve,
(ii) drawing operating lines and feed line, (iii) displaying
the equilibrium stages, and (iv) illustrating stage and over
all efficiency. We use the commands “plot” and “movie”
in MATLAB[1] to visualize and animate the diagrams (see
Table 1). The code was used for interactive display of the
method in lectures and homework assignments.
Step 1: Display y vs. x diagram (eq. curve)
Step 2: Display operating lines and feed line
Step 3: Determine theoretical equilibrium stages, Nt
Constant relative volatility/ Raoult’s law/ Actual
data
Determine actual stages Na and overall efficiency Eo
Obtain equilibrium data
Reflux ratio & feed condition
or
Reflux ratio & boilup ratio
or
Boilup ratio & feed condition
Murphree vapor efficiency, Emv
• Horizontal line to equilibrium curve
• Vertical drop to operating line
Design Input
Thermodynamic Input
Design Input
• Step 4: Display new stepping based on Emv
Figure 1. Flowchart of Example 1: McCabeThiele
method for binary distillation.
Page 3
Fall 2006 315
Interactive Display in Lectures
Before the McCabeThiele graphical method was dem
onstrated by stepbystep display, a lecture was given on
the concept and a handout on the detailed description of the
options and functions of the MATLAB code for the method
was distributed. Inclass visualization of the graphical method
Step 1. We show how the equilibrium curves can be
constructed. Three ways of determining the equilibrium re
lationship between liquid and vapor phases are implemented
in the code: using (i) a constant volatility for mixtures with
a similar heat of vaporization, (ii) a simple thermodynamic
model such as Raoult’s law[4] in which the Antoine equation
is used to provide the vapor pressure information, and (iii)
actual data. For the Antoine equation, the function “fzero” in
MATLAB[1]
of partial pressures of two components equals the total pres
sure (i.e., P P PAsat Bsat total+ = ) for a liquid composition xA and xB
(see Table 1).
Step 2. We show how to draw operating lines. Once any
two of three parameters (e.g.
VB
and the feed line are uniquely determined. We
also explain the relation between the slope of
the qline and the state of the feed (subcooled,
saturated liquid, partially vaporized, saturated
vapor, and superheated).
Step 3. We demonstrate how to determine
theoretical stages. Once the equilibrium curve,
operating lines, and feed line are drawn, the
equilibrium composition at each stage is deter
mined by the McCabeThiele method. Starting
from the distillate xD (or bottoms product xB),
drawing a horizontal line from (xD, xD) on the
y = x line to the equilibrium curve, followed by
dropping a vertical line to the operating line, is
repeated until x reaches xB. When actual data is
used for the equilibrium curve, the MATLAB
interpolation function called “interp1” is used

librium curve (see Table 1).[1] The transfer in
the operating line from the rectifying section
to stripping section is typically made when the
liquid composition, x, passes the intersection
of the two operating lines and feed line. The
interactive nature of MATLAB allows “what
if” analyses[9, 11] in which parameter values such

dition may be changed, and their effects on the
distillation column are graphically displayed
during the presentation.
Step 4. The actual stages, based on the Murphree vapor
MV, for each stage, are displayed on top of theoreti
actual number of stages. In the current example, we note that a
MV, is used throughout the
entire distillation column for simplicity and symmetry in the
o, is then determined by
the ratio of the number of the theoretical equilibrium stages to
that of the actual stages, i.e., Eo= Nt/Na. Some snapshots of the
of acetone and toluene that are displayed in class are shown
in Figure 2 (page 318).
Homework Assignments
After the graphical method by MATLAB code was in
troduced, a couple of problems associated with using and
modifying the MATLAB code were given as homework. For
example, students were asked to determine various feed condi
tions such as subcooled, partially vaporized, and superheated
using the thermodynamic properties of benzene and toluene,
and then determine the number of equilibrium stages and
Table 2, page 318). The effect of feed conditions on column
performance is demonstrated by entering different q values
while x >= x_B % loop for stepping
ynew=y
else % using actual data for eq. relation
end
plot([x,xnew],[y,ynew],’r’,’LineWidth’,2) % a. Draw a horizontal line to the eq. curve
hold on
pause
x=xnew
if x >= x_c
%if x >= z
y=LoverV_D*x+x_D/(R+1) % using the op. line for rectifying section
else
y=LoverV_B*xx_B/V_B % using the op. line for stripping section
end
plot([xnew,x],[ynew,y],’r’,’LineWidth’,2) % b. Draw a vertical line to the op. line
hold on
pause
if x >= x_B % calculating # of stages
nstage=nstage+1
else
nstage=nstage+x/x_B
end
end % c. Repeat a and b until x reaches x_B
TaBle 1
Portion of a MaTlaB Code for example 1
Page 4
Chemical Engineering Education316
in the MATLAB code and dis
playing the stagestepping inter
actively. In the second problem,
students were asked to modify
and extend the MATLAB code
to determine the actual number
of stages based on the stage ef
and displayed in the lecture, but
this time the students were asked
to reconstruct what they had
seen in class and use it to solve
a homework problem. About
85% of the students were able
to modify the code correctly to
determine the actual number
of stages.
Figure 2. Snapshots of graphi
cal output in Example 1: Mc
CabeThiele method for binary
distillation of acetone and tolu
ene: a) equilibrium curve from
Raoult’s law; b) operating lines
and feed line for z
A
= 0.5, x
D
=
0.95, x
B
= 0.05, q = 0.5, R = 2; c)
theoretical equilibrium stages;
and d) actual stages (shown in
dashed line) with E
mv
= 0.7 for
the entire distillation column.
TaBle 2
an example of MaTlaB Homework Problem To link the effect of Feed Conditions
to the Number of Theoretical Stages and Boilup Ratio
L/D=3.0 in the rectifying section. The feed has a boiling point of 92 °C and a dew point of 98 °C at a pressure of 1 atm. Determine the q value if (i) the
Component vap (cal/g mol) Cp(cal/g mol °C)
Liquid Vapor
Benzene 7,360 33 23
Toluene 7,960 40 33
Assume a relative volatility of 2.5 and use a simple MATLAB code (feed.m) that is available at the ChemE 332 Web page to determine the number of
theoretical stages and the boilup ratio in the stripping section for three different feed conditions. Submit the printouts (graphs). Each graph should have
your name and the output (number of stages and boilup ratio) printed on the upper left corner. To do this, the MATLAB code has the following gtext
gtext({‘number of stages:,’ num2str(nstage)})
gtext({‘boilup ratio:,’ num2str(V_B)})
gtext({‘run by,’ your_name})
First, the code asks you your name and input conditions including the q value. After running the code, go to the graph and click a location (total three
times) to print out the number of stages, boilup ratio, and your name on the graph.
a b
c d
Page 5
Fall 2006 317
Example 2
Visualization of Enthalpy Method in
Binary Distillation[6]
The McCabeThiele method uses an energy balance
only at the feed tray, whereas the PonchonSavarit graph
ical method uses a rigorous energy balance throughout
the distillation column.[4, 6] Although the PonchonSavarit
method for distillation has largely been supplemented by
rigorous computeraided methods, the concept of using
a diagram for the separating agent (heat in distillation)
and difference points is very important and useful in un
derstanding similar graphical approaches in other separa
tion processes, such as the MaloneySchubert graphical
method[4] in extraction that uses the analogous Janecke
diagram for the separating agent (the solvent).
We used recitation sessions as well as lectures to in
troduce and demonstrate the PonchonSavarit graphical
method. A handout on the method using the MATLAB
code was distributed first, and the graphical method was
demonstrated using stepbystep display. The visualiza
tion of the PonchonSavarit method consists of determin
ing difference points and displaying rays and equilibrium
tie lines on the enthalpy diagram.
The flowchart of the PonchonSa
varit method for binary distillation
is shown in Figure 3. We again used
the commands “plot” and “mov
ie” in MATLAB to visualize and
graphically display the diagrams,[1]
and some snapshots of the method
for distillation of acetone and water
mixtures are shown in Figure 4,
right, as well as in Figure 5 (next
page). The operating lines obtained
under the assumption of constant
molal overflow are shown by the
dashed lines in the y vs. x diagram
for comparison in the figure. The
students were asked to run the same
code as the lecture to solve similar
homework problems by varying de
sign inputs such as feed conditions.
In the future, we will ask students
to modify the MATLAB code for
the PonchonSavarit method for
Step 1: Display y vs. x and enthalpy
Step 2: Determine and display difference and feed points
Display rays that pass difference point and liquid
(vapor) composition
Display equilibrium tie line to determine the
corresponding vapor (liquid) composition.
Step 3: Determine the number of equilibrium stages
Actual equilibrium & enthalpy data
Thermodynamic Input
Reflux ratio & feed condition
Distillate, bottoms compositions
Design Input
On enthalpy
Obtain equilibrium and enthalpy data
diagram
3
Figure 3. Flowchart of Example 2: PonchonSavarit method for
binary distillation.
Figure 4. Graphical output for
Example 2: a) enthalpycomposi
tion diagram from enthalpy data;
and b) difference points (open
circles) and feed line for z
A
= 0.5,
x
D
= 0.90, x
B
= 0.0216, q = 0.5,
and R = 0.288. The yx composi
tion diagram is also shown at the
a
b
Page 6
Chemical Engineering Education318
distillation such that the extraction process can be solved,
analyzed, and displayed interactively.
Example 3
Direct Solving Exact Methods for
Multicomponent Distillation[4]
Despite its practical importance, multicomponent distil
on separations. This is mainly because analysis of multi
component separations requires solving material balances,
enthalpy balances, and equilibrium relations at each stage,
only an approximate method commonly referred to as Fen
skeUnderwoodGilliland (FUG) has been used to make
preliminary designs and optimize simple distillation.[4] Al
ternatively, commercial simulators have been introduced to
solve multicomponent separations in detail, but students often
treat these commercial process
simulators as black boxes.[7,14]
We used MATLAB to solve the
nonlinear algebraic equations for
multicomponent distillation in
userfriendly routines in MAT
LAB were used to employ the
equationtearing, bubblepoint
method in solving the governing
equations. This numerical method
consists of calculating equilibrium
compositions and enthalpies,
solving the modified material
balance equations, and updating
solutions using Newton’s method
(see Table 3). As indicated in the
flowchart of the procedure in
Figure 6 (page 322), the system of
equations was solved for composi
tions at each stage by the matrix
solver “sparse” in MATLAB.[1]
The Newton’s method was used to
update the guess of tearing vari
ables, temperature, and vapor rate
at each stage. A function “froot.m”
was created which solves nonlin
ear equations using a Newton’s
method to update the temperature
and vapor rate at each stage. Once
temperature, enthalpy, and com
positions are obtained, the heat
duties can be determined.
Homework Assignments
Using the developed MATLAB
code, students were asked to solve
a multicomponent distillation of hydrocarbons and compare
the results with those obtained from the commercial pro
cess simulator, AspenPlus (see Table 4, page 322). Again,
a handout that describes the method used in the code was
distributed and explained in a recitation session before the
homework was distributed. As depicted in Figure 7 (page
323), a simple thermodynamic model (Raoult’s law in which
the Antoine equation has been used to provide the vapor pres
sure information) overpredicts the volatility of “light nonkey
(LNK)” component (ethane) and underpredicts that of “heavy
nonkey (HNK)” components (pentane and hexane) in the
multicomponent distillation of hydrocarbons. As a result, the
compositions of the “light key (LK)” component (propane) in
the distillate and the “heavy key (HK)” component (butane)
in the bottoms are slightly lower than the values obtained
from Aspen simulation with more accurate thermodynamics
models such as SoaveRedlichKwong equation.
Figure 5. Snapshots of graphical output of Example 2: PochonSavarit method for
binary distillation of acetone and water: a) rays (solid) and equilibrium lines (dashed)
in the rectifying section; and b) rays and equilibrium tie lines in the rectifying section.
The operating lines obtained under the assumption of constant molal overflow are
shown by the dashed lines in the y vs. x diagram at the right for comparison.
a
b
Page 7
Fall 2006 319
TaBle 3
Portion of a MaTlaB Tutorial Handout for example 3
If we assume that phase equilibrium is achieved at each stage, the governing equations for a distillation process for n components consisting of N stages
can be written as[4]
l x V y F z l U x V W yj j j j j j j j j j j j− − + ++ + − +( ) − +( ) =1 1 1 1 00
x
( )
( )
; ( )
,
, .
1
2
1 1 3
1 1
y K
x y
j i j j
i j
i
n
i j
i
n
=
= =
= =
∑ ∑
ll h V H F h l U h V W Hj j j j j F j j j j j j− − + ++ + − + − +1 1 1 1 ( ) ( ) jj j− =Q 0 ( )4
where lj, Vj, Fj, Uj and Wj are liquid, vapor, feed, liquid side stream, and vapor side stream rates at stage j, respectively. hj, Hj and Qj are liquid and
vapor enthalpies, and heat transfer at stage j, respectively. We utilize the equationtearing, bubblepoint method in solving the governing Eq. (1)(4)
which consists of: i) calculating equilibrium compositions and enthalpy; ii) solving the modified material balance equations; and iii) updating solutions
using the Newton’s method.
i) Equilibrium Compositions and Enthalpy Calculations
For simplicity, the Antoine equation is used to evaluate Kvalues and enthalpy of each component. One of tear variables, temperature is assumed and the
volatility of each component is determined by Ki = yi/xi = P
sat
i/Ptotal. Meanwhile, the enthalpy of each species can be determined from
[4] h h Hv i v i i
vap
, ,= +
0 ∆
where the ideal gas species molar enthalpy h C dT a T T k and Cv i pV i
T
T
k i
i
K K
p, , , ( ) /
0 0
1
4
0
0
= = −∫ ∑
=
VV i i i i ia a T a T a T, , , , ,
0
1 2 3
2
4
3= + + + is the heat capacity at
constant pressure. At low pressures, the enthalpy of vaporization is given in terms of vapor pressure by classical thermodynamics[4]
∆H RT
d P
dT
RT
B
T C
i
vap i
sat
i=
= −
+
2 2ln
ii( )
2 5( )
ii) Modified Material Balance Equations
By rearranging the governing equations Eq. (1)(3) for each stage, the following systems of equations for component i at stage j are obtained:[4]
B C
a B C
a
B C
a B
1 1
2 2 2
3
1 1
0 0
0 0
0 0
…
N N
N N
− −
−
x
x
x
x
1
2
1
N
N
=
−
D
D
D
D
1
2
1
N
N
( )6
where xj=[x1,j, x2,j, x3,j, ??? xn,j] is the liquid composition vector at stage j, and the components of the tridiagonal matrix in each stage are
a V F W U V
B V
j j m m m
m
j
j j
j N= + + +( )− ≤ ≤
=−
=
−
+
∑ 1
1
1
1
2 7, ( )
++ − −( )− + + +
=
∑ F W U V U V Wm m m
m
j
j j j i jK
1
1 ( ) , ,, ( )
, ( ),
1 8
1 1 91 1
≤ ≤
= ≤ ≤ −+ +
j N
K j Nj j i jC V
and the riighthandside vector at each stage jD F=− jzz j j N, ( )1 10≤ ≤
The system of equations Eq. (6) is solved for xi,j by the sparse matrix solver “sparse” in MATLAB
[1] . . . [instructions continue].
Example 4
[4]
Adsorption is one of the most difficult separation processes
to teach since it is ratebased, which requires a mass transfer
analysis, and is usually operated as a time dependent process.
As a result, adsorption with very simple isotherms, such as
an irreversible isotherm, has been analyzed in most separa
tion texts.[3, 4] After we introduced the concept of adsorption
isotherms and a breakthrough curve in fixedbed adsorption,
we used MATLAB to develop a numerical model for rate
based, timedependent adsorption processes such as thermal
swing adsorption. In thermal swing adsorption, one bed is
adsorbing the solute at ambient temperature, while the other
bed is desorbing the adsorbate at a higher temperature. A
numerical solution for the regeneration (desorption) step
can be obtained using a procedure discussed by Wong and
Niedzwiecki[15] (see Figure 8, page 324). Again, a handout
that describes the method used in the MATLAB code was
distributed in the lecture. In the absence of axial dispersion
and a constant fluid velocity, the partial differential equations
can be solved using the fivepoint, biased upwind, finite dif
ference approximation derived from Taylor’s series expan
sion. The time integration of the sets of ordinary differential
equations was carried out using a simple Euler method with
a small step size. Regenerationloading profiles in thermal
swing adsorption at two different regeneration air interstitial
velocities, v = 30 m/min and v = 60 m/min, are shown in
Figure 9 (page 324), and the effect of air flow on the heating
Page 8
Chemical Engineering Education320
Initial guesses for tear variables, T and Vj j
Calculate enthalpy (hj, Hj) and volatility (Kij)
Solve tridiagonal matrix for xj
Compute new Tj, Qi, Vj and Lj
• Antoine equation
• Enthalpy equation
Iterate until Tj is converged
• Sparse matrix solver
• Newton’s method
• Converging criteria
Reflux ratio & feed stage
Distillate, bottoms compositions
Design Input
Display vapor and liquid composition profiles
6
b Figure 6. Flowchart of Example 3: multicomponent distil
lation.
TaBle 4
an example of MaTlaB Homework Problem Paired With a Problem Using aspen Plus
to Solve a Multicomponent Distillation of Hydrocarbons.
1. Multicomponent Distillation using Aspen Plus
Distillation column specifications are given as below:
 Feed (saturated liquid at 250 psia and 213 °F)
Component Lbmol/h
Ethane 3.0
Propane 20.0
nButane 37.0
nPentane 35.0
nHexane 5.0
 Column pressure = 250 psia
 Partial condenser and partial reboiler
 Distillate rate = 23.0 lbmol/h
 Reflux rate = 150.0 lbmol/h
 Number of equilibrium plates (exclusive of condenser and reboiler) = 15
 Feed is sent to middle stage
Email the following to the TA:
1) a printout of your Aspen process with your NetID as the column name as well as a stream table showing the results using the conditions
described in the exercise including stage temperatures, vapor and liquid flow rates, and reboiler and condenser duties.
2) a graph of liquid composition of each component vs. stage number
3) a graph of vapor composition of each component vs. stage number
2. Multicomponent Distillation using MATLAB
Repeat Problem 1 using simple MATLAB codes (problem2.m and froot.m) available at the ChemE 332 Web site. The code utilizes the equa
tiontearing, bubblepoint method in solving the MESH equations as described in the handout. For simplicity, the Antoine equation is used to
evaluate Kvalues and enthalpy of each component. The file froot.m is a function routine which solves nonlinear equations using a Newton’s
method. See the handout for details. When the code is run, you are asked to input the conditions described in the problem. Submit the follow
ing printouts
1) a graph of liquid composition of each component vs. stage number
2) a graph of vapor composition of each component vs. stage number
Compare your results with those obtained in Problem 1.
TaBle 5
Responses of the Students
Responses to:
“How valuable were the lectures and homework assignments based
on MATLAB?”
% responses
1 = taught me little 3.0
2 = taught me some 4.2
3 = educational 16.3
4 = very educational 57.7
5 = extremely educational 17.8
Some comments from the students
“The mix of conventional method and animation helps us to under
stand the concept from the front.”
“I like how much of it is graphic. This makes the learning more
intuitive.”
“I hate graphical methods, but using MATLAB is okay.”
“Some MATLAB homework problems were too easy because I just
punched in numbers”
“No more MATLAB, please.”
Page 9
Fall 2006 321
and cooling cycle in thermal swing adsorption was discussed
in detail. Students were asked to use the MATLAB code to
determine the regeneration characteristics in thermal swing
adsorption at various operating conditions, such as air flow.
In the future, the students will be asked to extend the code
to solve similar ratebased sorption processes such as ion
exchange and chromatography.
PEDAGOGICAL ASPECTS OF STUDENT
ACTIVITIES AND RESPONSES OF STUDENTS
The pedagogical aspects of student activities have evolved
over the years. The incorporation of interactive display of
graphical methods was done in lectures to effectively dem
onstrate the effect of design parameters on the distillation
Figure 7. Vapor composition of each compo
nent at each stage in Example 3: multicompo
nent distillation of hydrocarbons, a) obtained
using direct matrix solver in MATLAB with a
simple thermodynamic model (Raoult’s law),
and b) obtained from Aspen Plus with the
SoaveRedlichKwong model. Operating condi
tions are listed in Table 4.
column. Then, students were asked to run the same code
used in lecture to solve similar problems by varying design
inputs such as feed conditions. We started asking the students
to modify the MATLAB codes to extend its capabilities and
analyze the results. A tutorial on how to develop a MAT
LAB code was instituted in the recitation sessions to make
this transition smoother. We conducted a survey on using
MATLAB in lectures and homework assignments as a part of
midterm evaluation, and results are summarized in Table 5.
The wording of questions and responses in the table is taken
verbatim from the survey. The survey also provided a space
for written comments. As indicated in Table 5, the use of
MATLAB was generally accepted as a useful aid in teaching
separations. In the future, we would like to allow
the students to play more active roles in solving
various separation problems using MATLAB. In
particular, students will be asked to modify the
MATLAB codes and extend them to work out many
other separation processes such as absorption, strip
ping, and extraction.
CONCLUSIONS
We have demonstrated that simple mathemati
cal software, MATLAB, can be integrated into a
separations course as a useful and effective teaching
aid for visualization and numerical computation of
many separation processes. The benefits of using
MATLAB are the following:
• Stepbystep and interactive display can make
conventional graphical approaches more enjoy
able to students and more effective in classroom.
Visualization of the graphical methods has been
further extended to the study of packedcolumn
analysis.
problems graphically and by trialanderror,
we were able to spend more time discussing the
conceptual and quantitative description of pro
cesses, and incorporate recent trends and design
aspects in the separations course.
to solve systems of nonlinear equations and
perform numerical time integration, which, in
turn, provides students with a better understand
ing of complex separation processes such as
multicomponent distillation and thermal swing
adsorption.
a
b