Keyword Manual PDF
Keyword Manual PDF
Keyword Manual PDF
0
Keyword Manual
License and Copyright Information
PRO/II 8.0
The software described in this guide is furnished under a written agreement and may be
used only in accordance with the terms and conditions of the license agreement under
which you obtained it. The technical documentation is being delivered to you AS IS and
Invensys Systems, Inc. makes no warranty as to its accuracy or use. Any use of the
technical documentation or the information contained therein is at the risk of the user.
Documentation may include technical or other inaccuracies or typographical errors.
Invensys Systems, Inc. reserves the right to make changes without prior notice.
Copyright Notice © 2006 Invensys Systems, Inc. All rights reserved. No part of the
material protected by this copyright may be reproduced or utilized in any form or by any
means, electronic or mechanical, including photocopying, recording, broadcasting, or by
any information storage and retrieval system, without permission in writing from Invensys
Systems, Inc.
Trademarks PRO/II and Invensys SIMSCI-ESSCOR are trademarks of Invensys plc, its
subsidiaries and affiliates.
®
RATEFRAC P P is a trademark registered to KOCH-GLITSCH.
®
BATCHFRAC P P is a trademark registered to KOCH-GLITSCH.
AMSIM is a trademark of DBR Schlumberger Canada Limited.
Visual Fortran is a trademark of Intel Corporation.
Windows NT, Windows 2000, Window 2003, Windows XP and MS-DOS are trademarks of
Microsoft Corporation.
Adobe, Acrobat, Exchange, and Reader are trademarks of Adobe Systems, Inc.
All other products may be trademarks of their respective companies.
U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND
The Software and accompanying written materials are provided with restricted rights.
Use, duplication, or disclosure by the Government is subject to restrictions as set forth in
subparagraph (c) (1) (ii) of the Rights in Technical Data And Computer Software clause at
DFARS 252.227-7013 or in subparagraphs (c) (1) and (2) of the Commercial Computer
Software-Restricted Rights clause at 48 C.F.R. 52.227-19, as applicable. The
Contractor/Manufacturer is: Invensys Systems, Inc. (Invensys SIMSCI-ESSCOR) 26561
Rancho Parkway South, Suite 100, Lake Forest, CA 92630, USA.
2 – RUNNING PRO/II.............................................................................................9
TU UT
5 – GENERAL DATA...........................................................................................33
TU UT
7 – REGRESS ......................................................................................................59
TU UT
12 – DISTILLATION ..........................................................................................271
TU UT
12.2 – IO ALGORITHM......................................................................................321
TU UT
13.5 – FURNACE...............................................................................................539
TU UT
15 – SOLIDS ......................................................................................................621
TU UT
Overview
The keyword manual comprises of an extensive description of the keyword data input
®
requirements in Version 8.0 of the PRO/II simulation program. PRO/II is a
P P
Chapter 1 INTRODUCTION 1
Where Can I Find Additional Help?
Chapter 1 INTRODUCTION 3
Each chapter provides complete information about a specific program feature. First is a
summary of all available keywords. Next is some general information, followed by a
detailed discussion of the input requirements. Usually, each chapter ends with a few
illustrative examples. After becoming familiar with a PRO/II feature, the user normally
needs to refer only to the Keyword Summary, and less frequently to the in-depth
information that follows.
The Keyword Summary presents the form of all keyword statements described in a
chapter. It serves as a quick overview of input requirements without having to refer to the
detailed material that follows. A quick inspection reveals all valid combinations of
statements, keywords, and data entries. It shows all available options and indicates which
data is required, optional or conditional.
General Information is the second part of each chapter. This is the introductory material
that imparts a general understanding of the purpose and capabilities of the feature.
Input Description is a detailed explanation of all statements shown in the Keyword
Summary. It discusses every available keyword and data entry. It is an in-depth
presentation of the do’s and don’ts of using the feature and clearly describes the purpose
and use of every entry on each statement.
Examples, the last part of each chapter includes instructive demonstrations of typical
applications. Normally, each example begins with a statement of problem conditions. Next
comes a sample of the actual keyword input that satisfies the stated conditions.
Comparing the sample input to the problem statement is often a quick way to become
familiar with a new feature.
PRO/II Upgrades
PRO/II is constantly evolving through continuous development work that enhances
existing capabilities and adds new ones. While great effort is made to maintain
compatibility with earlier versions, complete agreement cannot always be assured. These
considerations make it important to have the appropriate manual for the version of the
program being used.
Input manual updates are available with each release. This manual is based on Version
7.1, released in 2005. The best source of information about programs, manuals, and other
SimSci™ products is a SimSci representative.
Chapter 1 INTRODUCTION 5
Asia-Pacific United Kingdom China
Invensys Software Systems Invensys Systems (UK) Limited Invensys Process
(S) Pte Ltd High Bank House, Exchange Street, Systems (China) Co., Ltd
15, Changi Business Park Stockport, Chesire,
Central 1 United Kingdom SK3 0ET 809, Towers B, Eaglerun
Singapore 486057 Tel: + 44 161 429 6744 Plaza, No.26 Xiaoyun Road
Tel: +65 6829 8657 Fax: + 44 161 480 9063 Chaoyang District, Beijing
Fax: +65 6261 9492 simsci.uk@ips.invensys.com 100016
Tel: +86 10 8458 5757
asiapactech@simsci.com Fax: +86 10 8458 4521
china.solution@ips.invensys.
com
Colombia Korea
Invensys Systems LA Invensys Systems Korea
Colombia
551-3 Hyosung-dong, Gyeyang-gu,
Calle 100 # 36-39 Int. 4-203, Incheon, 407-040
Bucaramanga, SDER Tel: + 82-32-540-0665
Tel: +57 1313 6360 Fax: + 82-32-542-3778
jekwon.lee@ips.invensys.com
support.co@simsci.com
General Information
T
PRO/II operates on a broad range of computer platforms. The PRO/II keyword file is the
common input language that allows input data to be transferred to any computer. Within
the tolerances afforded by the compilers used on each computer, the same input file will
always produce the same results, regardless of where the calculations are executed.
PRO/II usage may be divided into two broad classes of users:
1. PRO/II Graphical User Interface (GUI) users
2. Keyword users.
GUI Users
Refer to the PRO/II 8.0 Installation Guide for usage and system requirements.
CONVENTIONS
This section defines a few basic terms required to discuss keyword input. The following
sections present the syntactical rules of the input language.
Basic Concepts
Data Entries
Data entries (or simply “entries”) are the basic constructs used to enter input data. An
entry may consist of a keyword, numeric data, or a combination of both. Most entries
begin with a keyword.
Any entry that appears enclosed by braces is always optional. Also, entries that are shown
as having a default value or setting are optional, even when no braces are present.
Numeric Data
Numeric data are integer or floating-point (“real”) numbers. A floating-point value may
include a decimal fraction, while an integer cannot. In this manual, an argument or entry
represented by the word “value” may be a floating-point number of any value (subject to
any imposed constraints). Other markers, such as “i”, “j”, “cno”, “idno”, etc., indicate
integer values. An integer entered for a floating-point value is converted to its floating-
point form; but a floating-point value entered in place of an integer causes an error.
When you do not supply any value, the specific numeric value shown is the default value
used. Any entry having a default is optional, even when not otherwise shown (such as by
enclosing the entry in braces).
Decimal points are not required for whole numbers, and scientific (E) notation may be
used for any floating-point number. For example:
PROP STREAM= 1, TEMP=100, PRES= 14.7E0, COMP=1, 1E2
Keywords
A keyword is a mnemonic word that identifies a category, a statement, or a datum in the
input. Most keywords may be abbreviated to the first four characters and only these four
characters need to be spelled correctly. There are a few exceptions to this rule, but they
are well documented in this manual. For example, the following two statements are
equivalent and valid, despite the misspelling of ‘‘METRIC’’.
If the keyword is less than four characters, then it will be interpreted as complete
when the full key word is read.
Will be read as
A keyword that stands alone is a complete entry that acts as a switch. The mere presence
of the keyword ‘‘turns on’’ the option it represents. If underlined, the keyword is the default
choice and is optional.
Some keywords require one or more arguments. An equal sign (=) and a representation of
the argument immediately follow all keywords that require arguments.
Sometimes keywords act as arguments to other key words. Normally in this case, one
keyword selected from a set of choices serves as the argument. If a default exists, it
usually appears underlined as the first keyword in the set.
Underlined keywords, shown as arguments, indicate default settings and consequently are
always optional. For example:
The only choices for the argument of RATE are the keywords M, WT, or LV. The entire
“RATE= M or WT or LV” entry is optional, since RATE=M is used by default when the
entire entry is missing. Since a default is shown, no braces appear to show that the entry
is optional.
The TBP entry is optional (because of the braces). Omitting this entry turns “off” the TBP
option, since TBP is not underlined and not a default selection.
Qualifiers
A qualifier modifies or enhances a keyword. It always follows immediately after the
keyword and precedes an equal sign. It is always optional and always appears enclosed
in parentheses. Qualifiers may be keywords, perhaps representing dimensional units, or
integers, depending upon the usage. Some qualifiers may include several items, but rarely
allow a floating-point value. As an example:
In this example, the word “unit” in parentheses following keyword DP shows the
availability of an optional dimensional units qualifier. Since DP represents pressure drop
(or pressure difference), “unit” represents any keyword from the “pressure difference”
class of dimensional units (see Table 4.2). If the DP entry (or the entire statement) is
omitted from the input file, the default value for pressure drop is zero. The above sample
Arguments
An argument supplies additional data required by certain keywords. In these cases, the
argument always follows the equal sign after the keyword. Specific numeric values shown
as arguments represent default values. When no default value exists, “value”, “i”, “text”,
“option”, or another indefinite marker shows the type of argument required. For example:
TITLE is a required stand-alone keyword that identifies the statement and does not require
an argument.
The “PROJECT= text” entry is optional, as shown by the braces. Keyword PROJECT
could be truncated to PROJ, the first four characters. The equal sign separates keyword
PROJECT from its argument, while “text” shows that any text may serve as the argument.
When the entries on a data line must follow a fixed order, keywords are not needed and
therefore not used. For example:
Each keyword in this example stands alone, and does not have an argument or a qualifier.
As the first keyword shown, DIMENSION is required to identify the statement. ENGLISH is
the default system of dimensional units, as indicated by the underline.
OPERATION XOPTION=CONTINUE
Entry XOPTION is optional, since it includes a default argument “CONTINUE” indicating
that calculations continue even when an error occurs.
OPERATION TMIN (K) =0.0
The minimum allowable temperature is 0.0 K by default.
HX {ZONES= 5}
The keyword ZONES is optional and by default is turned “off” since it is bracketed.
Entering ZONES without an argument value defaults to 5 zones used for zone analysis.
Data Categories
Input data are divided into the categories listed in Table 3.1. Each category of data and
each unit operation are discussed in a separate section of this manual. Each section
contains a list of the available keywords and a discussion of their use. Refer to Section
18.1, Restart, for alternate input requirements when restarting a problem using keyword
input.
The categories must appear in the order shown in Table 3.1. Statements within each
category may appear in any order, subject to the following restrictions:
1. The first statement of each data category must be the category heading statement.
Refer to Table 3.1.
2. For thermodynamic data, all statements used to describe each thermodynamic set
must be grouped together.
3. For stream data, all assay data for a stream must be grouped together.
4. For unit operations data, the first statement of each module must be the module
heading statement. All other statements that define the module must be grouped
together immediately following the heading statement.
5. An optional statement consisting only of the word END terminates the input file. Any
data after the END statement are ignored.
STREAM DATA
NAME 1, FEED STREAM / 2, TOP PRODUCT
Any entry that exceeds the maximum length allowed by the program is truncated. For
example, the DATE is limited to 12 characters (including blanks); therefore, the entry in
the previous example would be truncated to “TODAYS DATE ”.
For multiple data entries in a predefined order, embedded commas must be used as
placeholders for omitted intermediate entries. For example:
PETROLEUM 1, TBP285, 103.4, 49.2, 295.0 / &
2 ,,, 48.4, 300.0 / ...
In this case, the name and molecular weight are missing for component 2. The embedded
commas must be present to maintain the proper sequential order of information. In a few
places where an unambiguous interpretation is possible, there are exceptions to this rule
noted at appropriate places in this manual.
VALID INVALID
PROP & PROP ST&
STREAM=1, TEMP=100, & REAM=1, TEMP &
=10&
PRES=14.7,COMP=1, 100 / & 0,PRES=14.7, COMP=1, 10 &
3, 25 / 66.3 / 33.1 0 / 3, 25 / 66 &
.3 / 33.1
Dimensional Units
Any keyword that has units of measurement allows an optional qualifier that defines the
dimensional units used for data entry. The qualifier appears in parentheses after the
keyword. For example:
PROP STREAM=1, TEMP(C)=100, PRES(PSIA)=14.7, &
COMP(M)=100
In the General Data Category, the user defines a default set of dimensional units that are
used globally when the units are not supplied as a part of an entry. These global units
often are referred to as problem units, input units, or problem input units. Dimensional
units declared as keyword qualifiers act as local overrides to the global set. Complete
tables of all keywords for all classes of dimensional units are shown in Section 4,
Dimensional Units.
All heater-cooler duties are entered in millions of energy units per time. All
enthalpy data is entered either in energy units per weight unit or in thousands of energy
units per mole.
Read Option
The READ statement allows the user to read sections of data into a keyword input file
from remote data files. The sections of data appear in the remote files exactly as they
would appear in the keyword file. These files are then inserted into the keyword input file
at the READ statement locations.
For example, consider the following files:
File name= R1.DAT
U
TITLE
READ SOUR.DAT
STREAM DATA
PROP STREAM=1,TEMP=100,PRES=100,&
COMP=50/25/25/25
UNIT OPERATION
...
File name=SOUR.DAT
U U
COMPONENT DATA
LIBID 1,H2S/2,CO2/3,H2O/4,C1
THERMO
METHOD SYSTEM=SOUR
The resulting file as interpreted by the PRO/II input processor would be:
TITLE
COMPONENT DATA
LIBID 1,H2S/2,CO2/3,H2O/4,C1
THERMO
METHOD SYSTEM=SOUR
STREAM DATA
PROP STREAM=1,TEMP=100,PRES=100,&
COMP=50/25/25/25
UNIT OPERATION
...
For example, if the input file name is C1.DAT, the following remote files are read:
Examples
Examples of the Object Annotation feature follow.
COMPONENT DATA
NOTES TEXT = the component slate for this simulation contains light &
hydrocarbons.
LIBID 1, ETHANE/ 2, PROPANE/ 3,IBUTANE/ 4, BUTANE
METHOD SYSTEM = SRK
NOTES TEXT = Additional method SRK is defined to be used with BVLE unit.
FLASH UID=FL1
NOTE TEXT= Flash “FL1” & Stream “S1” & are used together.
The following Note is stored for this unit operation (including ampersands and quotation
marks):
Flash “FL1” & Stream “S1” are used together.
PROP STREAM=S1, ...
NOTE TEXT= “This note documents & Stream S1.”, SID=S1
This saves the following as the Note for this stream:
This Note documents Stream S1.
The quotation marks enclosing the body of the Note are not saved as part of the Note, but
allow the SID=S1 entry to appear on the statement after the Note.
UNITS
PRO/II offers great flexibility in the dimensional units available for supplying data and
printing results. Although the program uses a consistent set of units internally to perform
most calculations, the user isn’t required to use them, or even be aware of them. Since
PRO/II recognizes most of the more common units (and many of the less common as
well) the user usually can use any available data directly, without having to convert it to
dimensions recognized by the program.
There are three mechanisms by which the program identifies dimensional units.
1. The DIMENSION statement in the General Data Category declares the default
dimensions used for all input and output processing. Any data entered without a
specific dimensional unit qualifier uses the units declared on the DIMENSION
statement. This statement allows the user to declare a system of units, individual
units, or a mixed set consisting of a system modified by individual unit declarations.
If not used, the ENGLISH system (Table 4.1) serves as the default. Refer to Section
5 for further discussions.
Example: Set the default dimensions to SI, but override the temperature units to C,
and the time units to seconds.
TITLE
DIMENSION SI, TEMP=C, TIME=SEC
2. The OUTDIMENSION statement controls the dimensional units used for printing all
results, and has no effect on the dimensional units used to input data. This
statement can generate printout in place of or in addition to results printed using the
units from the DIMENSION statement. If the OUTDIMENSION statement is omitted,
all results appear in the units declared on the DIMENSION statement. See Section
5, General Data, for more information.
Example: Generate an additional output report in ENGLISH units, but override the
standard liquid volume units to barrels.
TITLE
DIMENSION...
OUTDIMENSION ENGLISH, LIQV=BBL
3. Individual dimensional unit qualifiers are available on most entries that define
dimensional quantities, and apply only to the input data supplied by each entry.
When used, these qualifiers supersede the DIMENSION statement or any other
relevant default unit. When omitted, the dimensions of the data are those declared
on the DIMENSION statement. These qualifiers are discussed throughout the
manual.
Example: Set the temperature of stream FD at 100 C, the pressure at 50 psig, the
T
rate at 9000 pounds per hour, and give the composition on a standard liquid volume
basis:T
Providing the qualifier LB/HR on the RATE keyword automatically changes the
basis from M (molar, default) to WT.
Table 4.1 lists the default dimensions included in each available system of units
(ENGLISH, METRIC, and SI). The dimensional classes shown are those that may be
specified on the DIMENSION statement. Table 4.2 lists all dimensional units in all
dimensional classes available through individual entry qualifiers. Refer to the discussion
of the DIMENSION and OUTDIMENSION statements in Section 5, General Data, for more
information and examples.
Table 4.1
Systems of Default Dimensional Units
Units Class ENGLISH METRIC SI
Temperature F C K
2
Pressure psia kg/cm P P kPa
Weight lb kg kg
Time hr hr hr
Length ft m m
Fine Length in mm mm
Velocity ft/sec m/sec m/sec
Energy Btu kcal kJ
Work hp kW kW
6 6 6
Duty 10 Btu/hr P P 10 kcal/hr
P P 10 kJ/hrP P
2 2 2
Heat Transfer Coefficient Btu/hr-ft -F P P kcal/hr-m -C P P kW/m -K P P
3 3 3
Vapor Volume ft P P m P P m P P
Specific Volume,
3 3 3
Liquid ft /lb
P P m /kg
P P m /kg
P P
3 3 3
Vapor ft /lb
P P m /kg
P P m /kg
P P
3 3 3
Vapor Density lb/ft P P kg/m P P kg/m P P
3 3
Petro Density API gravity kg/m P P kg/m P P
K Kelvin F Fahrenheit
C Celsius R Rankine
Class: PRESSURE or PRESSURE DIFFERENCE
Keyword Dimensional Units Keyword Dimensional Units
2
D/CM2 Dyne/cm P P ATE Technical atm (gauge)
2
N/M2 Newton/m P P ATM Atmosphere
2
PA Pasca PSIA Pound/inch (abs) P P
2
KPA Kilopascal PSIG Pound/inch (gauge) P P
2
KPAG Kilopascal (gauge) PSF Pound/foot P
Class: WEIGHT
Class: TIME
2
MMIC2 Millimicron P P HECT Hectare
2 2
MIC2 Micron P P IN2 Inch P P
2 2
MM2 Millimeter P P FT2 Foo P P
2 2
CM2 Centimeter P P YD2 Yard P P
2 2
DM2 Decimeter P P MI2 Mile P P
2
M2 Meter P P ACRE Acre
Class: VELOCITY
3 3
CM , CC P P Centimeter P P GAL U.S. gallon*
3 3
DM P P Decimeter P P IGAL Imperial gallon*
LIT Liter BBL API barrel*
3 3 3 3
M P P Meter P P MFT P P 1000 feet P
3 3 3
KM P P 1000 meter P P MMFT 1000000 feet
P P
3 3
IN P Inch P MGAL 1000 gallons
P
3 3
FT
P P P Foot
P P P MMGAL 1000000 gallons
3 3
YD P P Yard P P MBBL 1000 barrels
* Liquid volume only.
3
LIT/G Liter/gram mole FT3/LB Feet /pound mole
P P
3
M3/G Meter /gram mole P P GAL/LB U.S. gallon/pound mole
3
CM3/KG Cm /kilogram mole
P P IG/LB Imp. gallon/pound mole
LIT/KG Liter/kilogram mole BBL/LB API barrel/pound mole
3
M3/KG Meter /kilogram mole
P P
2
Class: ENERGY P P
the specific enthalpy keyword qualifiers to specify the units of activation energy.
2 2
KC/H Kcal/hour-meter -C P P BTU/H Btu/hour-foot -F P P
2 2
HMC/K Hour-meter -C/Kcal
P P HFF/B Hour-foot -F/Btu
P P
The following volume rates are available as either liquid or vapor (gas) volume rates.
Liquid volume is the default. Use the GV qualifier to specify gas volume rates
Keyword Dimensional Units Keyword Dimensional Units
3 3
M3/S Meter /second
P P FT3/S Feet /second
P P
3 3
M3/M Meter /minute
P P FT3/M Feet /minute
P P
3 3
M3/H Meter /hour
P P FT3/H Feet /hour
P P
3 3
M3/D Meter /day
P P FT3/D Feet /day
P P
3
L/S Liter/second MFT3/S 1000 Feet /second
P P
3
L/M Liter/minute MFT3/M 1000 Feet /minute
P P
3
L/H Liter/hour MFT3/H 1000 Feet /hour
P P
3
L/D Liter/day MFT3/D 1000 Feet /day
P P
Keyword Summary
Heading Statement (required)
TITLE{NEWFILE= fileid, OLDFILE= fileid, CASEID= caseid},
{PROJECT= text, PROBLEM= text, USER= text},
{DATE= text, SITE= siteid}
STDVAP(FT3/LB)= 379.49
or
STDTEMP(F)=60 and STDPRES(ATM)=1.0
The individual defaults shown here are based on ENGLISH units. See Table 5.1 for
METRIC and SI defaults.
OUTDIMENSION ENGLISH or METRIC or SI, ADD or REPLACE,
U U U U
STDVAP(FT3/LB)=379.49
or
STDTEMP(F)=60 and STDPRES(ATM)=1.0
TVPBASIS(F)= 100,
RVPBASIS= APINAPHTHA or APICRUDE or P323 or
U U
{COMP=i,j}
CHECK SOLID
NOWARNING, SEQMAP
DBASE DATA= {PC1}, {SEQUENCE, STREAM, PETRO,
PROFILE, PDS or ALL}
General Information
General Data is always the first category of data in a keyword input file. With the exception
of the TITLE statement, all statements in this category are optional.
Input requirements for restarting a problem differ from those described here. Refer
to Section 18.1, Restart, for instructions in using the problem restart facilities.
Input Description
Heading Statement (required)
TITLE{NEWFILE= fileid, OLDFILE= fileid, CASEID= caseid},
{PROJECT= text, PROBLEM= text, USER= text},
{DATE= text, SITE= siteid}
The TITLE statement is always the first statement in an input file. Keyword TITLE must be
the first entry on the statement; all other entries are optional.
STDVAP(FT3/LB)= 379.49
or
STDTEMP(F)=60 and STDPRES(ATM)=1.0
The DIMENSION statement defines the default dimensional units used for problem input.
The ENGLISH, METRIC, and SI keywords each select a complete predefined system of
dimensional units, as shown in Table 5.1. PRO/II uses the ENGLISH system of units for
program input when the DIMENSION statement is missing.
Defining a mixed system of units is possible by selecting a predefined system (ENGLISH,
METRIC, or SI) and then using appropriate keywords to override individual dimensional
units. Table 4.2 contains a complete list of keywords for all available dimensions of each
dimensional class. For example, to use the SI system of units with temperature input in
degrees Celsius and time in minutes, use:
DIMENSION SI, TEMP=C, TIME=MINUTE
For displaying dimensional units of measure, the user should note that the following output
report conventions apply:
1. For ENGLISH units of measure, thousands (i.e., 103) of units are labeled as “M”,
P P
2. For SI or METRIC units of measure, thousands (i.e., 103) of units are labeled as
P P
6
“K*”, while millions of units (i.e., 10 ) are labeled as “M*”.
P P
3
Vapor Volume ft P P m3 P P m3
P P
Specific Volume,
3 3 3
Liquid ft /lb
P P m /kg P P m /kg
P P
3
Vapor ft /lb
P P m3/kg P P m3/kg
P P
3
Vapor Density lb/ft kg/m3
P P P P kg/m3 P P
In later sections of input, certain keywords allow qualifiers (selected from Table 4.2) that
override the dimensions declared on the DIMENSION statement. Such overrides apply
only to the input values supplied by the specific data entry that declares the override.
Problem output ignores these override dimensions, and consistently reports results in the
dimensions specified on the DIMENSION and/or OUTDIMENSION statement (or set by
default). For example:
TTITLE DIMENSION SI, TEMP=C
...
OPERATION TEMP(F)= 200, PRES(ATM)= 1.0
...
In this case, the SI unit of pressure is kiloPascal (PRES=KPA), with temperature in
degrees Kelvin (see Table 5.1). The “TEMP=C” entry on the DIMENSION statement
redefines the default temperature unit as degrees Celsius. The OPERATION statement
includes “TEMP(F)= 200” and “PRES(ATM)= 1.0” that supply a temperature of 200 F and
a pressure of 1.0 atmosphere (refer to Table 4.2 for available options). These local
overrides do not apply to any other data entries.
These two entries, DENSITY and XDENSITY, are linked. For English
units of measure, XDENSITY overrides DENSITY, i.e., values input for DENSITY
will be taken as API unless the XDENSITY keyword is changed to DENSITY.
When XDENSITY is set to DENSITY, you can adjust the density units for input
density values by changing the DENSITY keyword unit options. For SI and Metric
units of measure, values input for DENSITY will be taken to be in the units
specified by the DENSITY entry.
PBASIS This defines the standard atmosphere of pressure used as
the basis for converting between gauge and absolute
pressure. The equation used is:
STDVAP(FT3/LB)=379.49
or
STDTEMP(F)=60 and STDPRES(ATM)=1.0
The OUTDIMENSION statement selects the dimensional units used to report results.
When no OUTDIMENSION statement appears in the keyword file, PRO/II prints results in
the units used for problem input as defined in the DIMENSION statement.
ADD The ADD keyword instructs PRO/II to generate a report in the
default units, and an additional report using the dimensional units
specified on the OUTDIMENSION statement. This is the default
when an OUTDIMENSION statement is given.
or The REPLACE keyword on the OUTDIMENSION statement reports
REPLACE all results in the dimensions defined on the OUTDIMENSION
statement. This replaces the default report that prints results in the
dimensions used for problem input.
TVPBASIS(F)= 100,
RVPBASIS= APINAPHTHA or APICRUDE or P323 or
U U
This optional statement specifies default options for the entire run.
TRIALS The TRIALS entry globally limits the number of iterations through
each recycle loop. The default value is 20. See Section 17.4,
Recycle, for information on setting the iteration limits separately for
each recycle.
RECYCLE This entry allows selection of the recycle streams considered to
determine calculational convergence. The available options are:
ALL All streams must meet convergence criteria to reach
a successful solution of the problem.
TEAR Only recycle tear streams must meet the
convergence criteria to reach a solution.
TVPBASIS This entry is relevant only when True Vapor Pressure calculations
are requested; otherwise, it is ignored. The argument value defines
the default temperature used as the basis for computing TVP.
RVPBASIS This entry is relevant only when Reid Vapor Pressure calculations
are requested; otherwise, it is ignored. The available methods are:
Tolerances (optional)
Many of the calculations in PRO/II are iterative, and require certain relationships to be
satisfied within specified tolerances to reach a solution. Some of the tolerances, such as
those for flash calculations, are built into the program. Tolerances for column calculations,
product and unit performance specifications, and recycle convergence may be specified
here. Defaults are provided for each of these tolerances. Individual tolerance values may
be provided for columns (Section 12.1), generalized specifications (Section 10.4), and
recycle loops (Section 17.4).
TOLERANCE STREAM= 0.01, -1.0, 0.01, 0.01,
TEMP= -0.1, PRES= 0.005, DUTY= 0.001,
MISC= 0.003
FLASH=0.000003
This statement is optional. All specification tolerances may be expressed on either an
absolute or relative basis. All except temperature default to a relative tolerance. To
override a default tolerance, the following conventions are used. Positive values represent
relative tolerances, and negative values represent absolute tolerances.
S calculated − S specified
≤ relative tolerance (5-2)
S specified
where S is the specification value.
C lt,r − C lt,−r1
MAX t
≤ tolerance " a" for all components with xlt,r ≥ , " c"
C l ,r
(5-3)
PrT − Prt −1
≤ tolerance " d " (5-5)
Prt
where:
TEMP This sets the absolute error tolerance for unit operation
temperature specifications. The default is -0.1.
PRES This sets the absolute error tolerance for unit operation
pressure specifications. The default is 0.005.
DUTY This sets the absolute error tolerance for heater or cooler
duty specifications. The default value is 0.001.
MISC This sets the error tolerance on all other types of
specifications, including unit operation parameter
specifications. The default is 0.003.
The absolute temperature, pressure, or duty tolerances are given in the current
units of measure.
TOLERANCE FLASH=0.000003
FLASH This sets the global error tolerance when the DEFAULT
flash algorithm option is used. There are several embed-
ded convergence loops in the PRO/II flash algorithm. Each
level uses this value to set an appropriate tolerance. A
tighter tolerance tends to increase CPU time and, if tight-
ened too much, will result in flash failures. A looser toler-
ance will solve the flash faster but may result in noisy
derivatives for the controllers, optimizers, and recycle con-
vergence algorithms.
This entry is not valid if either the VER5 or the ALTER-
NATE methods are used. In these cases the user cannot
change the tolerance of the flash unit operation.
Scale (optional)
SCALE STREAM=sid, RATE (M or WT or LV or GV)=value,
U U
{COMP=i,j}
This optional statement allows the user to scale a selected product stream to a desired
flowrate. All other streams are scaled accordingly. PRO/II will also scale most of the unit
operations in the flowsheet. However, Table 5.2 gives the unit operations that will not be
scaled by PRO/II.
PRO/II will generate an input error if any of the unit operations shown in Table 5.2
are present in a flowsheet that also includes a SCALE statement.
Sequencing (optional)
SEQUENCE SIMSCI or PROCESS or ASENTERED or
U U
If the SEQUENCE statement is omitted from the input file, PRO/II uses the PROCESS
sequencing method. Note that if the ASENTERED or DEFINED keywords are selected,
PRO/II never overrides the SEQUENCE unit operation order, even if it is incorrect.
Example: A PRO/II keyword file is coded as follows:
TITLE
SEQUENCE DEFINED=HX2, C1, F1
...
UNIT OPERATIONS
FLASH UID=F1
...
HX UID=HX2
...
COLUMN UID=C1
...
SPLITTER UID=SP1
If the SEQUENCE statement is omitted, the calculational sequence is F1, HX2, C1, SP1,
which is chosen by the default PROCESS method.
If the SEQUENCE statement is given, the calculated sequence is HX2, C1 and F1. The
splitter, SP1, is skipped.
This feature is useful for exploring alternate flowpaths and zooming in on small subsets of
larger flowsheets without disassembling the input file.
NOWARNING, SEQMAP
The PRINT statement provides many options that control printout by suppressing
or requesting various sections of the final report.Modification of Output
WIDTH This entry controls the width of the page used for printout.
The options are 80, 120 or 132 columns wide. By default, a
page width of 80 columns is used. If the WIDTH keyword
appears without an argument, the page width is 132
columns.
PLENGTH The PLENGTH entry controls the maximum number of lines
printed on a page. It does not define the physical length of
the page. Any number of lines greater than zero may be
specified. The default is 60.
NOWARNING This entry will suppress all the warning messages in the
output.
SEQMAP This optional keyword generates an ASCII line diagram in
the output report that displays the calculation order of all the
units and the recycle loops used in the solution of the
flowsheet.
Exergy calculations are performed after the flowsheet has solved, and therefore
will not affect convergence.
DATA
This section provides an overview of the Component Data Category. Detailed
documentation, along with examples of common usage of all the component features, is
contained in a separate document, the SIMSCI Component and Thermodynamic Data
Input Manual. Unless noted otherwise, sections referred in this chapter refer to sections in
the SIMSCI Component and Thermodynamic Data Input Manual.
Keyword Summary
Category Heading Statement (required)
COMPONENT DATA
{FILL=SIMSCI} or { BANK=PROII_8.0:SIMSCI,
LIBRARY1:USER1, LIBRARY1:USER2, DIPPR, bankid...}
{FILL=SIMSCI}
NONLIBRARY i, name/...
{FILL=SIMSCI}
PETROLEUM i, name, MW, std liquid density, NBP/ ...
(densunit, tunit)
PHASE DEFAULT= VL or LS or S or VLS,
U U
{CUTSET=SIMSCI},
{BLEND=name}, {DEFAULT}
GENERAL=10, {GNAME=text1,text2,...} B B B B
NMP(unit) i, value/...
PTP(unit) i, value/...
TTP(unit) i, value/...
GHV(unit, M or WT) U i, value/...
U
LHV(unit, M or WT)
U i, value/...
U
SVTB i, value/...
Multi-property entries
FORMATION(V or L or S, unit, M or WT) i, enthalpy, Gibbs/...
U U U U
or
TABULAR= t1, t2, ....,/i, p1, p2, ..., /...
B B B B B B B B
If data or index values are not supplied, the kinematic viscosity is computed using
the Twu method.
General Information
The Component Data Category defines the pure and pseudocomponents in the problem
and, if necessary, defines or modifies component properties. All components encountered
in a problem, except for assay stream components, must be defined in this Category.
Streams defined by distillation assay curves in the Stream Data Category are broken into
pseudocomponents based on the rules defined in the Component Data Category.
Using keyword input, PRO/II accepts an unlimited number of components.
Non-library Components
Components not found in the PRO/II library may be entered as NONLIBRARY
components. The format for entering user components is straightforward, however PRO/II
users who do this regularly or need help in estimating unknown required properties should
use SIMSCI’s Property Data Management functionality present in PRO/II to assist the user
in determining all necessary component properties and develop a keyword file segment in
PRO/II ready form.
Solid Components
PRO/II handles solids with particle size distributions and user-defined attributes. See the
SIMSCI Component and Thermodynamic Data Input Manual for information on property
data requirements for solid components and associated input format. The SIMSCI
Component and Thermodynamic Data Input Manual is also used to define particle size
intervals and GENERAL attributes, and for entering actual solid component attribute
values.
Component Properties
The user may define or override component properties for all components in the
simulation. This includes components in the PRO/II component library, user-defined
components, petroleum pseudocomponents and solid forming components. The
properties include constants (such as molecular weight or critical properties), as well as
temperature dependent properties (such as enthalpies in various phase states). Where
appropriate, properties may be given on a mole or weight basis. Refer to Section 1.8 for
entering component property values.
UNIFAC Data
Section 1.9 discusses the methods for assigning UNIFAC structural groups and van der
Waals parameters for pure components. As discussed starting in Section 2.1 and in the
PRO/II Reference Manual, UNIFAC provides a means of estimating liquid activity
coefficients when actual VLE or LLE data are unavailable.
Keyword Description
Category Heading Statement (required)
COMPONENT DATA
The COMPONENT DATA statement has no entries and is required for all PRO/II
simulations.
TEXT This entry specifies the actual Note. The body of the Note
may be specified on multiple lines, but only the first 256
characters are stored. Additional characters are processed
and discarded.
Examples
Keyword Summary
Data Sets (one statement required, multiple statements
allowed)
DATASET SETID=datid, {DESCRIPTION=text,}
TYPE=VLE or LLE or VLLE or HMIX or GAMMA or
PROPERTY,
FORMAT=frmkey,
{COMPONENTS=cnoi /…,}
{EXPLICIT_COMPS= cnoi /…,} =datid,
{PCONST(unit)=value,}
{TCONST(unit)=value,}
EXPDATA= val1, val2 {,val3, val4,...} /... ,
(Property in Units)
{PRVP(phase, unit)
or PRDENS(phase, unit, basis)
or PRCP(phase, unit)
or PRENTH(phase, unit, basis)
or PRLATENT(unit, basis)
or PRCOND(phase, unit)
or PRVISC(phase, unit)
or PRSURF(unit)}
(Property or Equilibrium Data in Units)
{TUNIT(unit)}
(Equilibrium Data In Units)
{PUNIT(unit)
or ENTHUNIT(unit, basis)
or VOLUNIT(unit, basis)}
Chapter 7 REGRESS 59
Analyses (one statement required, multiple allowed)
ANALYSIS ANID=anlsid, {DESCRIPTION=text,} DATAID=datid,
(Thermo Set for Equilibrium Data)
METHOD=setid{,nparam}
(Property Correlation)
or CORR=corrno{,cno},
(Equilibrium Data)
{ESTIMATE(K or KCAL or KJ or NO) =
i,j,{par1}{,{par2},{par3},....}/...
(Property Correlation)
or CESTIMATE={{par1},{par2},....} & }
{AZEOTROPE(M or W, punit, tunit)=i,j,pres,temp,xi/...,}
{MUTUAL(M or W, tunit)=i,j,temp,xiI,xjII/..., }
{INFINITE(tunit)=i,j,temp,i,j/..., }
{FIX(K or KCAL or KJ or NO)={value},parno{,i,j}/...,}
{OBJECTIVE=objno, }
{ITER=50, TOLERANCE=.000001, }
{VERIFY,}{PRINT=NONE or PART or ALL, }
{STORE}
Keyword Description
Data Sets (one statement required, multiple statements
allowed)
DATASET SETID=datid, {DESCRIPTION=text,}
TYPE=VLE or LLE or VLLE or HMIX or GAMMA or
PROPERTY,
FORMAT=frmkey,
{COMPONENTS=cnoi /…,}
{EXPLICIT_COMPS= cnoi /…,} =datid,
{PCONST(unit)=value,}
{TCONST(unit)=value,}
EXPDATA= val1, val2 {,val3, val4,...} /... ,
(Property in Units)
{PRVP(phase, unit)
or PRDENS(phase, unit, basis)
or PRCP(phase, unit)
or PRENTH(phase, unit, basis)
or PRLATENT(unit, basis)
or PRCOND(phase, unit)
or PRVISC(phase, unit)
or PRSURF(unit)}
(Property or Equilibrium Data in Units)
{TUNIT(unit)}
(Equilibrium Data In Units)
{PUNIT(unit)
or ENTHUNIT(unit, basis)
or VOLUNIT(unit, basis)}
Chapter 7 REGRESS 61
with EXPDATA defaults to the number of components in the
data set, and the component order for EXPDATA is ascending
numerical order as in the COMPONENT DATA section.
Example:
To indicate a ternary system for which only two composition
fractions of each type are given, you need to provide the
following statements:
….
COMP=2/3/6, EXPL= 6/3 &
...
PCONST or PCONST or TCONST sets temperature or pressure to a
TCONST constant value for every point of the data set. When one of
these keywords is used, the corresponding data column is
eliminated from the experimental data to be entered with
EXPDATA.
EXPDATA This entry provides the experimental data.
val1, val2 Data must be entered in tabular form, with
{,val3, slashes separating the rows of data. The
val4,...} columns are in the order of the corresponding
/... symbol. If data are supplied, at least two data
points must be provided.
Property type
PRVP(phase,unit) Vapor pressure
PRDENS Density
PRCP Heat capacity
PRENTH Enthalpy
PRLATENT Latent heat
PRCOND Thermal
conductivity
PRVISC Viscosity
PRSURF Surface tension
TUNIT TUNIT is used to identify units for temperatures entered in
EXPDATA. The default is the system temperature in-units. The
units specified here are also used in all tables of the report.
For Equilibrium Data and Excess Property regressions, the
correlation temperature unit is always the SimSci internal unit,
Kelvin. For Property Correlation regressions, however, the
correlation temperature unit will be influenced by the TUNIT
specification. Certain correlation types, such as a polynomial,
Chapter 7 REGRESS 63
METHOD For equilibrium data or excess property regressions, the model to
be fitted is identified in the Thermodynamic Data section of the
input file, where it is part of a thermo set. Any model with binary
parameters may be treated (see the SIMSCI Component and
Thermodyanmic Data Input Manual, sections 2.4 and 2.5).
METHOD identifies which thermo set, of possibly several, is to be
used for the present regression analysis. If the model is NRTL or
UNIQUAC, there is a choice of number of parameters. Choices
other than the default are given on the METHOD statement with
nparam.
Chapter 7 REGRESS 65
OBJECTIVE OBJECTIVE is used to specify the objective function to be
minimized in the regression. The statement is necessary only when
there are alternative objective functions available (at present, only
for Property Correlations or for PTXY data) and the user makes
other than the default choice.
N
S = ∑ ( Proplexpt −Proplcalc ) 2 (7-1)
i =1
N
S = ∑ (1.0 − Proplcalc / Proplexpt ) 2 (7-2)
i =1
N
S = ∑ (1.0 − Proplcalc / Proplexpt ) 2 (7-3)
i =1
2
N NOC ⎛ Yijcalc ⎞
S =∑ ∑ ⎜⎜1.0 − ⎟⎟ (7-4)
i =1 j =1 ⎝ Yijexpt ⎠
N ⎛ NOC ⎛ Yijcalc ⎞
2
⎛ P ⎞
2
⎞
S =∑ ⎜∑ ⎜⎜1.0 = ⎟⎟ +⎜1.0 − lcalc ⎟ ⎟ (7-5)
⎜ j =1 Yijexpt ⎜ Plexpt ⎟⎠ ⎟
i =1
⎝ ⎝ ⎠ ⎝ ⎠
2
N NOC ⎛ K ijcalc ⎞
S =∑ ∑ ⎜⎜1.0 = ⎟⎟ (7-6)
i =1 j =1 ⎝ K ijexpt ⎠
2
2 2 ⎛ ⎞
N NOC ⎛ ′
K ijcalc ⎞ ⎛ ′′ ⎞
K ijcalc ⎜ K Dijcalc ⎟
S =∑ ∑ ⎜⎜1.0 = ⎟⎟ +⎜ 1.0 = ⎟ +⎜ 1.0 = (7-8)
i =1 j =1 ⎝ ′
K ijexpt ⎠
⎜
⎝ ′′ ⎟⎠
K ijexpt ⎜ K Dijexpt ⎟⎟
⎝ ⎠
N
S = ∑ ( H iexpt − H icalc ) 2 (7-9)
i =1
N
S = ∑ (Viexpt − Vicalc ) 2 (7-10)
i =1
2
N NOC ⎛ γ ijcalc ⎞
S =∑ ∑ ⎜⎜1.0 = ⎟⎟ (7-11)
i =1 j =1 ⎝ γ ijexpt ⎠
Chapter 7 REGRESS 67
6
LLE TXX 7
VLLE PTXXY 8
GAMMA TXG 11
Excess Property
HMIX HTX 9
VMIX* VTX 10
* Data type VMIX is not yet implemented in PRO/II
KEYWORD SUMMARY
This section provides an overview of the Thermodynamic Data Category. Detailed
documentation, along with examples of common usage of all the thermodynamic features,
is contained in a separate document, the SIMSCI Component and Thermodynamic Data
Input Manual. Unless noted otherwise, sections referred in this chapter refer to sections in
the SIMSCI Component and Thermodynamic Data Input Manual.
Keyword Summary
Heading Statement (required)
THERMODYNAMIC DATA
ENTHALPY=option, DENSITY=option,
ENTROPY=option}, {RVPMETHOD}, {TVPMETHOD}
{PHI= option}, {HENRY},
{PROPERTY(qualifier)=method}, {SET=setid, DEFAULT}
TRANSPORT= PURE
U U
TACITE or U1 or U2 or U3 or U4 or U5
ENTROPY(VL)= NONE
U U
TRANSPORT=PURE or NONE or U U
U3 or U4 or U5
or VISCOSITY(V)= option, VISCOSITY(L)= option,
and/or
CONDUCTIVITY(VL)=PURE or U U
PETRO or TRAPP or U1 or U2 or U3 or U4 or U5
or CONDUCTIVITY(V)= option, or
CONDUCTIVITY(L)= option
and/or
SURFACE= PURE or U U
PETRO or U1 or U2 or U3 or
U4 or U5
DIFFUSIVITY(L)=WILKE U U
or DIFDATA
LIBRARY,
{BANK= SIMSCI or ALCOHOL or GLYCOL or NONE U U
or bankid} or { BANK=PROII_8.0:SIMSCI,
PROII_8.0:ALCOHOL, PROII_8.0:GLYCOL
LIBRARY1:USER1, LIBRARY1:USER2, LIBRARY1:bankid...}
AZEOTROPE= SIMSCI or NONE or bankid U U
{WRITE= fileid}
{ALPHA= ACENTRIC or SIMSCI or bankid} or {
BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
(default depends on method)<optional data
statements> ...
or bankid} or { BANK=PROII_8.0:SIMSCI,
PROII_8.0:ALCOHOL, PROII_8.0:GLYCOL
LIBRARY1:USER1, LIBRARY1:USER2, LIBRARY1:bankid...}
FILL= NONE or UNIFAC or UFT1 or REGULAR or
U U
FLORY,
AZEOTROPE= SIMSCI or NONE or bankid U U
{WRITE= fileid}
{ALPHA= ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
(default depends on method)
<optional data statements> ...
SOLUTE i, j, .....
SOLDATA(tunit) i, l, c1, c2, c3, / ...
B B B B B B
BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, DIPPR, bankid...}
{ALPHA= ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
<optional data statements> ...
BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}SOLUTE i, j, ...
HENDATA(punit, tunit) i, l, c1, c2, c3, c4 / ...
BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ALPHA= ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
or
DENSITY(V) {BANK= SIMSCI or NONE or bankid} or
U U
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ALPHA=ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
and/or
DENSITY(L) {BANK= SIMSCI or NONE or bankid} or
U U
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, DIPPR, bankid...}
{ALPHA= ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
<optional data statements> ...
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ALPHA=ACENTRIC or SIMSCI or bankid} or
U U
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
HMIX= IDEAL or GAMMA or RK1 or RK2
U U
or
ENTHALPY(V) {BANK= SIMSCI or NONE or bankid,} or
U U
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ALPHA=ACENTRIC or SIMSCI or bankid} or
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
{ALPHA=ACENTRIC or SIMSCI or bankid} or U U
{ BANK=PROII_8.0:SIMSCI, LIBRARY1:USER1,
LIBRARY1:USER2, LIBRARY1:bankid...}
HMIX= IDEAL or GAMMA or RK1 or RK2
U U
or
{ENTROPY(V) BANK= SIMSCI or NONE or bankid} or
U U
and/or
{ENTROPY(L) BANK= SIMSCI or NONE or bankid} or
U U
or
KDATA TABU=t1, t2, .../ i, p1, p2, .../ ..., PREF(punit)=value
B B B B B B B B
or
RK2(K or KCAL or KJ) i, j, aij, bij, cij, dij, eij, fij, gij, hij, / ...
U U B B B B B B B B B B B B B B B B
PR(K or R)
or
SRKKD(K or R) U U i, j, kija, kijb, kijc / ...
B B B B B B
or
PRP(K or R)
U U
or
SRKM(K or R) or U U i, j, kija, kjia, kijb, kjib, kijc, kjic cij, cji / ...
B B B B B B B B B B B B B B B B
PRM(K or R) U U
or
SRKH(K or KCAL or KJ)or i, j, aij, bij, cij, aji, bji, cji, αij, βij / ...
U U B B B B B B B B B B B B B B B B
or
SRKS(K or R) U U i, j, kija, kjia, kijb, kjib, kijc, kjic cij, cji / ...
B B B B B B B B B B B B B B B B
or
NRTL(K or KCAL or KJ)
U U i, j, aij, bij, aji, bji, αij, / ...
B B B B B B B B B B
or
NRTL6(K or KCAL or KJ) U U i, j, aij, bij, aji, bji, αij, βij / ... B B B B B B B B B B B B
or
NRTL8 (K or KCAL or KJ) U U i, j, aij, bij, cij, aji, bji, cji, αij, βij / ...
B B B B B B B B B B B B B B B B
and/or
UNIQ4(K or KCAL or KJ) U U i, j, aij, aji, bij, bji / ... B B B B B B B B
KJ or NODIME)
FLORY i, j, χ ij / ...
Other Binary Data For Liquid Activity Methods (Volume II: Chapter 1)
(For use with liquid activity methods, such as all forms of NRTL, UNIQUAC, Wilson, van
Laar, and the Margules methods.)
AZEOTROPE(basis, punit, tunit) i, j, pres, temp, xi / ... B B
IDEAL i, j / ...
or
UNIFT2(K) U U l, k, alk, akl, blk, bkl, clk, ckl / ...
B B B B B B B B B B B B
or
UNIFT3(K) U U l, k, alk, akl, blk, bkl, clk, ckl / ...
B B B B B B B B B B B B
Input Description
Thermodynamic Method Comments (optional)
NOTES TEXT=Notes Line
The NOTES statement supplies optional comments for any of your thermodynamic
methods. Refer to Object Annotation Notes in the Input Conventions Update of this
document.
TEXT This entry specifies the actual Note. The body of the Note
Examples
An example of the Thermodynamic Data section with NOTES follows.
THERMODYNAMIC DATA
METHOD SYSTEM = PR, DENS(L) = LK, SET = DEFAULT
NOTES TEXT = This is the default thermodynamic set for the
simulation.
METHOD SYSTEM = SRK, SET = BVLE
NOTES TEXT = Additional thermodynamic set defined to be used
with BVLE unit.
Keyword Summary
Category Heading (required)
STREAM DATA
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(basis)= value,
COMPOSITION(basis)=i, value/...,
{RATE(basis,unit)=value, NORMALIZE}
{XBLEND=name},
{NAME=text},
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(LV or WT)= value
The special refinery properties that may be given in the Stream Data Category are
outlined in Table 9.2-2.
KVIS {STREAM=sid},
{TEMP(tunit)=t1,t2},
B B B B
The SPROP qualifier i is any integer from 1 to 9999. The number of SPROP
statements given for any one problem must be 60 or less.
General Information
The STREAM DATA section of input sets the stream identification, component flowrate,
and thermal condition of each external stream that feeds into the flowsheet. Optionally, the
user may supply initial estimates for recycle streams, assign a name to any stream in the
flowsheet, and request additional reports of stream results.
Stream Identification
For identification purposes, each stream definition must include an identification label, or
“sid”, containing up to 12 alphanumeric characters. The stream label must be unique.
Assigning the same sid to two or more streams produces an input error. The user also
may supply an optional name, containing up to 40 characters, for each stream in the flow
sheet. The stream name is purely descriptive, not necessarily unique, and may include
embedded blanks. Upto 40 characters are allowed for Stream names, if the user does not
enter any comma delimiters in the name.
1 All special refinery properties may be defined in the stream output format.
Table 9-1
Definition of Stream Thermal Data
Required Entries
Fixed Thermal States
TEMP PRES PHASE LFRAC
Pressure,Temperature R R M C
Temperature, Bubble pt. R C L D
Pressure, Bubble point C R L D
Temperature, Dew point R C V D
Pressure, Dew point C R V D
Temperature, Liq. Fraction R C F R
Pressure, Liq. fraction E R F R
C - Calculated by PRO/I L - ‘L’ entry required
D - Defined by PHASE entry M - Defaults to mixed phase
E - Optional estimate R - Required entries
F - Defined by LFRAC entry V - ‘V’ entry required
Solid Streams
Mixed solid/fluid streams are designated as PHASE=M on the PROPERTY statement, and
have the same thermal condition requirements as pure fluid (V, L or M) streams. Liquid
fractions are calculated on a solids-free basis.
Pure solid streams must have PRES and TEMP entries. Their compositions and flowrates
must be defined using a SOLID statement (see Section 9.4, Streams with Solids).
Input Description
Category Heading (required)
STREAM DATA
This statement must be the first statement in the STREAM DATA section of input. Only
the keyword STREAM is required. There are no other entries.
DEFINED
COMPOSITION
Keyword Summary
Stream Definition (required)
(For COLUMN feeds, PRES defaults to feed tray pressure)
PROPERTY STREAM=sid, {NAME=text, SET=setid},
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(basis)= value,
COMPOSITION(basis,unit)=i, value/...,
{RATE(basis,unit)=value, NORMALIZE}
NORMALIZE}
PSD COMPONENT= i, j,
DATA=value, value, ..., {STREAM=sid}
GENERAL COMPONENT= i, j, DATA= value, ...,
{STREAM= sid}
General Information
This section describes the input statements available for initializing streams having
defined components.
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(basis)= value,
COMPOSITION(basis,unit)=i, value/...,
{RATE(basis,unit)=value, NORMALIZE}
The PROPERTY statement is required to assign an identification label, define the initial
thermal conditions, and specify the rate and initial composition of the overall fluid (vapor
and liquid) phases of the stream. Solids data are not supplied on the PROPERTY
statement.
STREAM “sid” supplies the identification label required by each stream in the
problem. The label must be unique among all streams in the
problem. “sid” may contain up to 12 alphanumeric characters,
excluding embedded blanks and delimiters.
If TEMP and PRES are both given, PRO/II calculates the resulting
phase and overrides the user provided PHASE.
LFRAC This entry fixes the initial liquid fraction of the stream. Normally, it
serves as an alternative for the PHASE entry. May be given on a
mole (M - default), weight (WT), or liquid volume (LV) basis.
The values entered here are compositions and must sum to 1.00 ±
0.01, 100 ± 1, or RATE ± 1%. Alternatively, the NORMALIZE
keyword may be given. If one of these criteria is not satisfied, an
error condition results.
PSD COMPONENT= i, j,
DATA=value, value, ..., {STREAM=sid}
GENERAL COMPONENT= i, j, DATA= value, ...,
{STREAM= sid}
Examples
1: Fluid Phase Stream
Define stream HXFD with the following composition and thermal state.
Component Flowrate
lb-mol/hr
1 70.0
2 200.0
3 50.0
4 7.0
5 0.2
Temperature, F 300.0
Pressure, psia 50.0
3: Normalized Flowrates
Define stream R1 at a temperature of 50 C and 1.63 atm. R1 includes components 1, 2,
and 3 in a mole ratio of 10 : 70 : 147. Normalize the composition to produce a flow rate of
1500 lb-mol/hr.
PROP STREAM=R1, TEMP(C)= 50, PRES(ATM)=1.63, &
NORMALIZE, RATE(LBM/HR)=1500.0, COMP= &
1, 10.0/2, 70.0/3, 147.0
ASSAY DATA
Keyword Summary
Stream Definition (required)
(For COLUMN feeds, PRES defaults to feed tray pressure)
PROPERTY STREAM= sid, RATE(WT or LV, unit)= value, SET=setid,
ASSAY= LV or WT, {BLEND=name or XBLEND=name},
U U
{NAME=text},
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(LV or WT)= value,
SPROP(i) {STREAM=sid},
AVERAGE=value,
and/or
DATA=pct,value/...
KVIS {STREAM=sid},
{TEMP(tunit)=t1,t2},
AVERAGE(kvis unit)=value t1, value t2, B B B B
and/or
DATA(tunit,kvisunit)=t1,t2/pct,valuet1,valuet2/pct, B B B B
The SPROP qualifier i is any integer from 1 to 9999. The total number of SPROP
statements given for any one problem must be 60 or less.
PSD COMPONENT= i, j,
DATA=value, value, ..., {STREAM=sid}
GENERAL COMPONENT= i, j, DATA= value, ...,
{STREAM= sid}
Table9.2-1
Default Assay Cuts
Temperature Range, F Number Of Cuts
100 – 800 28
800 – 1200 8
1200 - 1600 4
PRO/II blends all petroleum streams together prior to characterizing the petroleum
components. Entering the XBLEND keyword on the PROPERTY statement excludes that
stream from the blend. For example, assume a problem includes two crude oils, each
having assay data provided by the user. In addition, three recycle streams have ASTM
distillations and rate estimates provided. The user may blend the two crude oils, but not
the three recycle streams, by entering XBLEND on the PROPERTY statement of each
recycle stream.
All stream properties include any lightends supplied on a LIGHTENDS statement. When
supplying laboratory data on a lightends-free basis, omit the LIGHTENDS statement.
Instead, enter the lightends data as an additional input stream to be blended with the
assay stream, to produce the total stream.
Input Description
Stream Definition (required)
(For COLUMN feeds, PRES defaults to feed tray pressure)
PROPERTY STREAM= sid, RATE(WT or LV, unit)= value, SET=setid,
ASSAY= LV or WT, {BLEND=name or XBLEND=name},
U U
{NAME=text},
or
(Phase fixed)
TEMP(unit)= value or PRES(unit)=value,
PHASE=L or V or LFRAC(LV or WT)= value
The PROPERTY statement must be the first statement in the definition of a stream with
assay data. The PROPERTY statement assigns a stream identification label, defines the
initial thermal conditions, specifies the rate, and selects the basis used for the assay data
that describes the overall fluid (vapor and liquid phases) of the stream. Solids data are not
supplied on the PROPERTY statement.
Example: Create blend A1 from stream 1 using cutpoints created on the CUTPOINTS
statement. Create blend A2 from stream 2 using the default CUTPOINTS statement. A
third “noname” blend of components is to be created from stream 3 using the default
CUTPOINTS statement.
...
COMPONENT DATA
CUTPOINTS BLEND=A1, TBPCUTS=100, 400, 6/1200, 8
...
STREAM DATA
PROP STREAM=1, BLEND=A1, RATE(LV)=1000
D86 DATA= ...
PROP STREAM=2, BLEND=A2, RATE(LV)=1000
D86 DATA= ...
PROP STREAM=3,
D86 DATA= ...
One of these statements must follow the distillation data statement after the PROPERTY
statement. These statements offer alternative forms for defining the liquid density of the
assay at 60 F (15.5 C). The AVERAGE entry is required; all other entries are optional.
When the DATA entry is not supplied, PRO/II generates a gravity curve based on the
distillation data and the average gravity value.
COMPOSITION Required. This entry identifies the components that constitute the
lightends of the stream. The flow of each component in the lightends
may be supplied as an actual flow rate or as a fraction or percentage of
the total stream fluid rate. Solids are not included. The basis may be
mole (M), weight (WT), liquid volume (LV), or gas volume (GV) and may
be different from the basis used on the RATE, FRACTION, or
PERCENT entry. If “i” is omitted, it defaults to the next component
number in sequence. If none of the “i” arguments are given, then the first
“value” is associated with component 1.
If RATE, PERCENT, or FRACTION is given:
“value” is the composition for each component “i”. The sum of the values
must equal 1.0 ± 0.01, 100 ± 1 or the desired rate æ 1%. Alternatively,
the NORMALIZE keyword may be used to adjust the values to the
desired rate.
If MATCH is given:
If NOMATCH is given:
The values are the actual flowing amounts.
RATE Optional. If used, this entry defines the total lightends rate on a mole
(M), weight (WT), liquid volume (LV), or gas volume (GV) basis. The
basis may be different from the COMPOSITION basis.
or
FRACTION or Optional. This defines the total lightends rate as a fraction or percent of
PERCENT the total stream fluid rate. The basis may be either weight (WT) or liquid
volume (LV). The basis may be different from the COMPOSITION basis.
The default basis is set by the ASSAY entry on the PROPERTY
statement.
SPROP(i) {STREAM=sid},
AVERAGE=value,
and/or
DATA=pct,value/...
KVIS {STREAM=sid},
{TEMP(tunit)=t1,t2},
AVERAGE(kvis unit)=valuet1, valuet2,
B B B B
and/or
DATA(tunit,kvisunit)=t1,t2/pct,valuet1,valuet2/pct,
B B B B
The SPROP qualifier i is any integer from 1 to 9999. The total number of SPROP
statements given for any one problem must be 60 or less.
For KVIS:
The “tunit” qualifier available arguments
include C, K, F, or R degrees.
The same number of KVIS sets must be
given for each stream, and all corresponding
KVIS data sets must be at the same temperatures.
For each KVIS statement, at least 3
component entries must be given.
Table 9.2-2:
Keywords for Special Stream Refinery Properties
Keyword Properties Predicted Qualifier1
P
P
specified. The qualifier “frac” or “ppm” or “pct” indicated is the default for that property.
1 For those properties with qualifiers “frac,” “ppm,” or “pct,” any one of these three qualifiers may be
specified. The qualifier “frac” or “ppm” or “pct” indicated is the default for that property.
PSD COMPONENT= i, j,
DATA= value, value, ..., {STREAM= sid}
GENERAL COMPONENT= i, j, DATA= value, ...,
{STREAM= sid}
Streams with assay data may contain solids. See Section 9.4, for details on stream
definition with solid components.
Solids data may not be interleaved with assay data. Following the PROPERTY
statement, either all of the assay data or all of the solids data for that stream may appear
next.
Stream Label
1 2 V6
Assay basis LV LV WT
Distillation type ASTM D86 ASTM D1160 TBP
IBP 100 310 201
10% 210 360 -
30% 240 385 370
50% 260 410 390
70% 275 560 -
90% 290 - 450
EP 310 - -
Gravity type API Watson K SpGr
Stream average 60 12.5 0.76
Mid % 25 - - 0.31
37 - - 0.42
52 - 0.65
Lightends
Total flow 50 moles - 11% by
weight
Comp. no. -
1 2 - 8
2 10 - 12
3 28 - 31
4 7 - 42
5 3 7
Special Properties SULFUR FLPT SPROP(1)
Stream average 15% 0.55
Mid 25% -5
35% 38
50% 95
Thermal conditions
Temperature 150 100 200
Pressure 50 50 75
Phase Liquid Liquid Mixed
STREAM DATA
PROP STREAM=1, BLEND=A1, RATE(LV)=9800, TEMP=100, &
PRES=14.696
TBP STREAM=1, DATA=10, 126/30, 137/50, 151/ &
70, 169/90, 191/100, 213
API STREAM=1, AVG=79.5
PROP STREAM=2, BLEND=A2, RATE(LV)=9800, TEMP=100, &
PRES=14.696
TBP STREAM=2, DATA=10, 130/30, 145/50, 160/ &
70, 175/90, 210/100, 250
API STREAM=2, AVG=80.2
PROP STREAM=3, RATE(LV)=9800, TEMP=100, PRES=14.696
TBP STREAM=3, DATA=10, 120/30, 135/ &
50, 150/70, 168/90, 196/100, 230
API STREAM=3, AVG=75.3
UNIT OPERATION
FLASH UID=FL1
FEED 1
PROD V=2A, L=3A
TPSPEC PRES=50
SPEC STREAM=2A, RATE, RATIO, STREAM=1, &
RATE, VALUE=-0.5
FLASH UID=FL2
FEED 2
PROD V=2B, L=3B
TPSPEC PRES=50
SPEC STREAM=2B, RATE, RATIO, STREAM=2, &
RATE, VALUE=0.5
FLASH UID=FL3
FEED 3
PROD V=2C, L=3C
TPSPEC PRES=50
SPEC STREAM=2C, RATE, RATIO, STREAM=3, &
RATE, VALUE=0.5
STREAMS
Keyword Summary
Overall Stream State (optional)
PROPERTY STREAM= sid, REFSTREAM= sid, {NAME= text}, {SET=setid}
{TEMP(unit)= value, PRES(unit)= value},
{RATE(M, or WT or LV or GV, unit)= value}
U U
General Information
The reference stream feature allows the user to relate two or more streams together in a
dependent manner: (1) A source (or referenced) stream and (2) a target (or referencing)
stream. The source stream supplies any missing data necessary to the target stream,
while the target stream depends upon the source stream to acquire its missing data. This
type of referencing may be very useful in heat exchanger network calculations and often
enhances recycle convergence or may entirely eliminate recycle calculations.
The user declares a target stream by including the REFSTREAM entry on the
PROPERTY statement to identify a source stream. The STREAM entry must supply a
label for the target stream, but the COMPOSITION entry must be omitted. All other entries
are optional. Supplementary assay or solids data statements are not permitted. All
composition data, including assay cuts and solids, always are obtained from the source
stream. Other data, including rate, temperature, and pressure, are obtained from the
source stream only if they are missing from the PROPERTY statement.
Whenever the source stream changes, new values immediately propagate to the target
stream. The target stream is reflashed to establish the new enthalpy and phase.
A source stream must be fully defined in the STREAM DATA section of input, or else it
must be a product of a unit operation. The source stream cannot refer to another stream.
The PROPERTY statement must be the first statement in the definition of a stream that
references another stream. The PROPERTY statement must assign a stream
identification label and optionally may define the initial thermal conditions and specify the
rate of the fluid (vapor and liquid) portion of the stream. The COMPOSITION, PHASE and
LFRACTION keywords may not be given when defining target streams.
For the standard liquid volume or weight rate basis, the rate is calculated
from a Kay’s rule summation of the standard liquid volume or molecular weight
and mole or weight fraction of each component in the (source) stream. Because
each component has its own individual standard liquid volume or molecular
weight, a calculated liquid volume or weight rate is a function of composition.
GV This option specifies the initial overall rate of the fluid
fraction of the stream on a STANDARD gas (or vapor)
volume basis, i.e., at standard temperature and
pressure. Standard vapor volume is a constant
volume / mole, regardless of component species.
Therefore, standard vapor volume effectively is a
mole rate multiplied by a constant. The standard
temperature, standard pressure, and standard vapor
volume are printed at the bottom of each page of the
stream summary in PRO/II output reports.
Examples
1: Referencing Streams Defined In STREAM DATA Input
Define stream T11 as a duplicate of stream S1. Define stream T12 with an initial
temperature of 150 and a rate of 82 moles. Use stream referencing to use the pressure
and composition of stream S1. Create stream T13 as a duplicate of stream S1, but set the
pressure at 30. Create stream T21 at a temperature of 900, a pressure of 30, and a rate of
200 moles per time unit. Obtain the composition from assay stream S2.
STREAM DATA
PROP STREAM=S1, TEMP=200.0, PRES=35.0, RATE=820.0,&
COMP=6,160.0/7,170.0/8,180.0/9,190.0/50.0/ 40.0 / 30.0
PROP STREAM= T11,REFS=S1
PROP STREAM= T12,REFS=S1, TEMP=150.0, RATE=82.0
PROP STREAM= T13,REFS=S1, PRES=30.0
$
PROP STREAM=S2,TEMP=980.0,PRES=35.0,PHASE=V,&
RATE(GV)= 258.13, ASSAY= LV
API STREAM= S2, AVG= 47.0
D86 STREAM= S2, DATA=0,175.0/5,177.0/10,179.0/&
30,215.0/50,266.0/70,322.0/90,441.0/&
95,492.0/100,537.0
SOLIDS
Keyword Summary
Defining Streams With Solids
PROPERTY ...(See Section 9.1 for streams with defined components.
See Section 9.2 for streams with petroleum assay definition.)
{STREAM= sid}
General Information
All streams except reference streams may contain solids if solid components have been
defined in the COMPONENT DATA category. This section describes how solids are
assigned to streams defined on PROPERTY statements. Solid flows are defined in terms
of their composition, flowrates, and attributes.
PRO/II Version 5.0 supports two types of solid attributes: particle size distribution (PSD)
and GENERAL user defined attributes. Both of these attributes are defined for the
simulation in the COMPONENT DATA category. The entries supplied here permit the user
to distribute each solid component in the stream into particle size intervals and assign a
GENERAL attribute value for each solid component.
The solids statement defines the rate and composition of solids in a stream. It is always
the first statement in any group of solids data statements. If used, the SOLIDS statement
must appear immediately after the PROPERTY statement of the stream to which it
applies, or after all assay data statements that follow the PROPERTY statement. Solids
and assay statement groups may not be interleaved. Additional statements containing
solids data follow immediately after the SOLIDS statement.
The rate and composition of solids are entered on the SOLIDS statement without
considering the presence of fluid phases. Solids of unknown molecular weight (non-
molecular solids) must be entered on a weight basis. Solids having a known molecular
weight may be entered on either a mole or a weight basis. Because composition may be
entered on either a mole or weight basis, each stream definition allows up to two SOLIDS
statements - one using a mole basis (the default), the other specifying a weight basis.
When the RATE entry is missing, the total rate of all fluid
phases in the stream is the sum of the values supplied on
the COMPOSITION entry. When both RATE and
COMPOSITION appear, one of the following conditions
must be met to avoid an error condition:
The supplied composition values sum to 1.00 ± 0.01.
The supplied composition values sum to 100.0 ± 1.
The composition values sum to the actual flow rates ± 1%.
The NORMALIZE option is used.
RATE This defines the total flow rate used for the solids entered
on the COMPOSITION entry. The basis may be mole (M -
default) or weight (WT). If the RATE entry is missing,
values entered for the COMPOSITION entry are actual flow
rates. Refer to the COMPOSITION entry (above) for further
discussion of the interaction between these two entries.
STREAM This entry is optional. It serves only as an aid in associating
the SOLIDS statement with the appropriate PROPERTY
statement. If given, ‘sid’ must match the ‘sid’ on the
PROPERTY statement, or an error condition results.
When NORMALIZE is used, the compositions are
NORMALIZE
normalized as required to agree with the specified rate.
{STREAM= sid}
This statement allows definition of a vector of user-defined solid component attributes.
Each stream allows a separate GENERAL attribute statement for each component having
a phase of LS, VLS, or S declared in the COMPONENT DATA section of input. While not
utilized directly by PRO/II, the data is available to User-added Subroutines or user-defined
In-line Procedures.
Temperature, F 40.0
Pressure, psia 2000.0
Rate, lb/hr 16000.0
wt. fraction
Liquid Composition
0.25
Component 1
0.50
2
0.25
3
Solid Rate 10.0 lb-mole/hr
Component 4 250.0 lb/hr
5 20.0 lb-mole/hr
6
Interval 1 2 3 4
____ ____ ____ ____
GENERAL attributes
components 5, 6 1.1 2.2 3.3
DOCUMENTATION
Keyword Summary
Naming Streams (optional)
NAME sid, name1, {name2, name3} / ...
TEMPERATURE(unit), PRESSURE(unit),
TOTAL or LIQUID or VAPOR,
U U
1
P P All special refinery properties may be defined in the stream output format.
LHV(unit),C3PLUS}
General Information
Three documentation related features of PRO/II are described in this section. The first
allows the user to identify streams with a 12-character NAME. This description is used for
output documentation only and does not impact the simulation calculations in any way.
The second allows the user to select alternate stream output formats. SimSci has grouped
stream properties together to target the specific needs of the gas processing, refining, and
chemicals industry through separate reports. The user may select none, any, or all of the
stream reports. Streams may be grouped together in separate reports and identified with a
description field.
The third feature allows users to define their own stream output formats. This definition is
input by means of the FORMAT statement.
This statement allows the user to request additional reports of selected stream data. A
maximum of 20 OUTPUT reports may be requested. Each OUTPUT statement requests a
single report. Predefined reports are available for the natural gas, oil refining, and
chemicals industries. Alternatively, a format id (formid) may be specified to reference a
Table 9.5-1
Maximum Number of Streams Across a Page
GENERAL DATA Maximum
PRINT Statement Streams per Page
WIDTH= 80 (default) 4
WIDTH= 120 7
WIDTH= 132 8
(1) STD VAPOR VOLUME IS 379.49 FT3/LB-MOLE (60 F AND 14.696 PSIA)
==============================================================================
STREAM ID 9 10 11 12
NAME NAPHTHA KEROSENE DIESEL GAS OIL
PHASE WET LIQUID DRY LIQUID DRY LIQUID DRY LIQUID
----- TOTAL STREAM - WET BASIS (INCLUDES ANY FREE AND DISSOLVED WATER) -----
TEMPERATURE, F 110.00 464.75 628.52 757.01
PRESSURE, PSIG 5.300 11.800 12.500 13.300
RATE, LB-MOL/HR 2878.6843 1047.0974 574.7708 715.2158
RATE, LB/HR 279901.5000 184786.0313 144889.3594 236614.6250
ENTHALPY, MM BTU/HR 3.4379 38.2675 45.9035 95.7849
ENTHALPY, BTU/LB 12.2827 207.0908 316.8175 404.8142
MOLECULAR WEIGHT 97.2324 176.4745 252.0820 330.8297
----- VAPOR PHASE - WET BASIS (INCLUDES WATER VAPOR) -----
N/A N/A N/A N/A
RATE, LB/HR
ACT RATE, FT3/MIN N/A N/A N/A N/A
STD VAP RATE(1), M FT3/HR N/A N/A N/A N/A
CP, BTU/LB-F N/A N/A N/A N/A
CV, BTU/LB-F N/A N/A N/A N/A
MOLECULAR WEIGHT N/A N/A N/A N/A
ACT DENS, LB/FT3 N/A N/A N/A N/A
COMPRESSIBILITY (Z) N/A N/A N/A N/A
STD SP.GR. (AIR, 60F) N/A N/A N/A N/A
----- LIQUID PHASE - WET BASIS (INCLUDES ANY FREE AND DISSOLVED WATER) -----
279901.5000 184786.0313 144889.3594 236614.6250
RATE, LB/HR
788.5455 568.9902 451.8407 740.1091
ACT RATE, GAL/MIN
1090.2252 641.7003 477.0454 747.7712
STD LV RATE, BBL/HR
26165.3594 15400.7793 11449.0703 17946.4785
STD LV RATE, BBL/DAY
0.5059 0.7139 0.7474 0.7706
CP, BTU/LB-F
97.2324 176.4745 252.0820 330.8297
MOLECULAR WEIGHT
248.4709 227.3325 224.4648 223.7912
ACT DENSITY, LB/BBL
61.4902 40.5629 31.6351 25.0855
STD API GRAVITY
==============================================================================
STREAM ID 9 10 11 12
NAME NAPHTHA KEROSENE DIESEL GAS OIL
PHASE WET LIQUID DRY LIQUID DRY LIQUID DRY LIQUID
- TOTAL
BASIS (INCLUDES NO WATER) ----
STREAM - DRY
RATE, LB/HR 279818.2813 184786.0313 144889.3594 236614.6250
MOLECULAR 252.0820 330.8297
97.3598 176.4745
WEIGHT
WATSON K 11.8392 11.7035 11.7109 11.7002
FLASH POINT, 237.1056 301.9478
-62.5778 141.2216
F
RVP, PSI 14.6388 0.0163 5.8315E-04 1.6430E-04
TVP, PSIG 0.8684 -14.6633 -14.6948 -14.6956
STD API 31.6351 25.0855
GRAVITY 61.5055 40.5629
----- VAPOR PHASE - DRY BASIS (INCLUDES NO WATER) -----
(1) STD VAPOR VOLUME IS 379.49 FT3/LB-MOLE (60 F AND 14.696 PSIA)
TEMPERATURE(unit), PRESSURE(unit),
TOTAL or LIQUID or VAPOR,
U U
In the following descriptions, the qualifiers WT, LV and GV which define the basis
to be weight, liquid volume and gas volume have aliases of W, V and G, respectively.
Number ID Rate(moles/hr)
1 cno1B B rate
2 cno2B B rate
3 cno3B B rate
4 XYZ rate
5 cno7B B rate
6 cno8B B rate
1 cno1B B rate
2 cno2B B rate
3 cno3B B rate
LUMPED XYZ rate
7 cno7B B rate
8 cno8B B rate
cno1B B rate
cno2B B rate
cno3B B rate
XYZ rate
cno7B B rate
cno8B B rate
PAGE Begin a new page and print a page header. The description
and stream id’s are also written. The first page throw (form
feed) at the beginning of the report is automatic. It is thus
unnecessary to start the FORMAT with a PAGE keyword.
LINE Generates one blank line in the report.
PHASE Print stream phases, “MIXED”, “LIQUID”, “VAPOR” or “SOLID”.
LINK Print the unit id and column tray for which the stream is a feed
or product. For streams fed to more than one unit, only the first
unit id will be printed.
WET or DRY
U U Computes properties including or excluding water, respectively.
A descriptive line is also written. Default is WET.
TEMPERATURE Stream temperature.
PRESSURE Stream pressure.
Table 9.5-2
RVP Methods
Basis Method
APINAPHTHA API Technical Data Book, Fig. 5B1.1
APICRUDE API Technical Data Book, Fig. 5B1.2
D323 ASTM D323-82 rigorous simulation
P323 ASTM D323-79 rigorous simulation
D4953 ASTM D4953-91 rigorous simulation
D5191 ASTM D5191-91 rigorous simulation
Examples
1: Stream NAME Example
Assign stream NAMES to a debutanizer feed and products.
NAME FD, WILD NAPHTHA/OVHD, C4 MINUS/BTMS, NAPHTHA
OPERATIONS
General Information
All PRO/II simulation runs require at least one unit operation. Most unit operation blocks
model actual pieces of plant equipment, such as a PUMP or distillation COLUMN. Other
unit operations, such as the CONTROLLER or OPTIMIZER, facilitate flowsheet
convergence. Still others are utilities that compute stream properties, such as the
heating/cooling curve generator (HCURVE) and PHASE envelope generator.
Sections 10.1 – 10.7 provide general information common to some or all unit operations.
Detailed descriptions of each unit operation appear in this manual, starting with chapter
11.
Section 10.1 is an introduction into PRO/II’s handling of flowsheet topology. It explains
how unit operations are linked via streams to form a computational analog of an actual
process plant.
Section 10.2 discusses features common to some or all unit operations, including the unit
operation header statement, FEED and PRODUCT statements, and the METHOD
statement.
PRO/II can reference parameter values anywhere within the flowsheet. This capability
greatly enhances the user’s power to converge flowsheets rapidly and toward solutions
that might require multiple runs on other process simulators. Section 10.3 provides a
concise summary of all unit operation and stream parameters that may be cross-
referenced by other unit operations. The various statements that employ cross-referencing
are SPEC, OBJECTIVE and CONSTRAINT statements (Section 10.4), the DEFINE
statement (Section 10.5), and VARY and CHANGE statements (Section 10.6).
Section 10.7 discusses in-line user-written PROCEDURES. This capability allows users to
write FORTRAN-like code that may be called and executed without the need to compile
and relink from standard PRO/II unit operations. Note that a user-written PROCEDURE
differs from Section 16.1, Calculator, in that the CALCULATOR is a stand-alone unit
operation, whereas the PROCEDURE may only be called by other unit operations.
TOPOLOGY
The primary purpose of flowsheet simulators such as PRO/II is to develop accurate
models for process plants. Each plant unit operation has a simulation analog in PRO/II.
Calculated products from each simulated unit operation are fed to subsequent unit
operations, as they would be in the real plant.
Consider the following process flowsheet:
PRO/II provides additional flowsheet calculational control with Section 17.1, Feedback
Controller, Section 17.2, Multi-variable Controller, and Section 17.3, Flowsheet Optimizer.
These unit operations provide the user with advanced convergence techniques for solving
problems with specific solution requirements.
OPERATION INPUT
The basic structure to input unit operation data is discussed in this section. Also, features
common to some or all unit operations are discussed in detail, rather than repeating them
multiple times throughout this manual. They include the unit operation identification
statement, feed and product information, and thermodynamic methods selection.
Parameter cross-referencing, another feature common to all unit operations, is discussed
in the following Sections (10.3 – 10.6).
Keyword Summary
Category Identification (required)
UNIT OPERATIONS
General Information
Thermodynamic Set Selection (optional)
METHODS SET=setid
<unit type> This entry is a keyword that identifies the unit operation
being modeled. Refer to Table 10.2-1.
UID The unit identifier field is an alphanumeric string
containing a maximum of twelve characters. It uniquely
identifies each unit operation. Embedded blanks are not
permitted. UID is used for referring to the unit operation
with specifications and for sequencing. Although not
strictly required, it is highly recommended that one be
included for each unit operation. All simulations created
via PROVISION will automatically have one, and UID is
generally recommended for proper data transfer into
thePROVISION database.
NAME This is an optional description field used for labeling
output results. Up to 40 alphanumeric characters may
Table 10.2-1
PRO/II Unit Operations
Section Unit Type Section Unit Type
11.1 FLASH 14.4 PLUG
11.2 PUMP 14.5 CSTR
11.3 VALVE 15.1 DRYER
11.4 MIXER 15.2 RFILTER
11.5 SPLITTER 15.3 FCENTRIFUGE
11.6 COMPRESSOR 15.4 CCDECANTER
11.7 EXPANDER 15.5 DISSOLVER
11.8 PIPE 15.6 CRYSTALLIZER
12.1 COLUMN 15.7 MELTER/FREEZER
12.2 IO 16.1 CALCULATOR
12.3 SURE 16.2 STCALC
12.4 CHEMDIST 16.3 HCURVE
12.5 RXDIST 16.4 PHASE
12.8 SHORTCUT 16.5 HYDRATES
12.9 LLEX 16.6 BVLE
13.1 HX 16.7 HEXTABLES
13.2 HXRIG 17.1 CONTROLLER
13.3 LNGHX 17.2 MVC
14.1 REACTOR 17.3 OPTIMIZER
14.2 METHANATOR/SHIFT 19.1 DEPRESSURIZING
14.3 GIBBS
Feed Statement
FEED sid, {sid, ... }
sid An alphanumeric string of one to
twelve characters. Each ‘sid’ uniquely
identifies one stream and may not be
reused to identify a different stream.
Every unit operation in a flowsheet, excluding controllers and utility unit operations,
requires at least one feed. The format shown here is common to most unit operations;
however, there are a few variations due to the input requirements for each unit. Table
below shows the exceptions. See the specific unit operation section in the manual for
details.
Product Statement
PRODUCT V=sid, {W=sid, S=sid}
or
L=sid, {W=sid, S =sid}
or
V=sid, L =sid, { W =sid, S =sid}
or
M=sid, { W =sid, S =sid}
2 3
13.1 HX P P 15.4 CCDECANTER P P
2 3
13.3 LNGHX P P 15.6 CRYSTALIZER P P
Example:
PROD V=22, L=23, W=24
PROD M=PR, S=RSDU
PARAMETERS
Nearly all unit operations in PRO/II allow flowsheet parameters to be cross-referenced.
Most unit operation parameters may be either DEFINED or SPECified relative to virtually
any other parameter value in the flowsheet. A large number of flowsheeting parameters
may be VARYed to meet user defined specifications or to optimize on a user defined
objective function. Parameters may also be CHANGED interactively and through
CASESTUDY. This cross-referencing feature dramatically increases the power and
flexibility of the PRO/II simulation program.
In all, there are six separate statement types for cross-referencing parameters. The
statement type used in the unit operation depends on the context and is clearly spelled out
in the appropriate unit operation section. The eight types are:
Table 10.3-1
Methods of Cross-Referencing Flowsheet Data
Statement Type Description
SPEC Fixes unit operation performance specification.
OBJECTIVE Fixes the objective function in an OPTIMIZER unit operation.
CONSTRAINT Specifies a domain of valid OPTIMIZER solutions.
In addition to these six statement types, all parameters that may be CHANGED through
the CASESTUDY feature may also be CHANGED interactively. See Section 18.2.
Several PRO/II unit operations use the generalized specification format described here to
define the performance of the unit. They are:
FLASH, SPLITTER, COLUMN/SIDESTRIPPER, SHORTCUT, LLEX, CONTROLLER,
MVC, OPTIMIZER
In addition to generalized specifications, the OPTIMIZER also uses the OBJECTIVE and
CONSTRAINT statements. The OBJECTIVE and CONSTRAINTS have access to the
same flowsheet parameters as the SPEC statement and have nearly the same keyword
input format. They are discussed here together.
PRES(unit)
RATE(basis,unit)X X X X X X
RATE(basis,unit), COMP=i,j X X X X X
FRACTION(basis), COMP=i,j X X X X
PERCENT(basis), COMP=i,j X X X X
PPM(basis), COMP=i,j X X X X
GRAINS, COMP=i,j X X X
MOISTURE(basis) X X X X
LFRAC X
VFRAC X
WFRAC X
MW X X X X
API X X X
SPGR X X X
COMPRESSIBILITY X X X X
DENSITY(unit) X X X
MOLVOL(unit) X X X
HOTVOL(unit) X X X
ENTHALPY(unit) X X X X
ENTROPY (unit) X X X X
Cp X X X X
Cv X X X X
TBP(unit, vol%) X X X
TBP10(unit, vol%) X X X
TBP, ATPCT=pct X X X
D86(unit, vol%) X X X
D1160(unit, vol%) X X X
RVP(type 1) X X X
TVP(unit) X X X
4
VISCOSITY (unit)
P P X X X
4
CONDUCTIVITY (unit) P P X X X
SURFACE(unit) X X X
where: (basis) = M, W, LV or GV, (unit) = dimensional units
(type 1) = APINAPHTHA or APICRUDE or P323 or D323 or D4953 or D5191
1 Also available on internal stream 4 Must have PHASE=V or L or S on statement. Solid viscosities
2 Available as a DEFINE are blending values that contribute to overall slurry viscosities.
3 Specify tray temperature
Table 10.3-2B
Stream Cross-reference Availability
1 2
STREAM <property> SPECS P P VARY CHANGE P P <reference>
2
(See definitions below) <property> P P
KVIS(kvis-unit) X x
POUR(temp) X x
CLOU(temp) X x
FRZP(temp) X x
CFPP(temp) X x
FLPT and FLPO (temp) X x
RON(C or L) X x
MON(C or L) X x
CETA X x
CETN X x
REFR(C20 or C70)
U U X x
ANIL(temp) X x
AROM(frac, TOTA or RING)U U X x
WTAR(pct) X x
NAPH(frac) X x
WTNA(pct) X x
PARA(frac) X x
WTPA(pct) X x
NPHL(frac) X x
H2(pct) X x
CARB(pct) X x
CHRA X x
SMOK X x
LUMI X x
SULF(pct), X x
MERC(ppm), X x
ASUL(pct), X x
NITR(frac, TOTA, or BASI or NONE)
U U X x
OXYG(ppm) X x
CCR X x
NICK(ppm) X x
VANA(ppm) X x
IRON(ppm) X x
ASPH(ppm, C5 or C7) X x
PHEN(ppm) X x
ANEU X x
BROM X x
MEAB(temp) X x
CABP(temp) X x
MOAB(temp) X x
NHV(enthunits) X x
WAX(pct) X x
ASH(pct) X x
NOAC X x
SOFT X x
PEN X x
SPROP(i)
3
P P
X x
1 Includes OPTIMIZER SPECS, DEFINES and OBJECTIVES
2 For those properties with qualifiers frac, ppm, or pct, any one of these three qualifiers may be specified.
The qualifier frac or ppm or pct indicated is the default for that property.
3 (i) = 1 to 9999
OPTIMIZER
SPEC VARY DEFI SPEC VARY
FLASH
TEMP(unit) Temperature X X X X X
PRES(unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy increase X X X X X
SPEC Specification X X
ENTRAINMENT(idno) Entrainment X X X
ERATE(Mole) Pseudo stream rate X X X
PUMP
TEMP(unit) Temperature X X
PRES(unit) Pressure X X X X X
DP(unit) Pressure increase X X X X X
WORK(unit) Work performed X X
HEAD(unit) Head X X
EFF Efficiency X X
PRATIO Pout/Pin
B B B B X X X X X
VALVE
TEMP(unit) Temperature X X
PRES(unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
MIXER
TEMP(unit) Temperature X X X X X
PRES(unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
SPLITTER
TEMP(unit) Temperature X X X X X
PRES (unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
SPEC(idno) Specification X x
COMPRESSOR4 P P
POLY Polytropic X X X X X
efficiency
PIN(unit) Inlet pressure X X X
PDESIGN(unit) Maximum outlet X X X
pres.
PRSWITCH Calc. method X
switch
ACDP(unit) Aftercooler pres. X X X
Drop
ACTEMP(unit) Aftercooler temp. X X X
TEST(unit) Est. outlet temp. X
OPTIMIZER
SPEC VARY DEFI SPEC1 P P VARY
COLUMN
REFLUX(basis, unit) Tray 1 net liquid X X X
RRATIO(basis) Reflux/overhead prod. X X X
OPTIMIZER
SPEC VARY DEFI SPEC1 P P VARY
DTRAY(idno) Draw tray number X4 X4 X4
SHORTCUT
FINDEX(idno) Fenske index X X X
SPEC (idno) Specification X X5 P P
LLEX
SPEC(idno) Specification X X
PTOP(unit) Top tray pressure X X
FEED(sid) Feed stream mole X X X
DRAW(sid) rate
DUTY(idno) Draw stream mole X X X
rate
Enthalpy increase X X X
1 Includes SPEC, CONSTRAINT and OBJECTIVE statements.
2 Applies to CASESTUDY CHANGE and PARAMETER statements and to INTERACTIVE changes.
3 <reference> available to all SPEC, CONSTRAINT, OBJECTIVE, DEFINE and CASESTUDY RESULT statements.
4 DTRAY is not available on VARY or CHANGE for the IO algorithm
5 CASESTUDY only. Not available for INTERACTIVE CHANGES.
6 In order to access any of the tray hydraulic variables, you must provide the mechanical information (trays, packing, etc.). In the case of
valve or bubble cap trays, you must also specify that the tray hydraulic calculations be performed during the calculations, this requires that
DPCALC be set to some value.
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC
P P VARY
HX
DUTY(unit) Duty X X X X X
HDP(unit) Hotside pressure drop X X X X X
CDP(unit) Coldside pressure drop X X X X X
CTEMP(unit) Coldside outlet temp. X X X X
CLFRAC Coldside liq. Fraction X X X
CDTBB(unit) Cold temp. below bub. pt. X X X
CDTAD(unit) Cold temp. above dew pt. X X X X
HTEMP(unit) Hotside outlet temp. X X X X
HLFRAC Hotside liq. Fraction X X X X
HDTBB(unit) Hot temp. below bub. pt. X X X
HDTAD(unit) Hot temp. above dew pt. X X X
(2 sided HX only)
LMTD(unit) Log mean temp. diff. X X
ZMTD(unit) LMTD from zones X X
U(unit) Heat trans. coef. X X X X X
AREA(unit) Active area X X X X X
UA Area*Heat trans. coef. X X X X
FT LMTD correction factor X X X X X
HOCI(unit) Thot,out-Tcold,in
B B B B X X X X X
HICO(unit) Thot,in- Tcold,out
B B B B X X X X X
HOCO(unit) Thot,out-Tcold,out
B B B B X X X X X
TMIN(unit) Min(HOCI, HICO) X X X X X
MITA(unit) Min int temp approach X X X
TOLER Convergence X X X X X
Tolerance
HXRIG
DUTY(unit) Duty X X X X
U(unit) Heat trans. coef. X X
UEST(unit) Estimated heat trans. X X
Coefficient
AREA(unit) Area X X
UA(unit) U * area X X X
LMTD(unit) Log mean temp. diff. X X
STEMP(unit) Shellside outlet temp. X X X X X
TTEMP(unit) Tubeside outlet temp. X X X X X
TFOUL(unit) Tubeside fouling factor X X X X
SFOUL(unit) Shellside fouling factor X X X X
RFOUL(unit) Required fouling factor X X X
LNGHX
TDUTY(unit) Total duty X X
TEMP(cell, unit) Outlet temperature X X X X X
DUTY(cell, unit) Duty on single stream X X X X X
DP(cell, unit) Pressure drop X X X X
UA(unit) Total U * area X X
LMTD(unit) Log mean temp diff. X X
MITA(unit) Min int temp approach X X
1 Includes SPEC, CONSTRAINT and OBJECTIVE statements.
2 Applies to CASESTUDY CHANGE and PARAMETER statements and to INTERACTIVE changes.
3 <reference> available to all SPEC, CONSTRAINT, OBJECTIVE, DEFINE and CASESTUDY RESULT statements.
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC P P VARY
CONVERSION
REACTOR
TEMP(unit) Outlet temperature X X X X X
PRES(unit) Outlet pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy increase X X X X X
CONVERSION Conversion fraction X X X X X
(idno)
STOIC(cno) Stoichiometric coef. X
EQUILIBRIUM
REACTOR
TEMP(unit) Outlet temperature X X X X X
PRES(unit) Outlet pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy increase X X X X X
CONVERSION Conversion fraction X X
(idno)
GIBBS
TEMP(unit) Outlet temperature X X X X X
PRES(unit) Outlet pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy increase X X X X X
PLUGFLOW
TEMP(unit) Reactor outlet temp. X X X X X
PRES(unit) Reactor outlet pres. X X X X X
DP(unit) Reactor pres.drop X X X X
PIN(unit) Reactor inlet pres. X X X
DPIN(unit) Reactor inlet dep. X X
X
DUTY(unit) Enthalpy increase X X X X
Tube diameter X X X
DIAMETER(unit) X
LENGTH(unit) Reactor length X X X X
TUBES Number of tubes X X X X
U (unit) Heat transfer coeff. X X X X
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPECP P VARY
CSTR
TEMP(unit) Reactor temp. X X X X X
PRES(unit) Reactor pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy X X X X X
increase X X
CONVERSION Conversion
(idno) fraction X X X X
PEXP(idno) Pre-exponential X X X X
factor
ACTIVATION Activation energy X X X X
(idno), X X X
X X X
VOLUME(unit) Reactor volume
TMIN(unit) Minimum temp. X X X
TMAX(unit) Maximum temp. X X X X
VMAX(unit) Maximum vol.
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC P P VARY
DRYER
TEMP(unit) Temperature X X X X X
PRES(unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
DUTY(unit) Enthalpy increase X X X X X
RFILTER
DIAMETER(unit) Filter diameter X X X X X
WIDTH(unit) Filter width X X X X X
WDRATIO Width to diameter X X X X
DPMAX(unit) Maximum allowable X X X X X
RPM DP X X X X
PSUBMERGED Filter rotational speed X X X X X
ANGLE Percent submerged X X X X
PSOLIDS Angle of filtration X X X X X
POROSITY Pct. solids in cake X X X X X
FRES Porosity of cake X X X X X
SRES Resistance to filtrate X X X X X
CFACTOR Specific resistance X X X X X
SPHERICITY Cake compressibility X X X X X
DPARTICLE (unit) Sphericity of particle X X X X X
Particle diameter
FCENTRIFUGE
DIAMETER(unit) Centrifuge diameter X X X X X
RLIQUID Rliquid/Rcentrifuge
B B B B X X X X X
RCAKE Rcake/Rcentrifuge
B B B B X X X X X
RHEIGHT Hcent/Rcent
B B B B X X X X X
RPM Rotational speed X X X X X
PSOLIDS Pct. solids in cake X X X X X
POROSITY Porosity of cake X X X X X
MRES Resistance to filtrate X X X X X
SRES Specific resistance X X X X X
SPHERICITY Sphericity of particle X X X X X
DPARTICLE (unit) Particle diameter X X X X X
CCDECANTER
WRATIO Solid mass ratio X X X X X
LRATIO Liq. volumetric ratio X X X X X
RECOVERY % component liquid X X X X X
recovery
LDIA Liquid diameter X X X X
LRPM Liquid RPM X X X X
TYPE Centrifuge type X X X X
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC P P VARY
DISSOLVER
TEMP(unit) Temperature X X X X
DT(unit) Temperature X X X X
PRES(unit) increase X X
DP(unit) Pressure X X X X
DUTY(unit) Pressure drop X X X X
AKC, BKC Enthalpy X X X X
increase X X
VOLUME(unit) Mass transfer
DRATE parameters X X X X X
DFRAC Volume of
crystallizer X X
Flowrate X X
Fraction
CRYSTALLIZER
TEMP(unit) Temperature X X X X
DT(unit) Temperature X X X X
PRES(unit) increase
DP (unit) Pressure X X X X
DUTY(unit) Pressure drop X X X X
RECIRC(unit) Enthalpy X X X X
SSRATIO increase X X X X
PRATE(unit) Recirculating X X X X X
PFRAC Saturation ratio X X X X X
Production rate
VOLUME(unit) crystal X X X X X
MT(unit) Fraction solute to
crystallize X X X X X
Crystallizer X X X X X
volume
Magma density
MELTER/
FREEZER
TEMP(unit) Temperature X X X X X
DT(unit) Temperature X X X X X
increase
PRES(unit) Pressure X X X X X
DP(unit) Pressure drop X X X X X
MELFRAC Melt Fraction X X X X X
(idno)
FREFRAC Freeze Fraction X X X X X
(idno)
DUTY Enthalpy X X
increase
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC P P VARY
CALCULATOR
R(idno) Calculator result X X X X
P(idno) Calculator X
parameter
STCALC
TEMP(prno, unit)4 P Product X X X
PPRES(prno, unit) temperature X X X
DT(prno, unit) Product pressure X X X
Temperature
DTBB(prno, unit) increase X X X
Temp. below
DTAD(prno, unit) bubble pt. X X X
Temp. above
DP(prno, unit) dew pt. X X X
FACTOR(fdno) Pressure drop X X X
DUTY(unitbasis) Feed co-factor X X X X
Net enthalpy
FOVHD(idno, increase X X X
basis)5P P Fraction
FBTMS(idno, overhead X X X
basis) X X X
FPROD(idno, Fraction bottoms X X X
basis) Fraction product X X X
ROVHD(idno, Rate overhead X X X
basis) Rate bottoms X X X
RBTMS(idno, Rate product
basis) Composition X X X
RPROD(idno, overhead
basis) Composition X X X
XOVHD(idno, bottoms
basis) Composition
product
XBTMS(idno,
basis)
XPROD(idno,
basis)
CONTROLLER
SPEC Specification X X6
P P
MVC
SPEC(idno) Specification X X6
P P
OPTIMIZER
6
SPEC(idno) Specification X XP P
CONSTRAINT(idno) Constraint
1 Includes SPEC, CONSTRAINT and OBJECTIVE statements.
2 Applies to CASESTUDY CHANGE and PARAMETER statements and to INTERACTIVE changes.
3 <reference> available to all SPEC, CONSTRAINT, OBJECTIVE, DEFINE and CASESTUDY RESULT statements.
4 prno refers to the product number: OVHD=1, BTMS=2, and PROD=3.
5 idno refers to spec value in sequence given on the FOVHD (or FBTMS, etc.) statement.
6 CASESTUDY only. Not available for INTERACTIVE CHANGES.
3
OPTIMIZER <property> P P
1
SPEC VARY DEFI SPEC P P VARY
PHASE
ENVELOPE
TC(unit) Critical temperature X X X
PC(unit) Critical pressure X X X
TCT(unit) Cricondentherm X X X
temperature
PCT(unit) Cricondentherm X X X
pressure
TCB(unit) Cricondenbar X X X
temperature
PCB(unit) Cricondenbar X X X
pressure
OPTIMIZER >
<property>
SPEC VARY DEFI SPEC1 P P VARY 3
P P
DEPRESSURING
PFINAL(unit) Final vessel pressure X X X X X
PRELIEF(unit) Relief vessel pressure X X X X
FINALTIME(unit) Final simulation time X X X X X
RELIEFTIME Vessel relief time X X X X
(unit)
DTIME(unit) Duration of relief X X X X X
CONSTANT(unit) Valve constant X X X X
PBACK (unit) Valve back-pressure X X X X
CV Valve coefficient X X X X
CF Critical flow factor X X X X
IWAREA(unit) Initial wetted area X X X X
HTAREA(unit) Heat transfer area X X X X
HTC(unit) Heat transfer coef. X X X X
HTCFAC(unit) HTC factor X X X X
HTCVAP(unit) Vapor phase HTC X X X X
HTCLIQ(unit) Liquid phase HTC X X X X
C1 Heat model coef. 1 X X X X
C2 Heat model coef. 2 X X X X
C3 Heat model coef. 3 X X X X
C4 Heat model coef. 4 X X X X
C5 Heat model coef. 5 X X X X
TEMP(unit) Final fluid temp. X X
DUTY(unit) Final heat duty X X
VRATE(unit) Final vent gas rate X X
VOLUME Total vessel volume X X X X
HOLDUP Liquid holdup X X X X
DIAMETER Vessel diameter X X X X
VOLFACTOR Volume correction X X X X
factor
LIQHEIGHT Height of holdup liquid X X X X
WEIGHT Weight of vessel X X X X
CP Specific heat of vessel X X X X
HORIZONTAL Tangent-tangent X X X X
vessel length
VERTICAL Tangent-tangent X X X X
vessel height
TSTEP Calculation time step X X X X
ISENTROPIC expansion efficiency X X X X
QFAC Heat scaling factor X X X X
AFAC Area scaling factor X X X X
CONSTRAINTS AND
OBJECTIVES
Keyword Summary
Generalized Specification Format
Specifying a stream property:
SPEC STREAM=sid, <property 1>, PHASE=T or L or V or S,
U U
WET or DRY,
U U
Optimizer Constraints
Same as SPEC statement except use:
CONSTRAINT instead of SPEC
where NSP is the number of SPECS and NOP is the number of products.
The SPLITTER has one degree of freedom for the first separation into two products, and
adds one additional degree for each additional product. Thus,
NSPSPLITTER = NOP - 1
B B
Input Description
Generalized Specification Format
Specifying a stream property:
SPEC STREAM=sid, <property 1>, PHASE=T or L or V or S,
U U
WET or DRY,
U U
<operator> entry
PLUS (aliases are SUM and ADD)
MINUS (aliases are DIFFERENCE and SUBTRACT)
TIMES (alias is MULTIPLY)
DIVIDE (aliases are RATIO and OVER)
The <operator> is entered when the specification VALUE is supplied on a relative basis of
<property 1> with respect to <property 2>.
Table 10.4-1
Operator Functions
<operator> function
PLUS, SUM, ADD <property 1> + <property 2>
MINUS, DIFF, SUBT <property 1> - <property 2>
TIMES, MULTIPLY <property 1> * <property 2>
DIVIDE, RATIO, OVER <property 1> / <property 2>
none <property 1> (Use <property 1> unmodified)
The tables above list the items referenced from part 1 to part 3 unless overridden by the
user. No information is referenced if a <unit type> is defined in one part and a STREAM is
defined in the other.
VALUE Entry
VALUE = value
This is the actual value the flowsheet needs to attain (within tolerance) before PRO/II will
accept the flowsheet as being solved. In the following example, the stream BT must have
an RVP of 12.0 before solution is reached:
SPEC STREAM=BT, RVP, VALUE=12.0
<tolerance> Entries
{ATOL=value or RTOL=value}
Tolerances may be given on an absolute or relative basis. For example, any value in the
range 99.9 ≤ value ≤ 100.1 satisfies the following absolute tolerance:
SPEC ...,VALUE=100, ATOL=0.1
Similarly, any value in the range 90 ≤ value ≤ 110 satisfies the following relative
tolerance:
SPEC ..., VALUE=100, RTOL=0.1
If a value is not supplied for ATOL and RTOL, either a default value of 0.01 or the
value given by the MISC keyword on the TOLERANCE statement in the General Data
category of input will be used.
Open Cup (OC) and Closed Cup (CC) methods are the qualifiers associated
to calculate flash point.
OPTIMIZER CONSTRAINT
The CONSTRAINT statement uses the same format as the SPEC statement with the
following differences:
CONSTRAINT instead of SPEC
MAXI=value and/or MINI=value
instead of VALUE=value
In the OPTIMIZER, CONSTRAINT statements define the bounds of acceptable flowsheet
solutions. All parameters available for the SPEC statement are also available as
CONSTRAINTS. See Section 133, Flowsheet Optimizer, for more details on OPTIMIZER
CONSTRAINT statements
Keyword Summary
Reference to stream properties:
DEFINE <property> AS STREAM=sid, <property 1>,
{<operator>,
value or <reference 2>, <property 2>}
Reference to unit operation parameters:
DEFINE <property> AS <unit type>=uid, <property 1>,
{<operator>,
value or <reference 2>, <property 2>}
General Information
The DEFINE statement sets unit operation parameters based on the results of previously
computed unit operations and streams. DEFINE statements differ from SPEC statements
in the following way: A SPEC statement specifies that a unit operation result will have the
given value when the unit is solved while a unit operation or upstream stream parameter
will be adjusted to meet that result. A DEFINE statement adjusts a unit operation
parameter directly.
For example, in an isobaric FLASH unit operation, a composition specification made on a
product stream is described on a SPEC statement because PRO/II internally varies the
temperature to meet the stream specification.
FLASH UID= EX1, NAME= SPEC EXAMPLE
FEED 1
PROD V= 2, L= 3
TPSPEC PRES= 50
SPEC STREAM= 3, FRAC, COMP= 1, VALUE= 0.01
$ TEMPERATURE VARIES TO MEET STREAM 3
$ COMPOSITION SPECIFICATION
However, to fix the temperature relative to another calculated stream temperature, PRO/II
requires the DEFINE statement to set the value normally fixed on the ISOTHERMAL
statement.
FLASH UID= EX2, NAME= ISO
FEED 1
PROD V= 2, L= 3
ISOTHERMAL PRES= 50, TEMP= 150
$ PRESSURE, TEMPERATURE FIXED
Input Description
The syntax of the DEFINE statement is an extension of the SPECIFICATION
statement:
General form:
DEFINE <property> AS
<reference 1>, <property 1>,
{<operator>,
value or <reference 2>, <property 2>}
Reference to stream properties:
DEFINE <property> AS STREAM=sid, <property 1>,
{<operator>,
value or <reference 2>, <property 2>}
Reference to unit operation parameters:
DEFINE <property> AS <unit type>=uid, <property 1>,
{<operator>,
value or <reference 2>, <property 2>}
Table 10.5-1
Operator Functions
<operator> function
PLUS, SUM, ADD <property 1> + <property 2>
MINUS, DIFF, SUBT <property 1> - <property 2>
TIMES, MULTIPLY <property 1> * <property 2>
DIVIDE, RATIO, <property 1> / <property 2>
OVER <property 1> (Use <property 1>
none unmodified)
The DEFINE statement retrieves only the current values of <property 1> and
U U
<property 2>. It is possible for retrieved values to differ from final flowsheet solution
values if they are updated by another unit operation after being retrieved.
2: Heat exchanger
Define the pressure drop on the COLD side of heat exchanger HX1 as the difference
between the pressures of streams S1 and S2.
HX UID= HX1
HOT FEED= FH1, M= PH1
COLD FEED= FC1, M= PC1
OPERATION DUTY=10.0
DEFINE CDP AS STREAM=S1, PRES, MINUS, &
STREAM=S2, PRES
3: Compressor.
Define polytropic efficiency as a CALCULATOR result.
COMPRESSOR UID=CMP1
FEED 1
PROD V=2
OPERATION PRES=300
DEFINE POLY AS CALCULATOR=CAL1, R(1)
CHANGE
STATEMENTS
Keyword Summary
CONTROLLER format (Section 17.1):
VARYSTREAM=sid or <unit type>=uid or THERM=setid,
<parameter>,
{MINI=value, MAXI=value, STEPSIZE=value},
{EST2=value or PCT2=value}
MVC format (Section 17.2):
VARYSTREAM=sid or <unit type>=uid or THERM=setid,
<parameter>,
{MINI=value, MAXI=value, STEPSIZE=value},
{EST2=value or PCT2=value},
{SFACTOR=value}
OPTIMIZER format (Section 17.3):
VARY STREAM=sid or <unit type>=uid or THERM=setid,
<parameter>,
{MINI=value, MAXI=value, STEPSIZE=value},
{RTOLER=value, RPERTURB=value, APERTURB=value}
COLUMN format (Section 12.1):
VARY FEED=sid,..., DRAW=sid,..., DUTY=idno,...
LLEX format (Section 12.9):
VARYDUTY=idno,..., DRAW=sid,..., FEED=sid,...
CASESTUDY format (Section 18.2):
CHANGE STREAM=sid or <unit type>=uid or THERM=setid,
<parameter>,
VALUE=value
General Information
VARY and CHANGE Statements
In general, most non-integer stream and unit operation input parameters may
be varied on a VARY statement. Table 10.3-3 A-H tabulates all the unit operation
Table 10.6-1
<parameters> Accessible to the VARY
and CHANGE Statements
From CONTROLLER, MVC and OPTIMIZER VARY Statements and
CASESTUDY CHANGE Statements
Streams TEMP
PRES
RATE (Mole rate)
nits Extensive, see Table 10.3-3A-H
Thermodynamic See Table 10.3-3I
From COLUMN and LLEX VARY Statements and CASESTUDY CHANGE
Statements
COLUMN DUTY
(Section 12.1) FEED (Feed mole rate)1P P
2
DRAW (Draw mole rate) P P
LLEX DUTY
1
(Section 12.9) FEED (Feed mole rate) P P
FEED Vary feed “sid” mole rate in a COLUMN (see Section 12.1)
or LLEX (see Section 12.9).
DRAW Vary draw “sid” rate in a COLUMN or LLEX. See Sections
12.1 and 12.9 for more details.
HEAT Vary the duty in COLUMN or LLEX heater or cooler “idno”.
See Sections 12.1 and 12.9 for more details.
CASESTUDY
CASESTUDY format (Section 18.2):
CHANGE STREAM=sid or <unit type>=uid, <parameter>,
VALUE=value
STREAM=sid Any stream <parameter> shown in Table 10.6-1.
and <parameter>
Or
<unit type>=uid Any unit operation <parameter> shown as accessible to the
and <parameter> VARY statement in Table 10.3-3.
or
THERM=setid Any THERMODYNAMIC parameter given in Table 10.3-3I.
and <parameter>
VALUE New <parameter> value for CASESTUDY.
Interactive Changes
In general, all stream and unit parameters which may be adjusted by a VARY or CHANGE
statement may also be changed interactively. Note, however, that each parameter may
Examples
1: CONTROLLER and a COLUMN
Vary the top pressure in column C1 to achieve a composition specification.
COLUMN UID= C1
PSPEC PTOP= 50
...
CONTROLLER UID= CON1
VARY COLUMN= C1, PTOP
SPEC STREAM= S1, FRAC, COMP=1, 4, VALUE= 0.05
2: COLUMN in a CASESTUDY
Change the top pressure in column C1 in a CASESTUDY specification.
COLUMN UID= C1
PSPEC PTOP= 50
...
CASESTUDY OLDCASE= BASECASE
CHANGE PTOP, VALUE=60
DATA
Keyword Summary
Category Identification (required)
PROCEDURE DATA
FORTRAN Statements
DIMENSION var( ), var( ), ...
INTEGER var{()}, var{()}, ...
REAL var{()}, var{()}, ...
nn var = expression
nn GOTO mm
nn CONTINUE
nn IF (expression) conditional clause
nn IF (expression) THEN
ELSEIF (expression) THEN
ELSE
ENDIF
nn DO mm IXi= i, j, k
nn DO mm ISi= sid1, sid2
nn TRACE option
nn RETURN
Input Description
Category Identification (required)
PROCEDURE DATA
Follows the Stream Data Category and precedes the UNIT OPERATION statement. An
unlimited number of PROCEDURE blocks may follow.
The PDATA statement is used to define input variables used in the CODE section that
follows. They are the user’s “calling argument list” into the PROCEDURE block from the
flowsheet. The actual values are supplied on DEFINE statements in the CSTR,
PLUGFLOW, BATCH, and Reactive Distillation unit operation. Variables defined here may
not be changed in the CODE section.
Enter the maximum number of reactions that can be calculated by the PROCEDURE
block.
PARAMETER MAXNOR=15
Predefined Variables
The following variables names are reserved. They are used to pass values between the
procedure and the unit operation which uses the procedure.
The first tables list variables which provide input values to the procedure. They may not
appear on the left side of an assignment statement.
Table 10.7-1B
Predefined Variables
Variable PFR CSTR Batch RxDist
Name
INTEGER Scalar Variables
Total # of components NOC X X X X
Total # of reactions NOR X X X X
Reaction phase IRPHAS X X X
Basis for Rate Calculation ICPFA X X X
0 = molar
1 = partial pressure
2 = fugacity
3 = mole-gamma
Step # ISTEP X
Unit # for output file IOUT X X X X
Unit # for index file INDX X X X X
Maximum # of reactions MAXNOR X X X X
The following variables are the PROCEDURE block results available to PRO/II after
control is returned to the PLUGFLOW, CSTR or Reactive Distillation unit operation.
RRATES must be defined for all reactions.
moles/(vapvol*time) for
1
OPERATION PHASE=V P P
2
Temperature derivatives for DRDT(NOR) P P X
each reaction
Composition derivatives for DRDX(NOC, X
2
each reaction NOR) P P
1
P CSTR and PLUGFLOW should not be used when multiphase reactions are expected. Except for Reactive
P
distillation and the CSTR boiling pot model, PRO/II assumes the phase is 100% liquid or vapor as defined on
the OPERATION statement.
2
P The use of this is optional.
P
FORTRAN Statements
CODE
This statement marks the start of the FORTRAN-based procedure section of the
PROCEDURE block.
Declaration Statements
REAL rname1, rname2(i), rname3(j,k) ...
B B B B B B
These statements are used to define local scalars and arrays for use in the code. Each
subscript may be an integer constant, or two integer constants separated by a colon to
specify both the lower and upper array bounds. When defined by the DIMENSION
statement, variables assume the normal FORTRAN convention that assigns names
A variable may only appear once on these statements. The following is valid in
standard FORTRAN, but not in the PROCEDURES:
REAL MOLWT
DIMENSION MOLWT(50)
Both standard FORTRAN and the PROCEDURES accept this equivalent form:
REAL MOLWT(50)
Assignment Statements
nn variable =expression
The “expression” is governed by standard FORTRAN conventions. The operations on a
given statement are executed in the following order:
1. Expressions within parentheses ( )
2. Functions
3. Exponential (**)
4. Multiplications and divisions (,/)
5. Additions and subtractions (+,-)
With the exception of exponentiation, calculations with the same precedence are
evaluated from left to right. Multiple exponentiations without parentheses to explicitly
specify the evaluation the evaluation order are not permitted. For example, the following is
invalid:
BADVAL = A**B**C
Predefined variables in Table 10.7-1 and PDATA variables may not appear on the
left side of an assignment statement.
Table 10.7-3
FORTRAN Intrinsic Functions
Arguments
Function Description Number Type Type of
Result
ABS Absolute Value 1 real real
DIM Positive Difference 2 real real
EXP Exponential e 1 real real
INT Truncation 1 real integer
LOG Natural Logarithm 1 real real
LOG10 Common Logarithm 1 real real
MIN Minimum Value ≥2 real real
MAX Maximum Value ≥2 real real
MOD Remainde 2 real real
NINT Nearest integer 1 real integer
SQRT Square Root 1 real real
SIN Sine (radians) 1 real real
COS Cosine (radians) 1 real real
TAN Tangent (radians) 1 real real
ASIN Arc Sine (radians) 1 real radian
ACOS Arc Cosine (rad) 1 real radian
ATAN Arc Tangent (rad) 1 real real
SINH Hyperbolic Sine 1 real real
COSH Hyperbolic Cosine 1 real real
TANH Hyperbolic Tangent 1 real real
IF Statement
nn IF (expression) conditional clause
This statement allows logical branching during calculations and conforms to standard
FORTRAN rules for “IF” statements. If the parenthetic expression is true, it executes the
conditional clause. The conditional clause may not be one of the following:
REAL
INTEGER
DIMENSION
IF
ELSEIF
ELSE
ENDIF
DO
RETURN
nn IF (expression) THEN
ELSEIF (expression) THEN
ELSE
ENDIF
These statements conform to standard FORTRAN IF-THEN-ELSE statements, allowing
for structured branching of code. “ELSE IF” and “END IF” written as two words are also
accepted. Block “IF” constructs can be nested.
DO Loops
nn DO mm iname= i, j, k
This statement defines the beginning of a DO loop having a range extending through
statement label mm. “i” and “j” are initial and final indices respectively. The increment step
“k” is optional and defaults to 1.
TRACE Statement
nn TRACE option
Trace statements control printing an historical trace as calculations proceed. This
facilitates debugging the code in the procedure. Options are:
ON Prints line number, statement number, and (action taken/new
variable value) as each statement executes.
BRANCH Prints TRACE information only for branching statements such
as IF, GOTO or DO.
OFF Turns off all TRACE options.
Examples
1: Power Law Kinetics
This example demonstrates how the PROCEDURE block may be used to code power law
kinetics. This essentially duplicates the Arrhenius form built into PRO/II PLUGFLOW and
CSTR reactors, but adds a “SCALE” variable which uniformly scales up the rates of all
reactions according to a user supplied factor. Acetic anhydride and water are reacted in a
PLUGFLOW reactor which calls the PROCEDURE block.
is simulated using a 1-tray reactive distillation column. The forward and reverse reaction
rates are calculated using an in-line procedure.
The forward reaction rate is given by:
rf = 488.33 exp(-59.4451/RT) CC2H4O2 CC2H5OH B B B B B B B B B B
The procedure data predefined variables are in SI units. However, the pre-
3
exponential factors are given in units of kg/m .sec. A multiplication factor of 3600 is P P
TITLE
DIME SI, PRES=BAR, TEMP=C
PRINT MBAL
COMP DATA
LIBID 1, ACETIC/2, ETHANOL/ 3, WATER/ 4, EACTAT
THERMO DATA
METHOD SYSTEM=NRTL, TRANS=PETRO
STREAM DATA
PROP STRM=1 PRES=1.013, PHASE=L, RATE=6.468 &
COMP=1.4963/ 2.4808/ 3, 0.0229/ 4, 0.0001, NORM
RXDATA
RXSET ID=SET01, PROCEDURE=PK1
REACTION ID=REAC01
STOI 1, -1/ 2, -1/ 3, 1/ 4, 1
KPHASE DEFAULT=LIQUID
KINETIC PREEX(KG,M3,SEC)=483.33, ACTIVATION (J/G)=59.4451
REACTION ID=REAC02
STOI 1, 1/ 2, 1/ 3, -1/ 4, -1
KPHASE DEFAULT=LIQUID
KINETIC PREEX(KG,M3,SEC)=123., ACTIVATION(J/G)=59.4451
PROCEDURE DATA
PROCEDURE (RXKINE) ID=PK1 NAME=KINETIC1
PARAMETER MAXNOR=10
CODE
RRATES(1)=PREEXP(1) * EXP(-ACTIVE(1)*1000/(RGAS*RTABS)) * &
XLCONC(1) * XLCONC(2) * 3600.
DATA
Keyword Summary
Category Heading (required)
RXDATA
MOLEFRACTION or MASSFRACTION
KORDER i, value/....
MOLEFRACTION or
MASSFRACTION
EEXPONENT i, value/j,value/...
General Information
The Reaction Data Category allows the definition of sets of chemical reactions available
for use by reacting units, i.e.:
Conversion Reactors
Equilibrium Reactors
Gibbs Reactors
Plug Flow Reactors (PFRs)
Continuous Stirred Tank Reactors (CSTRs)
Batch Reactors
Reactive Distillation Columns.
The Reaction Data category is optional, but if defined (1) must appear between the
Stream Data and Procedure Data categories and (2) must include at least one set of
reaction definitions.
Reaction Sets
Reactor units access reaction sets rather than individual reactions. A set of reactions may
be used by any number of unit operations in the simulation.
Each reaction set must include the definition of at least one reaction, although any number
of reactions may be included in each set. If only a single reaction is defined, it still must
be defined within a reaction set. Each reaction set must be identified by an identifier that
is unique among all the reaction set identifiers in the problem.
Input Description
RXDATA (required)
This statement is required to indicate the beginning of the Reaction Data Category of
input. The Reaction Data Category includes all input statements that appear after the
RXDATA statement and before the PROCEDURE DATA statement.
The Reaction Data Category is organized by reaction sets, each of which has a unique ID
and includes one or more individual reactions. All defined reactions must be part of a
reaction set, because unit operations reference reaction sets rather than individual
reactions.
∑ T TEXP * ∏ (C kj )
− E j /( R *T ) *
ri =
Ak j
S ij * k j * e
j =1 k =1
ri
B total rate of reaction of component i, wt-mole/volume-time.
B
The HORX statement allows input of HEAT entry, which is the heat of reaction per mole of
reference component REFCOMP, measured at REFTEMP and REFPHASE conditions.
HEAT This entry allows input of the heat of reaction in
thousands of energy units per mole of reference
component reacted. A negative value indicates heat
release or exothermic reaction. If not input, default
heat of reaction is calculated from heat of formation
values of the reactants and products.
REFCOMP This entry declares the base or reference
component for specification of the heat of reaction.
This component should be a reactant in the reaction,
and is required input if HEAT is specified.
REFTEMP The REFTEMP entry is used to specify the reference
temperature for heat of reaction calculation. The
default is 77° F (English) or 25° C (metric or SI).
REFPHASE This optional entry specifies the reference phase for
heat of reaction calculation, where L=liquid and
V=vapor. The default is vapor.
PEXP (temp unit, This entry specifies the pre-exponential factor for the
weight unit, rate expression of the power law kinetics model. The
volume unit, default is 1.0.
press unit,
time unit)
These units are used to specify the dimensional units
of the reaction rate expression. Allowed units are
temperature, weight, volume, pressure and time units.
Please refer to those unit classes in Table 4.2 for a
complete list of available dimensions. For the missing
unit, the unit defaulted or supplied on the DIMENSION
statement of the General Data category is used.
ACTIVATION The activation energy for the reaction, in thousands of
(unit) energy units per mole. The default value is zero.
This optional qualifier allows specification of the
specific enthalpy unit used for the activation energy.
The available qualifiers are listed in the Specific
Enthalpy class of dimensional units shown in Table
4.2. If missing, the specific enthalpy defaulted or
supplied on the DIMENSION statement of the General
Data category is used. Activation energy is used
without conversion to thousand energy units per mole
for calculations in Procedures (see Table 10.7-1C).
TEXPONENT The temperature exponential factor in the rate
equation. If omitted, this term defaults to zero.
KPHASE DEFAULT=L or V or L1 or L2,
U U
MOLEFRACTION or MASSFRACTION
VAPOR This entry declares the activity basis for vapor phase
reaction. Options are:
B 2 3 4 5
ln( K ) = A + C ln(T ) + DT + ET + FT + GT + HT
T
At least one of entries A through H is required.
EPHASE DEFAULT=L or V or L1 or L2,
U U
Depending on the reaction operation phase specified for the reactor unit, the
reactor unit may accept either a single or multiple reaction phases and
activity bases for the reaction calculations. When the reaction phase for all
reactions in the selected reaction set is consistent, the reaction phase will be
used as the default of operation phase for the reactor. Similarly, if the activity
basis for all reactions in the selected reaction set is consistent, the activity
basis will be used as the default of reaction activity basis for the reactor.
In a manner similar to the reaction phase and reaction activity basis, only
single reference temperature and single reference phase can be accepted
by each reactor unit (except Gibbs reactor where reference temperature and
phase are internally fixed). If the reference temperature for all reactions in
the selected reaction set is consistent, it will be used as the reference
temperature for the reactor unit. If the reference phase for all reactions in the
selected reaction set is consistent, it will be used as the reference phase for
the reactor unit. Whenever inconsistency occurs, the reference temperature
and/or the reference phase will be defaulted by the PROII defaults, i.e., 25°
C for reference temperature and vapor phase for reference phase.
Example
The following is a sample input for the Reaction Data Category of input. This category
appears in the keyword input file after the last statement of the Stream Data Category and
before the Procedures Data Category.
.
.
.
RXDATA
RXSET ID=RS1
$ Reaction Definition
REACTION ID=1
STOICHIOMETRY 1,-1/2,-1/3,1/5,1
HORX HEAT=-48, REFCOMP=1, REFPHASE=V, REFTEMP(F)=122
$ Reaction Kinetics Data
KINETIC PEXP=2.1E11, ACTIVATION=0.0
KPHASE DEFAULT=V
KORDER 1,1/2,1
$ Reaction Equilibrium Data
EQUILIBRIUM(R) A=-32.0472, B=45085
EPHASE DEFAULT=V
Keyword Summary
Unit Identification (required)
FLASH UID=uid, {NAME=text, KPRINT}
DUTY (unit)=0.0
Dew Point (saturated vapor).
DEW TEMP (unit)=value, {PEST (unit)=value}
or
PRES (unit)=value, {TEST (unit)=value}
or
DP (unit)= 0.0, {TEST (unit)=value}
Entrainment (optional)
ENTRAINMENT FROM=phase, TO=phase,
FRACTION=value or PERCENT=value or
RATE(M or WT or LV or GV, units)=value
U U
General Information
The FLASH unit operation calculates the thermodynamic state of any stream when two
variables (e.g., temperature and pressure) are given. The phase equilibrium is
determined, and phases may be separated into distinct product streams. The duty
required to achieve the state is reported.
Input Description
Entries on FLASH, FEED and PRODUCT statements are general to all unit operations
and are described in detail in Section 10.2. Table 11.1-1 lists the allowed products for
each flash type:
Table 11.1-1
Allowed Products
FLASH TYPE PRODUCTS
ISOTHERMAL V L M W S
ADIABATIC V L M W S
DEW V L1P P S
DEWHC V W
DEWWATER V L
1
BUBBLE V P P L W S
ISENTROPIC V L M W S
1
UPPERDEWPOINT V L P P
TPSPEC V L M W S
1 A pseudo equilibrium stream with a molar flowrate of zero will be created.
Note that a vapor phase (for bubble point flashes) and a liquid phase (for dew point
flashes) pseudo stream will be created if a label is given for that particular stream. The
rate of this equilibrium pseudo stream may be set to any value by using a DEFINE
statement (see Table 10.3-3A).
VLLE Calculations
Rigorous handling of two liquid phases is possible by specifying a VLLE thermodynamics
methods set. VLLE changes the significance of L and W product declarations. L is the
first liquid phase containing the bulk of the first principal component declared on the VLLE
entry, and W designates the second liquid phase. If principal components are not
designated on the VLLE statement of THERMODYNAMICS DATA, the aqueous phase (if
present) is the W product. DEWWATER and DEWHC are not meaningful when using
VLLE. A description of VLLE is presented in Sections 22 and 23.
If PRES and DP are omitted, the default is DP=0. For ADIABATIC flashes only, DUTY is
given in millions of energy units/time and defaults to DUTY=0.0.
SPEC is a stream or unit specification required by a TPSPEC flash. Refer to Section 10.4
for a discussion on generalized specifications. Available <property 1> entries are given in
Table 11.1-3.
Table 11.1-3
Available <property 1> Entries
for SPEC Statement
TEMP(unit) MOISTURE(basis) DENSITY(unit) D86 (unit, vol%)
PRES(unit) LFRAC MOLVOL (unit) D1160(unit, vol%)
RATE(basis, unit) VFRAC HOTVOL (unit) RVP(type 1)
RATE, COMP=i,j WFRAC ENTHALPY(unit) TVP(unit)
FRAC, COMP=i,j MW TBP(unit, vol%) VISCOSITY(unit)
PERC, COMP=i,j API TBP10(unit, vol%) CONDUCTIVITY(unit)
PPM, COMP=i,j SPGR TBP, ATPCT=pct SURFACE(unit)
GRAINS, COMP=i,j SPROPERTY(unit)
Examples
1: Simulate a simple phase separator with feed streams 5 and 6 mixed together. Flash
adiabatically at the pressure of the feed with the lower pressure and create vapor product
5V and liquid product 5L.
FLASH UID=F-1
FEED 5, 6
PROD V=5V, L=5L
ADIA
3: Perform a BUBBLE flash of stream 5 at 100 psia. The bubble point liquid product is
stream 6. Use thermodynamics methods set SET01 to compute
K-values, enthalpy, entropy, etc.
FLASH UID=F-03
FEED 5
PROD L=6
BUBB PRES (PSIA)=100
METHOD SET=SET01
4: Combine and flash streams 2, 3, and 18 with a pressure drop of 10, at a temperature,
which yields a liquid product flowrate of 1432 moles per time unit in stream L15. Remove
the remaining feed as vapor product stream V14. Also print out a component K-value
tabulation of the results.
5: Perform a specified-duty flash. Use the duty from the second heater/cooler attached to
distillation tower T101.
FLASH UID=F5
FEED 1
PROD M=F101
ADIABATIC DP=0.0
DEFINE DUTY AS COLUMN=T101, DUTY(2)
6: Perform an isothermal flash at a temperature 10 degrees higher than that of flash unit
F1. Use a pressure drop equal to the pressure of stream P1 minus the pressure of flash
F1.
FLASH UID=F6
FEED 1
PROD V=2, L=3, W=4
ISOTHERMAL
DEFINE DP AS STREAM=P1, PRES, MINUS, FLASH=F1,
DEFINE TEMP AS FLASH=F1, TEMP, PLUS, 10.0
FEED 1
PROD V=2, L=3
ISOT TEMP(F)=100, PRES(ATM)=1
ENTRAIN FROM=L, TO=V, PERCENT=1.5 T
8: A bubble point flash is performed at 100 psia. Stream 3 is the bubble point liquid and
stream 2 is the pseudo stream with the vapor equilibrium composition. The flow rate for
the pseudo stream is set to a calculator result of 5 moles/hr.
FLASH UID=F8
FEED 1
PROD V=2, L=3
BUBBLE PRES=100
DEFINE ERATE AS CALCULATOR=CAL1, R(1)
CALCULATOR UID=CAL1
PROCEDURE
9: An example of a keyword input file for a phase envelope curve for stream (S60) with a
retrograde condensation region from 0 to 450 C.
P P
FLASH UID=T_30C
T T T
FEED S60
PROD V=T30C_V
UPPERDEWPOINT TEMPERATURE=30, PESTIMATE=100
Keyword Summary
Unit Identification (required)
PUMP UID=uid, {NAME=text}
General Information
The pump computes the pressure-volume energy required to increase the pressure of a
stream. This energy is added to the feed enthalpy to compute the outlet temperature.
Examples
1: Use a pump operating at 68 percent efficiency to raise the pressure of stream F101 by
50 psi. Remove the liquid product in stream L1.
PUMP UID=PUM1,NAME=FEED PUMP
FEED F101
PRODUCT L=L1
OPERATION DP(PSI)=50, EFF=68
2: Increase the pressure of stream F2 to five input pressure units above the pressure of
stream L3. Assume pump efficiency of 100 percent.
PUMP UID=PUM2
FEED F2
PRODUCT L=L2
DEFINE PRES AS STREAM=L3, PRES, PLUS, 5.0
Keyword Summary
Unit Identification (required)
VALVE UID=uid, {NAME=text}
General Information
This unit simulates the pressure drop across a valve. An adiabatic flash determines the
outlet temperature at the specified pressure.
Input Description
The entries on the VALVE, FEED, and PRODUCT statements are general to all unit
operations. Refer to Section 10.2 for their usage details.
Examples
1: Use a valve to reduce the pressure of stream 2 by 50 psi. Designate the vapor product
as stream V1 and the liquid product as stream L3.
VALVE UID=VAL1, NAME=CONTROL VLVE
FEED 2
PRODUCT L=L3, V=V1
OPERATION DP(PSI)=50
2: Reduce the pressure of stream F2 to five input pressure units above the pressure of
stream L3.
VALVE UID=VAL2
FEED F2
PRODUCT M=M2
DEFINE PRES AS STREAM=L3, PRES, PLUS, 5.0
Keyword Summary
Unit Identification (required)
MIXER UID=uid, {NAME=text}
General Information
The mixer combines two or more streams into a single product. The outlet pressure may
be specified, and an adiabatic flash computes the outlet temperature. To split products
into separate phases (vapor, liquid, and water), substitute a phase separator FLASH for
the MIXER.
Input Description
The entries on the MIXER and FEED statements are general to all unit operations. Refer
to Section 10.2 for their usage details.
Keyword Summary
Unit Identification (required)
SPLITTER UID=uid, {NAME=text}
Input Description
Feeds and Products (required)
The entries on the SPLITTER and FEED statements are general to all unit operations.
Refer to Section 10.2 for their usage details. An unlimited number of feeds are allowed.
The lowest individual feed pressure is used as the pressure of the combined feed.
PRODUCT V=sid, V=sid, . . .
or
L=sid, L=sid, . . . .
or
M=sid, M=sid, . . .
The PRODUCT statement requires entry of two or more product streams. All products
have the same phase and composition, as determined by the SPLITTER, regardless of
the phase declared here.
Phase separation of products from the SPLITTER is not available.
The OPERATION statement is optional and allows specification of the outlet pressure.
The default DP is 0.0, which is the same as specifying the lowest individual feed pressure.
Examples
1: Feed streams F1 and F2 to a splitter and define three product streams 7, 8, and 9. Two
split specifications are required. Draw off 85 percent of the combined feed in stream 8.
Remove 120 moles in stream 9, allowing all remaining feed to go to stream 7. Perform the
split at the pressure of the combined feed.
SPLITTER UID=SPL1
FEED F1, F2
PRODUCT L=7, L=8, L=9
SPEC STREAM=8, RATE, DIVIDE, &
REFFEED, VALUE=0.85
SPEC STREAM=9, RATE, VALUE=120
2: Split feed stream S2 using a 5 psi pressure drop. Remove components 2, 3, and 4
from stream S2 at twice the rate of those components in reference stream R2. Label this
product stream 5, and direct any remaining feed to stream 4. Normalize the product
streams if the feed contains insufficient quantities of these components to meet the
specification.
SPLITTER UID=SPL2
FEED S2
PRODUCT M=4, M=5
OPERATION DP(PSI)=5.0, OPTION=NORMALIZE
SPEC STREAM=5, COMP=2, 4, RATE, RATIO, &
STREAM=R2, COMP=2, 4, RATE, VALUE=2
3: This problem is similar to example 2, except the pressure drop across the splitter is
defined equal to 0.5 psi less than the pressure drop across the flash unit FL1.
SPLITTER UID=SPL3
FEED S2
PRODUCT M=4, M=5
OPERATION DP(PSI)=5.0, OPTION=NORMALIZE
SPEC STREAM=5, COMP=2, 4, RATE, RATIO, &
STREAM=R2, COMP=2, 4, RATE, VALUE=2
DEFINE DP AS FLASH=FL1, DP, MINUS, 0.5
Keyword Summary
Unit Identification (required)
COMPRESSOR UID=uid, {NAME=text}
{PIN(unit)=value, TEST(unit)=value},
Aftercooler (optional)
COOLER ACTEMP (unit)=value, ACDP(unit)=0.0
General Information
The COMPRESSOR simulates a single stage isentropic compression. Outlet conditions
and power requirements may be calculated using an adiabatic or polytropic efficiency.
Two calculation procedures are available. The default method is from the GPSA
Engineering Data Book; the other is from the ASME Power Test Code 10.
Optional tabular data allows determination of compressor performance from head, work,
outlet pressure, or pressure ratio operating curves. Additionally, the user may supply
tabular efficiency curves. An optional aftercooler can cool the products to a specified
temperature. A flash drum separates vapor from liquid. VLLE calculations are supported.
{PIN(unit)=value, TEST(unit)=value},
PRSWITCH The default is 1.15. Pressure ratios less than this value use the
GPSA “temperature equation” to compute isentropic “k” and
polytropic “n” coefficients. Higher ratios use the head equation. It is
used only when GPSA method is selected.
FANH This is the exponent used in the fan laws when HEAD performance
curves are supplied. The default is 2.0.
FANH
⎛ ⎞
HEAD = HEADref *⎜
RPM
⎜ RPM ref
⎟
⎟
⎝ ⎠
FANE This is the exponent used in the fan laws when tabular efficiency
curve data is supplied. The default is 1.0.
FANE
⎛ ⎞
EFF = EFFref *⎜
RPM
⎜ RPM ref
⎟
⎟
⎝ ⎠
Aftercooler (optional)
COOLER ACTEMP (unit)=value, ACDP(unit)=0.0
The COOLER statement defines a desired outlet temperature and allows entry of a
pressure drop. COMPRESSOR products are cooled to the specified conditions and
flashed to determine the final state.
Examples
1: Compress stream F1 to 500 psia at an adiabatic efficiency of 75 percent; then cool it to
130 F through an aftercooler with a 5 psi pressure drop.
COMPRESSOR UID=CMP1, NAME=COMPRESSOR 1
FEED F1
PROD V=V1
OPER PRES(PSIA)=500, EFF(PCT)=75
COOLER ACDP(PSI)=5, ACTEMP(F)=130
2: Compute the work and efficiency of a compressor at a temperature of
200 C and a pressure of 35 Bar.
COMPRESSOR UID=CMP2
FEED F2
PROD M=MIX2
OPER TEMP(C)=200, PRES(BAR)=35
3: Use 98 percent of the power from expander EX1 to compress stream 10 to a maximum
pressure of 1200 psia. Set the inlet pressure to the difference between the pressures of
stream 9 and flash unit F1. This compressor has the same polytropic efficiency as unit C9.
COMPRESSOR UID=CPR4
FEED 10
PROD V=11
OPER PDESIGN(PSIA)=1200
DEFINE WORK AS EXPANDER=EX1, WORK, TIMES, 0.98
DEFINE PIN AS STREAM=9, PRESSURE, MINUS, &
FLASH=F1, PRESSURE
DEFINE POLY AS COMPRESS=C9, POLY
General Information
The EXPANDER simulates a single stage isentropic expansion unit. Specifying the outlet
pressure results in calculating the outlet temperature and power recovery. Alternatively,
defining the work determines the corresponding let-down pressure. Options allow entry of
the inlet pressure, efficiency, tolerance for convergence on work, and an estimate of outlet
temperature. When work is specified, a minimum design pressure may be entered.
Examples
1: Expand stream 1 to a pressure of 200 psia using an efficiency of 83 percent. Decant
any condensed liquid as stream 4.
EXPANDER UID=EXP1, NAME=TURBO EXPAND
FEED 1
PROD L=4, V=3
OPER PRES(PSIA)=200, EFF=83
2: Combine and expand streams 1 and 4 to produce 210 horsepower of work. The
expander has an efficiency of 89 percent and a minimum allowable design pressure of
100 psia.
EXPANDER UID=E2
FEED 1, 4
PROD V=2
OPER WORK(HP)=210, EFF=89, PDESIGN(PSIA)=100
3: Modify example 2 using DEFINE statements. Set WORK to 90 percent of compressor
C1 and efficiency to be the same as expander E0.
EXPANDER UID=E2A
FEED 1, 4
PROD V=2
OPER PDESIGN(PSIA)=100
DEFINE WORK AS COMPRESSOR=C1, &
WORK, MULTIPLY, 0.90
DEFINE EFF AS EXPANDER=E0, EFF
Keyword Summary
Unit Identification (required)
Configuration Data
LINE DIAMETER(unit)= value or NPS(INCH)= size, 40,
LENGTH(unit)= value, SEGMENT= 1,
ELEVATION(unit)= 0.0,
FLOWEFF(PCT)= 100.0, {FRICTION= value},
AROUGH(INCH)= 0.0018 or RROUGH= value,
General Information
The PIPE unit operation can calculate single- or mixed-phase pressure drops in piping
between various unit operations. Alternatively, it may be used to determine the line size
required for a given pressure drop or maximum line velocity.
Each PIPE unit may simulate one line, or both line and fitting. By default, the PIPE unit
simulates a line. Using both the LENGTH and KFACTOR entries results in calculations for
both line and fitting. Configurations involving a fitting followed by a line require two PIPE
units. To model a fitting by itself, supply a negligible value for LENGTH.
In the case of line and fitting combination, the PIPE unit assumes the fitting follows the line
in the direction of fluid flow. All heat transfer occurs in the line portion only, and the duty of
the fitting is zero. All other appropriate entries apply to both the line and the fitting. For
example, both the line and the fitting have the same diameter, flow efficiency, pressure
drop correlation, etc.
Product streams of a PIPE unit may be vapor, liquid, or mixed phase. Additional products
may remove decant water and solids separately. If the feed has a pressure drop less than
one psi (or equivalent), the products assume the inlet pressure. This allows a controller to
solve a series of PIPE units, even when one of the pipes has a negative outlet pressure.
In the case of zero-rate feed, the products have zero rates.
Several calculation methods are available, including the pressure drop correlations of
Beggs-Brill-Moody, Olimens, Dukler-Eaton-Flanigan, Mukherjee-Brill, Gray, Hagedorn-
Brown, and Beggs-Brill-Moody with the Palmer holdup modification. These methods apply
to a variety of piping situations, including single-phase, multi-phase, and gas condensate
systems in horizontal, vertical, uphill, and downhill configurations. Where applicable, the
PIPE unit computes friction factors by the method of Moody, using the iterative Colebrook-
White equation, with an initial value calculated from the explicit Jain equation.
The numerous choices provide great flexibility in finding an answer, but care must be
exercised. Answers are dependent upon the number of segments used and the ability of
the chosen pressure drop correlation to accurately describe the pipe configuration being
modeled. PRO/II also includes provisions for users to supply their own pressure drop
correlations.
Input Description
Unit Identification (required)
PIPE UID=uid, {NAME=name}
This is the first statement for each PIPE unit operation. The only entries are UID and
NAME, as described in Section 10.2, Unit Operation Input.
VLLE Calculations
Rigorous modeling of two liquid phases is possible by specifying VLLE thermodynamics.
Refer to Section 10.2, Unit Operation Input, for a description of how VLLE methods
change the significance of the L and W entries on the PRODUCT statement.
Pipe Schedules
10 60 140 20 80 160 30 100 40 120
Table 11.8-2
Available Pressure Drop Correlations
DPCORR= Description
BBM The Beggs-Brill-Moody method (default). A good general
purpose correlation for all pipe lines, especially single-phase
systems.
BBP Beggs-Brill-Moody with the Palmer modification to liquid
holdup, based on experimental data for uphill and downhill
lines.
OLIMENS Olimens correlation for gas condensate systems.
DEF Dukler-Eaton-Flanigan hybrid correlation for gas condensate
systems that are mainly gas.
MB Mukherjee-Brill correlation for gas condensate systems.
Discontinuities in the correlation require care by the user. Use
at least 2 pipe segments to avoid failures due to changing flow
regimes.
GRAY Gray’s correlation. Recommended for vertical gas condensate
systems. It should not be used for horizontal lines.
HB Hagedorn-Brown correlation. Recommended for vertical liquid
systems. It should not be used for horizontal lines.
These select user-defined pressure drop correlations. See the
DP1 or DP2
PRO/II User-Added Subroutine Manual for more information.
The SIZE statement cannot appear in any PIPE unit that includes calculations for
a fitting. When the KFACTOR entry appears on the LINE statement, use of the SIZE
statement is invalid.
DPMAX This is the maximum allowable pressure drop through the line. All
sizing calculations require a value supplied for DPMAX.
VMAX This option defines the maximum allowable average fluid velocity.
The dimensional units are length / time units (FT/SEC for English
units, M/SEC for metric or SI units). If this entry is omitted, the PIPE
unit uses only the pressure drop specification to converge the sizing
calculations.
or
Table 11.8-3
Entries Allowed On DEFINE Statements
Input
Statement Valid <param> Entries
LINE DIAMETER LENGTH FLOWEFF
FRICTION AROUGH RROUGH
DUTY U KFACTOR
SIZE VMAX
Examples
1: Segmented Pipe Pressure Drop Calculations
Stream F1 flows through a 175 foot long pipe of 4 inch inside diameter with an absolute
roughness of 0.002 inches. Use 7 segments, each 25 feet long, to compute the total
pressure drop in the line.
PIPE UID= LIN1, NAME= LINE-DP
FEED F1
PROD L= L1
LINE DIAMETER(INCH)= 4.0, LENGTH(FT)= 175.0, &
AROUGH(INCH)= 0.002,SEGMENT= 7
Inside Pressure
Diameter Drop Case A Case B
2 inch 18.1 27 49
4 inch 13.2 20 37
6 inch 11.5 13 34
8 inch 9.9 *9 29
10 inch 6.3 7 *18
12 inch 3.2 4 15
Comments: Case A: The 8 inch line is chosen since the 6 inch pipe violates the
pressure drop specification, even though the average velocity is below
VMAX.
Case B: The 10 inch pipe is chosen, since the 8 inch pipe violates
MAX, even though it meets the pressure drop specification.
4: Fitting Calculations
Calculate the pressure drop for a fitting with an equivalent pipe inside diameter of 4.00
inches with the total resistance to flow expressed as a KFACTOR of 3.13. The total heat
duty is 0.50 million Btu/hour transferred through the fitting. A tolerance of five percent
between successive iterations is adequate for convergence of the pressure drop
calculations.
PIPE UID= FIT1
FEED F1
PROD L= L1
LINE DIAMETER(INCH)= 4.00, KFACTOR= 3.13, LENGTH=0.001, &
DUTY(BTUH)= 0.50, DPTOL= 0.05
The fitting is assumed to follow the line along the direction of fluid flow.
All the duty is attributed to the line, and the duty of the fitting is assumed to be zero. The
elevation is entered as a negative value to indicate a 10 foot drop.
PIPE UID= PIP5, NAME= LINE-DP
FEED FLQ1, FLQ2
PROD L= L5, V= V5
LINE NPS= 6.0, 40.0, LENGTH(FT)= 225.0, &
ELEVATION(FT)= -10.0, AROUGH(INCH)= 0.0011, &
SEGMENT= 10, DUTY(BTUH)= 1.5, &
DPCORR= BBP, DPTOL= 0.005 &
KFACTOR= 0.21, XOPTION= CONTINUE
Keyword Summary
Unit Identification (required)
BLEND UID=uid
FEED sid, sid,
PRODUCT sid
IPARM 0 or 1
RPARM temp, {pres}
METHOD SET=setid
General Information
The Blend unit allows you to blend two or more streams to give one product stream with
different component and refinery inspection properties.
Keyword Description
General Data Component Data Option (required)
BLEND UID=uid
FEED sid, sid, ...
PRODUCT sid
IPARM 0 or 1
RPARM temp, {pres}
METHOD SET=setid
IPARM The IPARM statement checks that all the methods in the problem have
the same refinery properties, methods, and bases specified. This check
may be performed either during input processing (PROIN) or at
calculation time (PROCALC).
0 This IPARM value checks the thermodynamic method set
consistency in PROIN.
1 This IPARM value checks the unit thermodynamic method
sets in PROCALC.
General Notes: The feed streams should have different thermodynamic methods for this
unit to function correctly, but this is not necessary. The unit thermodynamic method must
be different from any of the feed stream thermodynamic methods.
The unit thermodynamic method component properties will be recalculated from the blend
of the feed streams’ properties and will then be stored as part of that thermodynamic
method data storage. Only petroleum and assay generated component properties will be
recalculated; it is assumed that Library component properties do not change in the
flowsheet. The unit first recalculates the normal boiling point, molecular weight and
specific gravity for all the petroleum components. These recalculated properties are then
used to recharacterize all the other petroleum fraction properties such as the critical
temperature.
Using the Blend Unit with Refinery Inspection Properties: Any refinery inspection
properties specified in the input will also be blended from the feed streams’ properties
using the specified blending method for that property. It is necessary that every
thermodynamic method must have the same refinery inspection properties specified and
that these properties must use the same property method and blending basis in order for
the unit to work. A check is done in PROIN to check that all the methods in the problem
have the same refinery properties, methods and bases specified. The user can request
this check to be done at calculation time on the methods used in the current unit using the
IPARM entry.
Requesting this check at PROCALC time should be used with care and is not
recommended.
Examples
1: Use the Blend unit to produce a blended product stream from two feeds, L1 and L2,
with different refinery inspection properties. The product, M1, is produced at conditions of
100 F and 20 psig.
TITLE PROJ=BLEND, PROB=59
CALC CDATA=VARIABLE . . . UNIT OPERATIONS
BLEND UID=BL2 FEED L1, L2
PROD M1 IPARM 0 RPARM
200,20 METHOD SET=SET3
Keyword Summary
Unit Identification (required)
RESET UID=uid
FEED sid
PRODUCT sid
CONST option
METHOD SET=setid
General Information
In version 4.1, PRO/II will issue a warning message if the thermodynamic method of a unit
operation is different from the thermodynamic method of any of the streams feeding that
unit. This warning message will apply to all unit operations except for the RESET unit, the
BLEND unit and any Profimatics Refinery reactor units.
The purpose of the RESET unit is to allow the user to reset the enthalpy datum for the
feed stream to any unit using the correct thermodynamic method of the unit that it feeds.
Keyword Description
Unit Identification (required)
RESET UID=uid
FEED sid
PRODUCT sid
CONST option
METHOD SET=setid
Only one feed and one product stream are allowed to and from the unit. An error
will be given if the user specifies more than one feed or product stream.
If the feed falls outside the multiphase boundary, the ∆T above dew point or ∆T
below bubble point is preserved.
Examples
1: Two flash drums use different thermodynamic method sets. The product from the first
flash is fed to the second flash. Use the reset unit to reset the enthalpy basis for the feed
stream to the second flash drum.
TITLE PROJECT=RESET UNIT, PROBLEM=RESET DIMEN
TEMP=C, PRES=BAR COMPONENT DATA LIBID 1, C1 / 2,
C2 / 3, C3 / 4, IC4 / 5, NC4 / 6, IC5 / & 7, NC5 / 8, NC6 / 9, NC7
/ 10, N2 / 11, CO2
THERMODYNAMIC DATA METHOD
SYSTEM=SRK,TRANS=PETRO,SET=SET1 METHOD
SYSTEM=GS,TRANS=PETRO,SET=SET2
STREAM DATA PROPERTY STRM=1, TEMP=-20,
PRES=5, & COMP=1/1/1/10/10/10/10/10/10/1/1
UNIT OPERATIONS
FLASH UID=FL1 FEED 1 PROD M=M1 ISO TEMP=-20,PRES=5
METHOD SET=SET1
RESET UID=RS1
FEED M1
PROD 2
CONSTANT ENTH
METHOD SET=SET2
FLASH UID=FL2 FEED 2 PROD M=M2 ISO TEMP=-20, PRES=5
METHOD SET=SET2
PROPERTY
REPORTER
Keyword Summary
Unit Identification (required)
CREPORT UID=uid
General Information
This unit prints out the component properties and refinery inspection properties for all the
thermodynamic methods in the current flowsheet as part of the output report.
Keyword Description
General Data Component Data Option (required)
CREPORT UID=uid
Keyword Summary
Unit Identification (required)
CAPEOPENUNIT UID=uid
PROGID = Simsci.Mixer.100
FEED sid, sid,…
PRODUCT sid …
DATAFILE = {testAllUnitsRunP2_CO11.dat}
or
PARAMETERS = {PRESSURE, 1.0133E5/TEMPERATURE, 273.15/Duty,
0}
METHOD SET=setid
General Information
CO-LaN (the CAPE-OPEN Laboratories Network) is a neutral industry and academic
association promoting open standards in process simulation software. CAPE-OPEN offers
a uniform standard for interfacing, process modeling software components developed
specifically for the design and operation of chemical processes. These standards allow
integration of different software components like Unit Operations and Thermodynamic
Property Packages from different vendors into a single simulation
PRO/II supports access to CAPE-OPEN Unit operations 0.93 and 1.0 CAPE-OPEN
versions. PRO/II can call out to the user interface, the calculations, and the report
generation functionality of a CAPE-OPEN unit operation. PRO/II supports COM
persistence, if the CAPE-OPEN unit supports IPersistStream, IPersistStreamInit,
IPersistStorage and IPersistPropertyBag.
Since users do not know programid and parameter names of CAPE-OPEN unit , it is
always better to use the unit operation through GUI and export to keyword file.
Keyword Description
General Data Component Data Option (required)
CAPEOPENUNIT UID=uid
PROGID = Simsci.Mixer.100
FEED sid, sid, ...
PRODUCT sid,sid,..
Examples
TITLE DATE=04/13/04
DIMENSION SI, PRES=PA, STDTEMP=273.15,
STDPRES=101325
COMPONENT DATA
LIBID 1,C1/2,C2
THERMODYNAMIC DATA
METHOD SYSTEM=SRK, SET=SRK01, DEFAULT
STREAM DATA
PROPERTY STREAM=S1, TEMPERATURE=200,
PRESSURE=7E5, PHASE=M, &
COMPOSITION(M,LBM/H)=1,100/2,100
PROPERTY STREAM=S1_CO, TEMPERATURE=200,
PRESSURE=7E5, &
PHASE=M, COMPOSITION(M,LBM/H)=1,100/2,100
UNIT OPERATIONS
CAPEOPENUNIT UID=CO1
PROGID=Simsci.SampleFlash.093
FEED S1_CO
PRODUCT S2_CO,S3_CO
PARAMETERS=PRESSURE,7E5/TEMPERATURE,200
CAPEOPENUNIT UID=CO4
PROGID=Simsci.SamplePersistC.1
FEED S1
PRODUCT S2
DATAFILE=testAllUnitsRunP2_CO4.dat
END
Introduction
PRO/II offers a selection of distillation algorithms, initial estimate generators, and
simulation options to model virtually any distillation problem. All the rigorous distillation
algorithms are available from within the COLUMN unit operation. Often, more than one
algorithm is suitable for a given problem. Because the input data options are so
extensive, chapter 12 has been organized into the following sections.
Section 12 - Overview
Section 12.1 - Summary of general input data and features, variously
available in two or more of the rigorous models, including the
®
IO, CHEMDIST, RATEFRAC routines, and SURE
P P
algorithms
Section 12.2 - Inside-Out (IO) Algorithm specific features
Section 12.3 - SURE Algorithm specific features
Section 12.4 - CHEMDIST Algorithm specific features
Section 12.5 - Reactive Distillation (available with CHEMDIST and LLEX
algorithms)
Section 12.6 - Enhanced IO (EIO) Algorithm specific features
Section 12.7 - Column Hydraulics: Tray sizing/rating and packed column
sizing/rating
Section 12.8 - Shortcut distillation specific features
Section 12.9 - Liquid-Liquid Extractor (LLEX) specific features
®
Section 12.10 - RATEFRAC P P routine rate-based distillation specific features
Usage Guidelines
The IO, Enhanced IO, CHEMDIST, SURE, and LLEX algorithms all solve using
®
equilibrium based calculations. The RATEFRAC software algorithm is a rate-based
P P
distillation model that uses technology licensed from Koch-Glitch. Refer to section
12.10.
The Inside-Out (IO) algorithm is applicable for the widest class of applications and
operating conditions. This algorithm is the default. This is a good first choice when
in doubt about which algorithm to use. See section 12.2.
PRO/II column. It uses fundamental mass and heat transfer relationships to model
the actual separation on a physical tray or volume of packing. See section 12.10.
Additional Features
PRO/II offers several significant capabilities that extend the utility of the basic
separation algorithms. These include:
Column Hydraulics Tray sizing/rating and packed column sizing/rating are options
available to all the algorithms listed above. Refer to section 12.7. These
capabilities are optional for the IO, Enhanced IO, CHEMDIST, and SURE
algorithms.
®
For the RATEFRAC software algorithm, column hydraulics data are required to
P P
assumes all segments are equilibrium trays. In such cases, it bypasses all rate-
based calculations.
The LLEX algorithm does not support column hydraulics, since a vapor phase
(absent in an LLEX simulation) is needed to properly size and rate sections in a
column.
Reactive Distillation simulations require user-supplied sets of reaction data in the
column definition. The CHEMDIST and LLEX models are the only ones that
support reactions Refer to section 12.5.
The SHORTCUT algorithm quickly affords the user insight into the separation
characteristics of many column operations. It performs Fenske calculations to
predict product distributions for most column configurations, including multi-feed,
multi-product fractionators. For one-feed, two-product columns, it provides the
option of determining the minimum reflux ration using the Underwood method.
PRO/II provides six algorithms for modeling the rigorous solution of various distillation
columns. This section presents an in-depth discussion of features available to more than
one algorithm. Not all features listed here are available for all algorithms. In addition,
most of the models employ some features that are not available to other algorithms.
Please refer to later sections of chapter 12 for a more definitive listing of features unique
to each model.
Keyword Summary
SEGMENTS=value, DAMP=1.0
or
LLEX = 30, DAMP=1.0, (LLEX algorithm)
TRAY = value , ERRINC = 100, CUTOFF = 1.0E–8
SUPERCEDE=ON or OFF
U U U U
or (Enhanced IO)
{ LDRAW(M or LV or WT, urate) = sid, segno, value, TOTAL /...,}
U U
(If used, OVHD(L1 or L2) replaces the normal OVHD entry. See Section 12.4)
(Duty units are millions of energy/time units. HEAT is an alias for DUTY)
BAFFLE = NO or YES, U U
RTEST(umrate) = value }
The THERMOSIPHON reboiler option is available only with the IO and ENHANCED
IO algorithms. Merged columns, siderectifiers and sidestrippers do not allow a
thermosiphon reboiler.
and
RATE(M or WT or LV) = value
U U
®
or TOTAL (SURE, Enhanced IO, and RATEFRAC ) P P
and/or
®
LFRAC(M or WT or LV) = value
U U (not available for RATEFRAC ) or P P
®
(for IO, Enhanced IO, RATEFRAC ) P P
(for LLEX)
{LIQUID( L1 or L2, M or LV or WT ) segno, value /...,}
U U
WET or DRY, U U
WET or DRY, U U
REFLUX(M or WT or LV or GV),
U U
or RRATIO(M or W or LV or GV)
U U
(for CHEMDIST)
REFLUX(M or WT or LV or GV),
U U
or RRATIO(M or W or LV or GV),
U U
PHASE = L or L1 or L2 U U
HVARYFLAG ={ 0,1}
PRINT statement)
RFPRINT { RFIEG = value, RFCALC = value, SPLITFRAC = NO or YES, U U
VBYPASSFRAC = 0.99
U U
or
TRATE { SECTION(idno) = segno1, segno2,} B B B B
DIAMETER(TRAY, uflen)=value,
SPACING( TRAY or CAP, inch) = 24.0,
U U
and (for both TSIZE and TRATE, all the following are optional.)
{ DIAMETER(VALVE or SIEVEHOLE or CAP, uflen) = value,
PASSES = 1, SFACTOR = 1.0, FFACTOR = 100.0,
THICKNESS(DECK, GAUGE or uflen) = 14, U U
1
P P DPCALC is required to access tray hydraulic results (e.g.,
downcomer backup) from a controller or other unit operation.
®
(additionally, the following are available for RATEFRAC Software only) P P
FLAPPROACH=0.5
or
CSMETHOD, { CSMAX(uvelo) = value, CSDESIGN(uvelo) = value,
CSAPPROACH = 0.88 }
USID = text*72, CASE = text*72 }
®
Structured Packing (not for RATEFRAC Software ) P P
HEIGHT(uleng) = value
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = 0.5,
BASESEG = segno1 } U UB UB
{ FACTOR(FT or M) = value,}
SPAREA(FT or M) = value,
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
FLEX = type,
or INTALOX = type,
or KGWIREGAUZE = type,
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = value,
BASESEG = segno1 } U UB UB
HEIGHT(uleng) = value
SPAREA(FT or M) = value,
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
Tolerances (optional)
TOLERANCE EQUILBRIUM=0.001, ENTHALPY=0.001,
COMP = 0.001 (for SURE and CHEMDIST)
®
KVALUE = 0.001 (for IO and RATEFRAC ) P P
Active Area:
The area allowed for the passage of vapour on each tray is called the active tray area.
Table 12.1-1
Distillation Algorithms
Section Algorithm Recommended Uses
Conventional distillation, main fractionators, absorbers,
strippers, etc. Handles VLE problems and hydrocarbon/water
12.2 IO problems (provided free water exists only on tray 1). Try this
model first, even for non-ideal applications. Significantly
faster convergence than SURE or CHEMDIST.
Same as IO, but generally slower. Additionally, SURE solves
12.3 SURE problems with free water on multiple trays, such as an
ethylene quench tower.
Well-suited to solve non-ideal and VLLE type problems. It
12.4 CHEMDIST
supports reactions on stages.
Same as IO, plus allows total draws, total pump-around, and
12.6 Enhanced IO
water decant from any tray.
12.9 LLEX Liquid-liquid extraction (without a vapor phase)
Rate-based (as opposed to equilibrium based) algorithm.
®
12.10 RATEFRAC P P
Used when non idealities result in departure from equilibrium
solution.
Conventions
Stage numbers
Column stage numbers start at the top stage, and proceed down through the column.
®
The RATEFRAC algorithm uses segments instead of trays, but their numbering
P P
also is downward from the top. If there is a condenser, it occupies stage “1”, the
top-most stage. If a reboiler is present, it occupies the bottom-most stage. Refer to
Figure 12.1-1.
®
RATEFRAC P P is a trademark registered to KOCH-GLITSCH
Condenser
The model for a condenser is a single theoretical stage with an associated cooler. This
is true even for a condenser that sub-cools the fluid (so that no fractionation occurs). It
always is the top-most stage in the column (stage 1).
Side heater/coolers
T
A side heater is a heat source and a side cooler is a heat sink. They always are placed
on the stage where they add or remove heat. A pumparound allows a side heater or
cooler only on the return stage. The DUTY statement associates each heater or cooler
with a particular stage. The duty of a heater or cooler on the return tray of a
pumparound must appear on a DUTY statement.
Water-hydrocarbon systems
The IO and SURE algorithms automatically predict excess free water at the condenser
(or at tray 1 when no condenser is present). They decant any free water that is present.
To suppress the decantation, use the FREEWATER option on the PARAMETER
statement of the SURE algorithm. In this case, the excess free water refluxes back into
the column. Subsequently, it may be withdrawn at water trap trays, or out with the
bottom. Only the SURE algorithm supports the FREEWATER option, since it is only
column model that permits free water to exist on any tray.
Input Description
The remainder of this section discusses general input data that applies to more than one
column model. Subsequent sections of chapter 12 present specific information about
individual algorithms.
SEGMENTS=value, DAMP=1.0
or
LLEX = 30, DAMP=1.0, (LLEX algorithm)
TRAY = value , ERRINC = 100, CUTOFF = 1.0E–8
The PARAMETER statement declares the number of trays (or segments) in the column,
the solution algorithm, and a number of parameters relating to the solution algorithm
chosen.
TRAY This required entry specifies the number of distillation stages in the
column. This includes the condenser and reboiler (if present). All
column algorithms require at least one stage, but impose no limit
on the maximum number of stages. The column equilibrium models
in PRO/II require the number of theoretical stages. However, if the
user supplies efficiency values, the actual number of trays is
®
expected. The non-equilibrium RATEFRAC model always
P P
Refer to the following sections of chapter 12 for discussion of additional entries on the
PARAMETER statement.
IO Section 12.2
SURE Section 12.3
CHEMDIST Section 12.4
ENHANCED IO Section 12.6
LLEX Section 12.9
®
RATEFRAC Section 12.10
P P
USUPERCEDE=ON or OFF
U
This statement declares all feeds to the column. It also associates each feed with a
distillation stage. There is no limit on the allowed number of feed streams.
An all vapor feed goes onto the designated tray rather than the tray
above.
Example: Feed stream FD1 to stage 4, and FD2 to stage 7. Separate the
feeds so that the vapor of FD1 enters tray 3, and the vapor of FD2
enters tray 6.
FEED FD1, 4 / FD2, 7, SEPARATE
or (Enhanced IO)
{ LDRAW(M or LV or WT, urate) = sid, segno, value, TOTAL /...,}
U U
(If used, OVHD(L1 or L2) replaces the normal OVHD entry. See Section 12.4.)
OVHD sid Identifies the overhead product stream. For PARTIAL and MIXED
condensers, or for columns without condensers, this stream is the
vapor phase product. For BUBB, TFIXED and DTBB condensers
with a single liquid phase (not including decanted free water), the
OVHD keyword identifies the overhead liquid product. For two
liquid phase condenser products, refer to Section 12.4,
CHEMDIST Algorithm, for special handling.
value An estimate of the overhead product in moles per time (default)
or liquid volume or weight per time. This rate is required if it is not
given on the BTMS keyword.
LDRAW, sid Identifies liquid or vapor side draws respectively. There is no limit
VDRAW to the number of draws permitted for all stages.
segno The draw tray number.
value The actual side draw rate unless the draw is declared as a variable
on the VARY statement, in which case “value” is an estimate of
the side draw rate.
TOTAL This is a total draw and value is an estimate for draw rate. Allowed
only for Enhanced IO.
WATER sid Identifies decanted free-water streams. This keyword is valid only
for IO and SURE columns.
segno The draw tray number, normally tray “1”. SURE and Enhanced
IO columns (with FREEWATER active) allow water decant on all
trays.
value The estimated water draw rate in moles per time (default) or liquid
volume or weight per time.
TSFEED, Internal thermosiphon reboiler streams are available with the IO and
TSLIQUID, Enhanced IO algorithms only. See Section 12.2, IO Algorithm and
TSVAPOR Section 12.6, Enhanced IO Algorithm.
Example: Set pseudo stream 21 equivalent to the net liquid flow from tray 3. Set
pseudo stream 22 equivalent to the pumparound draw from tray 5 (returning
eventually to tray 4). Set pseudo stream 23 equivalent to the thermosiphon
reboiler feed.
TFLOW NET(L)=21,3, PA(L)=22,5,4, TSFEED=23
TYPE Defines the condenser type. PRO/II supports five different condenser
types as illustrated in Figure 12.1-2.
PRES Defines the condenser (tray 1) pressure. This is equivalent to setting
the pressure for tray 1 on the PRESSURE statement.
TEMP Defines the condenser temperature for a TFIX condenser.
DT Defines the condenser temperature for a DTBB condenser. The
resulting temperature will be below the bubble point temperature by
that number of degrees.
TESTIMATE Estimates the temperature for equilibrium condensers (PART, MIXED
or BUBB). This optional entry is very rarely required when an initial
estimate generator is used. It is equivalent to setting the temperature
for tray 1 on the TEMPERATURE statement.
The following discussion assumes there is only one-liquid phase in the condenser, or that
the second liquid phase consists of decantable free-water. For two-liquid phase
condensers, refer to Section 12.3 for a discussion of the SURE algorithm, or Section 12.4
for the CHEMDIST algorithm.
A PARTIAL condenser does not completely condense all the fluid to a liquid state. Some
vapor overhead remains uncondensed, is drawn off. All the liquid goes back into the
column as reflux to the first tray below the condenser. Refer to Figure 12.1-2.
The MIXED condenser type operates in the same manner as the PARTIAL condenser, but
also allows a separate draw of some of the condensed liquid. The remaining liquid goes
back into the column as reflux to the first tray below the condenser. See Figure 12.1-2.
The BUBBLE, TFIXED, and DTBB condensers cool all the fluid to a liquid state. They all
allow drawing off part of the liquid. Remaining liquid is refluxed back to the column. The
BUBBLE condenser cools the fluid to the bubble point temperature. The TFIXED
condenser cools the liquid to a specified temperature below the bubble point. The DTBB
condenser cools the liquid to a specified amount of sub-cooling (i.e., DT).
value The duty in millions of energy per time units. A negative value indicates a
cooling duty. The supplied value is constant unless another input structure
redefines it. A duty may be redefined by:
- a specification variable on VARY statement.
- a pumparound on a PA statement.
- an attached heat exchanger.
name Heater/Cooler name. The name is a twelve character string that permits
the user to identify the heater/cooler elsewhere in the input file.
Example: A column has a condenser placed on tray 1, a heater on tray 10, and a
reboiler on tray 21. The condenser and reboiler duties are variables on VARY
statements These duties do not require estimated values. The side heater has a
fixed value of 6.0 million energy/time units.
DUTY 1, 1 / 2, 10, 6.0 / 3, 21
VARY DUTY = 1, 3
Reboiler (optional)
REBOILER TYPE=KETTLE or THERMOSIPHON,
U U
BAFFLE=NO or YES,
{RATE(M or WT or LV)=value
U U or
LFRAC(M or WT or LV)=value or
U U
VFRAC(M or WT or LV)=value or
U U
TEMP(utemp)=value or DT(utemp)=value,}
{LFEST=value, VFEST=value, RTEST=value}
The REBOILER statement declares the reboiler type, including thermosiphon reboilers
with or without baffles, and kettle reboilers. Each column allows only one reboiler. The
reboiler requires a heater (defined by a DUTY statement) on the bottom stage of the
column. The REBOILER does not allow a pumparound to or from the reboiler stage.
TYPE Defines the reboiler type. PRO/II supports two reboiler types:
KETTLE (a once-through thermosiphon). This is the default type.
THERMOSIPHON Only the IO and Enhanced IO algorithms allow this
type of reboiler. Not allowed by merged columns
and sidestrippers.
The heat input is simply the reboiler duty. By analogy, the model for the reboiler sump
stage is a mixer followed by an adiabatic flash. The mixer combines the spill-over from
the bottoms sump, Lo, with the liquid down-flow from the tray above. The flash accounts
B B
for any changes in equilibrium due to the mixing of two streams at potentially different
temperatures and compositions. For the baffled case, the reboiler sump does not count
as an additional theoretical stage.
LFRAC The liquid fraction of the return stream from the thermosiphon reboiler.
Users may supply this value on a mole (M-default), weight (WT), or
standard liquid volume (LV) basis. The liquid fraction defaults to 0.5
when this keyword is present with no supplied argument value.
VFRAC The vapor fraction of the return stream from the thermosiphon reboiler.
Users may supply this value on a mole (M-default), weight (WT),
standard liquid volume (LV), or standard vapor volume (GV) basis.
TEMP The reboiler temperature.
QSPEC The heat loss (negative), or heat gain (positive) for each individual tray.
The loss/gain must be given for the top and bottom trays. The individual
loss/gain for trays not defined are determined by linear interpolation
using the data given for the nearest tray above and below the tray in
question. Thus, the minimum data necessary is the duty for the top and
bottom tray.
QCOND The heat loss/gain for the condenser (tray 1).
QREBO The heat loss/gain for the reboiler (tray N).
QCOL This is the total heat loss/gain for the column (excluding the condenser
and reboiler if their respective heat loss/gain is specified). The heat
loss/gain for each tray is computed as (QCOL/NTRAYS), where
NTRAYS is the number of trays in the column, excluding the condenser
and reboiler if QCOND and QREBO are specified.
QTRAY The heat loss/gain for each tray.
and
RATE(M or WT or LV) = value
U U
®
or TOTAL (SURE, Enhanced IO, and RATEFRAC ) P P
and/or
®
LFRAC(M or WT or LV) = value
U U (not available for RATEFRAC ) P P
When the TOTAL keyword is present, the total tray liquid or vapor is
pumped around. Total liquid PA’s may only pump down the column. Total
vapor PA's may only go up the column.
Example: A pumparound has a standard liquid rate of 5000 barrels per hour. It flows
from tray 8 to tray 6. The column should calculate the cooling duty needed to
satisfy the process requirements.
PA FROM=8, TO=6, RATE(BBL/HR)=5000
DUTY ... / 3, 6 /...
VARY DUTY= 3, ...
MODEL Specifies the method for estimating initial temperature and vapor profiles.
SIMPLE Calculates vapor rates from simple mass balance. Estimating
the product compositions and determining the bubble points or
dew points, as appropriate, determines the temperatures.
CONV Uses the Fenske shortcut model for conventional columns.
Performs flashes for absorbers / strippers. This is the
recommended method for most distillation problems.
REFIN Uses the Fenske shortcut model for multi-product separations
normally found in refinery heavy-ends units.
The PRO/II Graphical User Interface supports the PRINT PROFILE option
under the Column Convergence window.
Problems may arise when user estimates for temperature and for vapor or liquid
flows overwrite the IEG values. This is most apparent for restarts.
VAPOR(M or WT or LV or GV) segno, value/...,
U U
This optional statement provides estimates of the net vapor rate for individual trays (or
stages in a packed section). The estimate values should exclude vapor draws and
pumparounds. Qualifiers allow supplying rate estimates as moles (default), weight,
liquid volume, or gas volume per unit of time. PRO/II considers the vapor flow rate from
tray 1 to be the overhead rate, even if the overhead is liquid. PRO/II assumes constant
molar vapor flow rate for trays not estimated. Flows are adjusted for heater/cooler
duties, feeds and draws. When an ESTIMATE statement is present, the vapor flow rates
on the VAPOR statement overwrite the estimated values only on the trays supplied on
the VAPOR statement.
®
LIQUID(L, M or LV or WT) segno, value/...(for IO, Enhanced IO RATEFRAC )
U U U U P P
The LIQUID statement provides estimates of the net liquid rate for individual trays (or
stages in packed sections). These net estimates exclude liquid draws and
pumparounds. Qualifiers M, WT, and LV allow rate estimates on a molar (default),
weight, or liquid volume per unit time basis. It is typical to supply either the VAPOR or
the LIQUID statement, not both. PRO/II determines the other by mass balance. When
also using an ESTIMATE statement, the liquid flow rates on the LIQUID statement
overwrite the estimated values only on the trays supplied by the LIQUID statement..
When two liquid phases are expected, PRO/II allows liquid profile estimates for each
phase (L1 and L2). However, it is generally recommended that the bulk (L) phase be
estimated instead. Note that if an estimate for phase L1 is given, an estimate for the L2
phase must also be given. PRO/II can then perform the liquid phase split. Note that two-
liquid-phase trays are supported by CHEMDIST and SURE only.
CESTIMATE(L or V) segno, x1, x2, ... /... (for IO and Enhanced IO)
U U B B B B
The CESTI statement supplies composition estimates for individual trays (or stages in a
packed section). The purpose is to provide a closer starting point for column algorithms
for highly non-ideal and difficult to solve distillation problems. Very few problems require
this level of estimation to achieve solution.
xi
B B The mole fraction of component i on segment segno in the liquid phase (L) or
vapor phase(V). When two liquid phases are present, composition estimates
may be made either for the bulk liquid (L) or for both of the liquid sub phases
(L1 and L2).
Example: Estimate the vapor and temperature profiles in a column.
TEMP 1, 100 / 2, 140 / 15, 250/ 21, 330
VAPOR 2, 420 /15, 420 / 16,380 / 21, 450
Table 12.1-3
Attributes of COLUMNS with
no SPEC or VARY statements
OVHD or BTMS rates vary
LDRAW or VDRAW rates fixed
LDRAW or VDRAW with TOTAL vary
DUTY duties fixed
FEED rates fixed
tray TEMP vary
tray PRES1 P P fixed
VAPOR rates vary
LIQUID rates vary
WATER rates vary
product property vary
tray vapor or liquid properties vary
1
P May not be varied internally
P
Each column attribute specified by a “SPEC” statement requires one of the “fixed”
attributes to vary. For example, consider a conventional column with two products, a
reboiler and a condenser. The user wants to specify the reflux ratio and overhead rate.
Notice in Table 12.1-3 that the LIQUID (reflux) rate and OVHD rate both “vary”.
Specifying them on “SPEC” statements “fixes” their values. As a consequence, too
many attributes now are “fixed”, and too few attributes can “vary”. The degrees of
freedom are out of balance.
To balance the available degrees of freedom, two “fixed” attributes must be allowed to
vary. Now note (from Table 12.1-3) that the condenser and reboiler duties initially were
“fixed”. Declaring them on a VARY statement allows them to “vary”, and balances the
degrees of freedom.
IO columns with sidestrippers balance the degrees of freedom across the entire system
of columns. Each column or sidestripper may have an unequal number of SPECs and
VARYs, but the sum of the SPECs and VARYs for the merged column system (main
fractionator and side columns solved simultaneously) must be equal.
WET or DRY,
U U
WET or DRY,
U U
REFLUX(M or WT or LV or GV), or
U U (for CHEMDIST)
RRATIO(M or W or LV or GV),
U U
PHASE=L or L1 or L2
U U
K ieq,n The equilibrium K-value based on liquid compositions for component i, tray
n
PRO/II allows the simultaneous use of both equilibrium and vaporization efficiencies. The
expression that governs this is:
(( ) )
K ieff,n = K ieq,n − 1.0 * Eieq,n + 1.0 * Eivap
,n eq. 12.1-4
Condenser and reboiler trays automatically have efficiencies equal to one regardless of
the value specified by the user. Murphree efficiencies can be greater than 1.0 for a
given component or group of components.
When the efficiency is not equal to 1.0, by definition, the affected phases are not in
phase equilibrium. This inclueds the vapor phase (Murphree efficiency) or vapor and
liquid phases (equilibrium and vaporization efficiencies). This often causes
inconsistencies in the output report.
• For columns without condensers, the overhead vapor is not at dew point.
Depending on what efficiencies are specified for which components, the overhead
may be superheated or in the two-phase region.
• A column with a condenser will cause the HCURVE unit operation to generate a
condensing curve that does not match the column operating conditions. This is
because HCURVE performs a series of equilibrium flash calculations to generate a
condensing curve, while the tray 2 vapor is not in equilibrium.
• Products from trays where the equilibrium or vaporization efficiency is not equal to
1.0 will not be at dew point or bubble point.
It is the responsibility of the user to account for these inconsistencies.
TEFF The efficiency, given as a fraction, for all components on tray segno.
The column interpolates supplied efficiency data to compute the
efficiency for all trays that are missing data. Trays not bracketed by
tno values have an efficiency of 1.0. Condensers and reboilers
always use an efficiency of 1.0.
MURPHREE Use Murphree tray efficiencies
When both TEFF and CEFF are given, the TEFF values are set first. Then,
the CEFF values override the TEFF values on an individual basis.
EFACTOR This value scales all of the efficiencies uniformly, excluding the reboiler
and condenser trays. Note: if vaporization and equilibrium efficiencies
both are given, only equilibrium efficiencies are scaled. This feature is
most commonly used as a variable in a controller unit operation to
adjust column performance to match plant data.
Example: Set the Murphree Tray efficiency at 0.95 for all components from trays 2
through 9. Overwrite the efficiency for component 6 to be 0.7. Scale the
efficiencies by factor of 0.95.
TEFF(MURPHREE) 2,0.95/9,0.95
CEFF(MURPHREE) 2,6,0.7/9,6,0.7
EFACTOR 0.95
options.
ITER Selects the level of intermediate output. For most
COLUMNS, set ITER to NONE or PARTIAL which
generates the least amount of output. If the column does
not converge, use the ALL option to get additional data for
determining corrective action.
NONE Prints no intermediate results.
PART Prints a brief iteration report containing the error
sums. This is the default.
ESTI Prints profiles at the conclusion of the initial
estimate procedure and continues with the PART
iteration report.
ALL Prints profiles at the conclusion of each iteration.
Example: DEFINE the condenser pressure as the pressure in FLASH F1. DEFINE
the pressure drop across the condenser as 5 pressure units. DEFINE the tray
pressure drop as CALCULATOR CAL1, result R(3). DEFINE the flow rate of the
overhead product OV1 to be equal to a calculator result R(4).
DEFINE PCOND AS FLASH=F1, PRES
DEFINE PTOP AS FLASH=F1, PRES, PLUS, 5.0
DEFINE DP AS CALC=CAL1, R(3)
DEFINE PRODUCT=OV1 AS CALC=CAL1, R(4)
unless hydraulics calculations are specified. Section 12.7- Column Hydraulics provides
®
an extensive discussion of these features. RATEFRAC routine hydraulic calculations,
P P
and their involvement with rate-based calculations, also are fully discussed there.
Tolerances (optional)
TOLERANCE EQUILBRIUM=0.001, ENTHALPY=0.001,
COMP = 0.001 (for SURE and CHEMDIST)
KVALUE = 0.001 (for IO)
CHEMDIST checks the MAXIMUM error of each equation type against the
tolerance. Therefore, if you specify an error of 0.001 for the components, then the
maximum error on any tray for any component is less than 0.001 (when converged).
The mass balance and enthalpy balance equations should be straightforward. The VLE
equation check for CHEMDIST is not the same as for SURE and IO. CHEMDIST does
-25, 25
less than 1x10 or greater than 1x10 , or when the difference
P P P P
ENTHALPY This sets the error tolerance for the enthalpy balance of the
distillation column. The default is 0.001.
Examples
Example 12.1.1: Simple Absorber
This example demonstrates one way to determine the lean oil rate required to recover
85% of the propane (component number 5) in the wet gas. The lean oil molar rate will
be a variable to achieve this specification. The output report should include a full
printout of all weight and mole compositions, and stream properties for each tray.
Process Requirements
Description BBL/Day
Light Gasoline 3000
Pumparound 10000
Tray 12 liquid (over-flash) 5 vol % on feed
Product Spec
Heavy Naphtha D86 95% 375 F
Pressures are:
Condenser 48 psia
Top tray 53 psia
Tray 14 55 psia
Tray 15 55.2 psia
Sidestripper 54 psia
Keyword Summary
Unit Identification (required – Section 12.1)
COLUMN or SIDESTRIPPER or SIDERECTIFIER UID=uid, {NAME=text}
SUPERCEDE=ON or OFF
U U
BAFFLE=NO or YES,
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or U U
VFRAC(M or WT or LV)=value or U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
{PRES(unit)=value},
{RATE(M or WT or LV)=value},
U U
DT(unit)=value},
REFINING or CHEM
{CTEMP(unit)=value, TTEMP(unit)=value,
BTEMP(unit)=value, RTEMP(unit)=value},
RRATIO=3.0 or REFLUX=value
WET or DRY, U U
RRATIO(M or W or LV or GV), U U
WET or DRY, U U
ITERATIONS=10, HVARYFLAG={0,1}
VBYPASSFRC=0.99
U U
PASSES=1, SF=1.0,
SPACING(TRAY, IN)=24.0,
DIAMETER(TRAY, unit)=value,
THICKNESS(DECK,GAUGE)=14,
THICKNESS(VALVE, GAUGE)=16,
{NUMBER(VALVES or CAPS)=value},
{SPACING(CAP,unit)=value},
DIAMETER(VALVE or SIEVEHOLE or CAP, unit)=defvalue,
HOLEAREA(PERCENT)=12.0,
MATERIAL(VALVE)=SS,
WEIR(unit)=defvalue, DCC(unit)=defvalue,
DCW(unit)= defvalue1,...,defvalue8,
{DPCALC=1.0}
PACKING (Random packing)
SECTION(idno)=tno1, tno2, TYPE=itype,
SIZE(unit)=value, {FACTOR(unit)=value},
{HEIGHT(unit)=value or HETP(unit)=value},
HMETHOD=FRANK, DPMETHOD=NORTON,
{DIAMETER(unit)=value},
{DPSECTION(unit)=value or DPPACK(unit,unit)=value},
FLMETHOD or
U U
FLOOD(unit)=value, DESIGN(unit)=value,
NET The net vapor or liquid flow from one tray to the next. For
example, NET(L) specifies the pseudo stream to be the liquid
leaving tray “tno”, not including product or pumparound
draws.
TOTAL The total vapor or liquid flow leaving a tray, including product
and pumparound draws.
PA The liquid or vapor draw to a pumparound. tno1 is the draw
tray number, and tno2 is the return tray.
TSFEED The feed to the reboiler. This stream has the composition,
temperature, and pressure of the liquid at the surface of the
sump. To simulate a rigorous thermosiphon reboiler using
HXRIG, the static head must be added via a flash.
TSLIQUID The liquid stream from the reboiler. This is the liquid stream
obtained by flashing the reboiler return stream at the column
conditions on stage N-1.
TSVAPOR The vapor stream from the reboiler. This is the vapor stream
obtained by flashing the reboiler return stream at the column
conditions on stage N-1.
General Information
Methodology
The IO algorithm is an “Inside/Out” distillation solution method. It uses stripping factors as
the iteration variables. This serves to accelerate the solution, because the column is
always in mass balance. In the inner loop, simplified thermodynamic models are used to
solve the column heat balances and specifications. When the inner loop has converged,
the simplified thermodynamic models coefficients are updated in the outer loop and a
convergence check is made. The column is considered solved when the thermodynamic
models are no longer changing, and the bubble point equations are satisfied.
The first time that the inner loop is entered, the Jacobian matrix is calculated rigorously.
After this, the IO algorithm uses a method to approximate the inverse to the Jacobian
matrix, and thus avoids a time consuming matrix calculation for each inner loop iteration.
This matrix approximation technique combined with the simplified thermodynamic models
gives the IO algorithm its quick execution speed.
Initial Estimates
One of the most attractive feature of the IO algorithm, as implemented in PRO/II, is the
minimal requirement for initial estimates. In many cases, the only requirement is for a
molar rate for either the overhead or bottom product rate; the estimate does not have to
be particularly good. As the column model progresses from a conventional, ideal
distillation to a complex or non-ideal fractionator, a more refined initial estimate may be
required. However, detailed initial temperature and vapor profiles are rarely required to
obtain a solution.
Column Merging
The IO and Enhanced IO algorithms are the only PRO/II distillation methods capable of
merging side columns and main-fractionator together for simultaneous solution. The
advantages to this are faster execution more flexible product specifications.
For example, if it is necessary to have both a D86(5%) specification as well as a
D86(95%) specification on a sidestripper product, the SURE algorithm requires a multi-
variable controller (MVC) unit operation wrapped around the main-fractionator/sidestripper
pair of columns. The Enhanced IO algorithm can solve this problem by specifying the
products directly. Furthermore, the IO Column will solve using substantially less computer
time than the SURE column iterative calculation with the MVC.
To take advantage of column merging, the following conditions must exist:
Both the COLUMN and SIDESTRIPPER/SIDERECTIFIER must use the IO method.
Thermosiphon Reboilers
The IO algorithm supports the modeling of thermosiphon reboilers with and without baffles
by using the REBOILER statement. In this way, the reboiler is modeled as two theoretical
stages, and the liquid and vapor flows in the bottom of the column are more accurately
simulated.
The phrase “two theoretical stages” does not mean “two equilibrium stages”.
Limitations
Except for the decantation of pure water from the condenser, the IO algorithm does not
support two liquid phases. Thus, the KVALUE(LLE) designation in the METHODS setid is
ignored. To rigorously solve three-phase distillation problems, use the CHEMDIST or
SURE algorithms. Also, water draws on any tray other than tray 1 are invalid. To solve
problems with free-water below the condenser, use the SURE algorithm.
The IO algorithm does not support total pumparounds. If total pumparounds are required,
use the SURE algorithm.
Input Description
Section 12.1, Column Input, describes most of the keyword input for the IO algorithm. The
exceptions to this are the PARAMETER and REBOILER statements which contain
features unique to the Enhanced IO algorithm, the FZONE statement for flash zone
calculations and the TBP cutpoint specification option. All of these are described below.
Special notes on IO keyword input concerning products, column pseudo products,
pumparounds, composition estimates, and performance specifications are also given
below.
The PARAMETER statement sets the number of trays in the column, the solution
algorithm, and a number of parameters relating to the solution algorithm chosen.
VBYPASSFRC=0.99
U U
The FZONE statement models a fired heater added to a tray in a distillation column. The
efficiency of this fired heater may be supplied on this statement. In addition, the fraction of
liquid or vapor bypassing the heater may also be supplied on the FZONE statement. Any
number of FZONE statements are allowed.
Each FZONE statement represents one theoretical stage in the column. The user
should revise the number of theoretical stages to account for each flash zone defined.
BAFFLE=NO or YES,
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or
U U
VFRAC(M or WT or LV)=value or
U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
The REBOILER statement is used to define thermosiphon reboilers with or without baffles
and kettle reboilers. Only one reboiler per column is allowed. The reboiler must be
associated with a heater, which must be defined on the bottom stage of the column on the
DUTY statement. If the REBOILER statement is present, no pumparound to and from the
reboiler stage is allowed.
TYPE Defines the reboiler type. PRO/II supports two reboiler types
– kettle (or once-through thermosiphon), which is the default,
and thermosiphon.
BAFFLE Defines the presence or absence of a bottoms baffle. NO
indicates that no bottoms baffle is present. This is the default.
For a column with a bottoms baffle, and the reboiler return
liquid returning to the reboiler sump, for all practical purposes,
the pressure at the surface of the reboiler and bottoms sumps
is the same, even though there is a small static head
difference. The vapor leaving the bottoms sump is then
practically zero. To model this reboiler then (also known as a
circulating thermosiphon), the BAFFLE=NO option should be
chosen. YES should be selected when the reboiler return
liquid is returned to the bottoms sump. This type is also
known as a preferential thermosiphon. Figures 12.2-2 and
12.2-3 illustrate the types of thermosiphon reboilers available.
RF, RL, and RV are the reboiler feed and liquid and vapor
B B B B B B
reboiler sump stage can be thought of as a mixer followed by an adiabatic flash. The
mixer combines the spillover from the bottoms sump, Lo, with the liquid downflow from the
tray above. The flash accounts for any changes in equilibrium due to the mixing of two
streams at potentially different temperatures and compositions. For the baffled case, the
reboiler sump does not count as an additional theoretical stage.
Example: A column with a thermosiphon reboiler is to be modeled. The reboiler
return liquid is to be returned to the bottoms sump, and the liquid fraction of the
reboiler return stream is specified as 0.52 on a weight basis.
REBOILER TYPE=THERMOSIPHON, BAFFLE=YES,
LFRAC(WT)=0.52
Performance Specifications
COLUMNS and SIDESTRIPPERS or SIDERECTIFIERS are merged and solved as a
single column. The number of SPEC statements may differ from the number of variables
on the VARY statement for each individual column, but the total number of SPEC
statements must equal the total number of variables for the entire merged column.
ITERATIONS=10, HVARYFLAG={0,1}
SPECIFICATION This entry requires a positive integer specification number.
The specification number is based on the order of
specifications listed for the column of interest, starting at 1.
For merged columns, each column section requires its own
homotopy statement, and should refer to the internal SPEC
number for that section. There can be at most one homotopy
statement for any internal SPEC.
INITIAL This entry requires a real number for the initial value of the
SPEC variable which is converged through homotopy.
ITERATIONS This entry requires a non-negative integer. This is the number
of homotopy iterations in which the final value for the SPEC
will be achieved.
Example
1: Column with Thermosiphon Reboiler
A deethanizer to remove C2 and lighter components from a hydrocarbon gas feed is to be
designed. The bottoms product must contain ethane to propane in the ratio 0.025. Ninety-
nine percent of the propane in the feed must be recovered in the bottom product. The
TITLE
column contains 20 theoretical stages with a thermosiphon reboiler without baffles at
stage 20. The reboiler return stream liquid fraction is specified to be 0.65. The feed at tray
10 is flashed at the feed tray pressure, the vapor rising under tray 9 and the liquid
dropping onto tray 10. The condenser pressure is specified as 425 psig. A TFLOW
statement is used to create pseudo streams equivalent to the reboiler feed, liquid, and
vapor streams.
The SURE algorithm has been tested for four generations of process simulation programs.
It offers some functionality not available to the IO and CHEMDIST algorithms:
Rigorous three-phase distillation (not available for IO)
Water decant on any tray (not available for IO and CHEMDIST)
Total pumparounds (not available for IO and CHEMDIST)
The SURE algorithm offers an alternative to the IO and CHEMDIST algorithms if they fail
to solve.
Keyword Summary
Unit Identification (required)
COLUMN or SIDESTRIPPER or SIDERECTIFIER UID=uid, {NAME=text}
SUPERCEDE=ON or OFF
U U
(FREEWATER active)
{WATER(M or LV or WT, unit)= sid, tno, value/...}
U U
(VLLE active)
{L1DRAW(M or LV or WT, unit)= sid, tno, value/…}
U U
(VLLE active)
{L2DRAW(M or LV or WT, unit)= sid, tno, value/...} U U
Reboiler (optional)
REBOILER TYPE=KETTLE or THERMOSIPHON, U U
BAFFLE=NO or YES, U U
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or U U
VFRAC(M or WT or LV)=value or U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
If the reboiler is referenced from outside the column, you must enter it using the
REBOILER statement, rather than through a heater on the last tray.
{PRES(unit)=value},
{RATE(M or WT or LV)=value},
U U
REFINING or CHEM
{CTEMP(unit)=value, TTEMP(unit)=value,
BTEMP(unit)=value, RTEMP(unit)=value},
RRATIO=3.0 or REFLUX=value
WET or DRY, U U
WET or DRY, U U
RRATIO(M or W or LV or GV), U U
WET or DRY, U U
ITERATIONS=10, HVARYFLAG={0,1}
PASSES=1, SF=1.0,
SPACING(TRAY, IN)=24.0,
DIAMETER(TRAY, unit)=value,
THICKNESS(DECK,GAUGE)=14,
THICKNESS(VALVE, GAUGE)=16,
{NUMBER(VALVES or CAPS)=value},
{SPACING(CAP,unit)=value},
DIAMETER(VALVE or SIEVEHOLE or CAP, unit)=defvalue,
HOLEAREA(PERCENT)=12.0,
FLOOD(unit)=value, DESIGN(unit)=value,
FLAPPROACH=0.5
or
CSMETHOD,
CSMAX(unit)=value, and/or CSDESIGN(unit)=value,
CSAPPROACH=0.88
PACKING (Structured packing)
SECTION(idno)=a, b, SULZER=itype,
{HEIGHT(unit)=value or HETP(unit)=value},
{DIAMETER(unit)=value or CAPACITY(unit)=value}
General Information
Methodology
The SURE method employs a Newton-Raphson convergence technique implemented with
a matrix partitioning scheme developed by SimSci.
Side Columns
SIDESTRIPPERS/SIDERECTIFIERS are solved as separate columns. PRO/II operates
under a special set of heuristics that permit efficient solution of the column and recycles.
The first time through the loop, the main-fractionator is set up by the initial estimate
generator, but no actual column iterations are performed until the side columns are fully
solved. Thereafter, the main-fractionator iterates a maximum of two times per recycle
loop, allowing the recycle to update the feeds on a timely basis. Thus, the main-
fractionator and recycles converge jointly, if not quite simultaneously.
Limitations
Of the three distillation algorithms, the SURE has the greatest amount of functionality.
However, the following are reasons why you may wish to consider a different algorithm
first:
1. The SURE algorithm is slower than the IO algorithm for most applications and is
usually slower than CHEMDIST for non-ideal systems.
2. It is poorly suited to solving stream property specifications on SIDESTRIPPERS
and SIDERECTIFIERS products.
Input Description
Section 12.1, Column Input, describes most of the keyword input for the SURE
algorithm. Two exceptions to this are the PARAMETER statement, which contains
features unique to the SURE algorithm and the PRODUCT statement, which contains the
additional optional L1DRAW and L2DRAW keywords. The PARAMETER statement and
the L1DRAW and L2DRAW keywords are described in the following.
Products (required)
PRODUCT OVHD(M or LV or WT, unit)= sid, value, U U
(FREEWATER active)
{WATER(M or LV or WT, unit)= sid, tno, value/...}
U U
(VLLE active)
{L1DRAW(M or LV or WT, unit)= sid, tno, value/…}
U U
(VLLE active)
{L2DRAW(M or LV or WT, unit)= sid, tno, value/...}
U U
The PRODUCT statement is required and identifies all of the real products from the
column. Section 12.1, Column Input, describes all the keywords used in the PRODUCT
statement except L1DRAW and L2DRAW:
L1DRAW or L2DRAW may be used in conjunction with a VLLE thermo method only.
L1DRAW refers to the total draw of the first liquid phase with primary component defined
on the thermo METHOD statement L1KEY entry. L2DRAW refers to the second liquid
phase defined by the thermo METHOD statement L2KEY entry. Only one of these can be
used for any given tray. SPECIFICATION statement or VARIABLE entries may not refer to
the streams defined by these statements.
L1DRAW tno The draw tray number. VLLE needs to be active for all trays
or < tno (all trays above and including tno).
L2DRAW
value An estimate of the total draw rate in moles per unit time
(default) or liquid volume or weight per time. PRO/II will
determine the actual amount available for the total draw.
For three-phase distillation (distillation using a VLLE thermo method), it is possible to
designate a total draw from the condenser of either phase one or phase two liquid by
using L1DRAW or L2DRAW. The remaining liquid phase constitutes the liquid product (if
any). All five condenser types as described in Section 12.1, Column Input, are valid.
Example:
THERMODYNAMIC DATA
METHODS SYSTEM=SRKKD, KVALUE(VLE) = SRKKD, SET=SET01, &
DEFAULT
METHODS SYSTEM=SRKKD, KVALUE(VLLE) =SRKKD, L1KEY= 5, &
L2KEY =13, SET=SET02
COLUMN
ITERATIONS=10, HVARYFLAG={0,1}
INITIAL This entry requires a real number for the initial value of the SPEC
variable, which is converged through homotopy.
ALGORITHM
The chemicals distillation algorithm (CHEMDIST) is particularly well suited for solving
difficult, non-ideal distillation problems. The CHEMDIST algorithm uses liquid activity
coefficients and vapor phase fugacities directly, so CHEMDIST is applicable only when
liquid activity or advanced equation of state methods are chosen in the Thermodynamic
Data Category. CHEMDIST handles both vapor-liquid equilibrium and vapor-liquid-liquid
equilibrium problems. In general, the CHEMDIST algorithm is the best method for three-
phase distillation problems, or for two-phase problems when the IO algorithm encounters
difficulty.
Keyword Summary
Unit Identification (required)
COLUMN UID=uid, {NAME=text}
SUPERCEDE=ON or OFF U U
Reboiler (optional)
REBOILER TYPE=KETTLE, U U
BAFFLE=NO or YES, U U
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or
U U
VFRAC(M or WT or LV)=value or
U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
If the reboiler is referenced from outside the column, you must enter it using the
REBOILER statement, rather than through a heater on the last tray.
REFINING or CHEM
{CTEMP(unit)=value, TTEMP(unit)=value,
BTEMP(unit)=value, RTEMP(unit)=value},
RRATIO=(LD or LF or L1 or L2)=3 or
U U
REFLUX=(L or L1 or L2)=valueU U
WET or DRY, U U
WET or DRY, U U
RRATIO(M or W or LV or GV),
U U
PHASE=L or L1 or L2
U U
WET or DRY,
U U
PASSES=1, SF=1.0,
SPACING(TRAY, IN)=24.0,
DIAMETER(TRAY, unit)=value,
THICKNESS(DECK,GAUGE)=14,
THICKNESS(VALVE, GAUGE)=16,
{NUMBER(VALVES or CAPS)=value},
{SPACING(CAP,unit)=value},
DIAMETER(VALVE or SIEVEHOLE or CAP, unit)=defvalue,
HOLEAREA(PERCENT)=12.0,
MATERIAL(VALVE)=SS,
WEIR(unit)=defvalue, DCC(unit)=defvalue,
DCW(unit)= defvalue1,...,defvalue8, B B
{DPCALC=1.0}
FLMETHOD or
U U
FLOOD(unit)=value, DESIGN(unit)=value,
FLAPPROACH=0.5
or
CSMETHOD,
CSMAX(unit)=value, and/or CSDESIGN(unit)=value,
CSAPPROACH=0.88
(Structured packing)
PACKING SECTION(idno)=a, b, SULZER=itype,
{HEIGHT(unit)=value or HETP(unit)=value},
{DIAMETER(unit)=value or CAPACITY(unit)=value}
General Information
Methodology
CHEMDIST uses a modified Naphtali-Sandholm algorithm with a matrix solver developed
at SimSci. Liquid activity coefficients and vapor phase fugacities are used directly, rather
than being converted to K-values. Mole fractions undergo a non-linear mapping which
improves convergence.
Limitations
CHEMDIST does not support pumparounds and LDRAW with VLLE thermo sets. Certain
specification types are not allowed as described in the Input Description below.
Most of the keyword input for the CHEMDIST algorithm is described in Section 12.1,
Column Input. Features unique to CHEMDIST are described below.
Input Description
Unit Identification (required - Section 12.1)
The CHEMDIST algorithm does not support SIDESTRIPPERS or SIDERECTIFIERS.
DAMP Supplying a DAMP factor of less than 1.0 reduces the magnitude
of the composition update from one iteration to the next and may
increase the likelihood of convergence at the expense of CPU
time. The default is DAMP=1.0.
ERRINC This limits the size of the sum of the errors increase from
iteration to iteration. The default value is 100, which means that
the sum of the errors can increase two orders of magnitude
between consecutive iterations. Should the sum of the errors
increase beyond that, the step size is decreased. Note that the
CHEMDIST algorithm sometimes requires a significant increase
in the sum of the errors before a converging path is obtained.
The ERRINC entry restricts the initial diverging step from
traveling so far that it cannot recover.
CUTOFF This entry controls the use of the damping factor. When the sum
of the errors is larger than the CUTOFF value, the damping
factor supplied by the DAMP keyword is used. Should the sum of
errors become smaller than the CUTOFF value, the default
damping factor of 1.0 is used. The default CUTOFF value is 1.0
-8
x 10 . P P
Example: A non-ideal distillation with 25 trays is to use the CHEMDIST algorithm with a
maximum of 12 iterations.
Products (required)
FEED sid, tno/..., NOTSEPARATE, SEPARATE, U U
SUPERCEDE=ON or OFF U U
If there are two liquid phase condenser products, there are several
possible condenser configurations as described above under
General Information. Only one liquid phase product can be defined
by the OVHD keyword, and that phase is identified by the L1 or L2
product. If the second liquid phase is also a column product, it will
be identified with the L1PART, L2PART, L1DRAW or L2DRAW
statements described below.
value An estimate of the overhead product in moles per time
(default units) or liquid volume or weight per time. This rate is
required if it is not given on the BTMS keyword.
BTMS Identifies the bottoms product stream, sid.
value An estimate of the bottoms product in moles per time
(default units) or liquid volume or weight per time. This rate
is required if it is not given on the OVHD keyword.
LDRAW, Identifies liquid or vapor sidedraws respectively. An unlimited
VDRAW number of draws are permitted for all trays.
tno The draw tray number.
value The actual sidedraw rate unless the draw is declared as
a variable on the VARY statement, in which case “value” is an
estimate of the sidedraw rate. For variable streams, the rate may
be specified on a molar (default) or liquid volume or weight per
unit time basis (and on a gas volume basis for vapor
sidedraws). For fixed streams, the actual rate must be specified
on a molar basis and as the steam molecular weight is not known
at the time of the initial column estimate.
L1DRAW or L1DRAW and L2DRAW are total draws of the L1 and L2 liquid
L2DRAW or phases respectively. L1PART and L2PART are partial draws and
L1PART or are valid only for condenser product streams.
L2PART
tno The draw tray number. Must be equal to 1 for L1PART
AND L2PART. May equal any tray number for L1DRAW or
L2DRAW.
A special case exists when one liquid phase is totally drawn as a product, and the second
liquid phase is totally refluxed. Assuming the L1 phase is the overhead product, the
following diagram demonstrates how this configuration should be modeled.
The L1 phase reflux is included as part of the matrix, but its rate is specified as zero. In
this case the input file would show:
COLUMN
PARAMETER CHEMDIST, . .
PROD OVHD(L1)=A, . . . ,
SPEC REFLUX, PHASE=L1, VALUE=0.0
Figure 12.4-1
Example: Stream BT is the bottom product. Stream LD1 is the hydrocarbon phase
liquid product from the condenser and LD2 is the aqueous phase which is being
totally drawn. A bulk phase (or possibly single phase) stream is drawn from tray 5.
The overhead and L2DRAW rates are estimates. The LDRAW rate is fixed unless
varied on a VARY statement.
PROD OVHD(L1)=LD1, 121, L2DRAW=LD2, 1, 50, &
LDRAW=SD, 5 100, BTMS=BT
Table 12.4-1
Available Chemdist Specifications
Available Product and Internal Stream Specifications:
RATE(basis,unit)
RATE(basis,unit), COMP=i,j
FRACTION(basis), COMP=i,j
PERCENT(basis), COMP=i,j
PPM(basis), COMP=i,j
Additional Specifications
TEMP(unit), TRAY=tno
REFLUX(basis, L or L1 or L2)
RRATIO(basis, LD or LF or L1 or L2)
DUTY(idno, unit),
Available <operators>
RATIO (alias DIVIDE)
Table 12.4-2
Defaults for VLLECHECK Statement
It is often desirable to initially designate a majority - if not all - trays below the condenser
as VLE trays, even when it is known that VLLE trays exist. The CHEMDIST algorithm
uses considerably more CPU time when it has to rigorously solve for two liquid phases on
each tray. As VLLE trays are added, the converged solution profiles from the VLE case
are used as the starting point for the new case. Convergence stability and CPU time are
often improved by this technique.
CHECK When set to ON, PRO/II will verify that each tray designated by the
user as a VLE tray does not, in fact, contain two liquid phases. A
warning will be issued for each tray on which PRO/II finds two liquid
phases. The VLLE METHOD set used for this test is given by the SET
entry.
TRAYS This entry controls how many trays will be switched, one tray at a time,
from VLE to VLLE. When VLLE trays are found in the CHECK=ON
test, the first tray from the top that fails the test will be switched to the
VLLE set. The column will then be re-solved.
If the VLLECHECK statement is not present, the default value for this
is 0 (i. e., automatic re-solving is turned off). When the VLLECHECK
statement is present, the default is the number of column trays (i. e.,
the algorithm will continue to solve until every tray that proves to
contain VLLE is in fact solved with a VLLE METHOD set).
It may be desirable to limit the number of trays that can be switched
from VLE to VLLE. For example, a column with a large number of
trays may require an inordinate amount of CPU time if VLLE trays are
found when none are anticipated or desired.
SET The setid entry is the METHOD set to be used by CHEMDIST for
VLLE testing and column re-solving. This set must support VLLE.
When the column is initially given at least one METHOD set that
supports VLLE, the default setid will be the VLLE set closest to the top
of the column. For most azeotropic distillation models, this will be the
condenser METHOD set. The setid entry does not overwrite the setid
given on the METHOD statements for trays that are initially specified
ITERATIONS=10, HVARYFLAG={0,1}
Examples
1: Methanol Dryer
A water/methanol stream is to be split in a 15 tray column operating at 760 mmHg. The
bottoms must have a composition of 0.015% methanol, and the overheads must contain
2.0% water. The CHEM initial estimate generator is used with an estimated reflux ratio of
1.5.
Figure 12.4-3
COLUMN UID=1,NAME=COLUMN
PARAM TRAY=11,CHEM
FEED 1,5,SEPARATE
PROD OVHD(L1)=1OL1,16,L2DRAW=1L2,1,14, &
BTMS=1BT
CONDENSER TYPE=BUBB,PRES=15.5
DUTY 1,1/2,11
VARY DUTY=1,2
PSPEC TOP=15.5,DPCOL=0.5
PRINT ITER=NONE, PROP=PART
ESTI MODEL=CHEM
SPEC STREAM=1BT,RATE(M),VALUE=968.7
SPEC TRAY=2,PHASE=L,RATE,VALUE=16.7961
METHOD SET=SET02,1/SET01,11
DISTILLATION
Keyword Summary
Unit Operation Category (Column Unit)
Assigning Reaction Sets to Column Trays (required)
RXTRAY REFERENCE=referenceset, {LOCAL=localset,
KPROCEDURE=procedureid,
KSUBROUTINE=subroutineid,} TRAY=i, {j}/ ...
PRESSURE or FUGACITY or
MOLEFRACTION or MASSFRACTION,
LIQUID=CONCENTRATION or FUGACITY or ACTIVITY or
U U
MOLEFRACTION or MASSFRACTION
KORDER i, value/....
PRESSURE or FUGACITY or
MOLEFRACTION or MASSFRACTION,
LIQUID=CONCENTRATION or FUGACITY or
U U
Beginning with v5.0, the same reaction data section defined in section 10.8 is
used for all reaction units in the entire flowsheet.
Restrictions
In the current release of PRO/II, reactive distillation is available ONLY with the
CHEMDIST or LLEX column algorithms. Users wishing to use the reactive distillation
feature should be familiar with the general distillation facilities, described in Sections 12
and 12.1 of this manual. Additionally, users should become well acquainted with the
CHEMDIST and LLEX algorithms described in Section 12.4, Chemdist Algorithm, and
Section 12.9, Liquid-Liquid Extraction.
Some restrictions apply to the use of reactive distillation:
No liquid-phase reactions are allowed on stages having two liquid phases with the
CHEMDIST algorithm.
Solids cannot participate in any reactions.
No liquid-solid (LS) components are allowed.
No electrolyte thermodynamic methods are allowed (see ELDIST).
No mixed electrolyte/non-electrolyte thermodynamics are allowed.
Nonmolecular components are not allowed.
Features
Most of the major features of reactive distillation are summarized below. The Input
Description and Examples later in this section provide more complete information.
The RXTRAY statement assigns sets of reactions, defined in the Reaction Data Category,
to trays in the distillation column.
Mixed simultaneous kinetic, conversion, and equilibrium reactions, in the liquid and vapor
phases, may occur on any tray(s).
The CHEMDIST or LLEX column may be configured with a single tray, and in this
configuration may serve as a two-phase reactor model.
Input Description
Assigning Reaction Sets To Column Trays (required)
RXTRAY REFERENCE=referenceset, {LOCAL=localset,
KPROCEDURE=procedureid,
KSUBROUTINE=subroutineid,} TRAY=i, {j}/ ...
The RXTRAY statement is the only statement that assigns reaction sets to distillation
trays. Reactive distillation cannot occur unless at least one reaction set is assigned to at
least one tray in the column.
Beginning with v5.0, only the volumes of trays(i) specified in the LVOL and VVOL
statements have non-zero (or user-specified) values. Reacting volumes of all other trays
are zero.
For heterogeneous reactions, the reaction phase and volume are defined as
specified (or defaulted) in the PHASE keyword after respective reaction, e.g., if KPHASE
DEFAULT=L is specified for a heterogeneous reaction, then the reaction phase would be
liquid and the total conversion would be based upon the supplied value of LVOL.
EQITER If any equilibrium reactions are present, this specifies the number of
calculational iterations used to scale up the correction factor from the
fraction specified by EQINIT to unity.
EQINIT This factor scales down the error computed for the equilibrium reactions in
the first EQITER iterations. This introduces the effect of the equilibrium
constant over the first few iterations, and so avoids very large changes to
the distillation column variables (e.g., mole fractions, etc.)
VITER VITER specifies the number of calculational iterations used to scale up the
tray volumes from the initial value (optionally supplied by VINIT) to the
actual volumes specified by the user on the LVOL and VVOL statements.
VINIT VINIT specifies the initial fraction of the actual volume used to compute the
reaction rate for the first iteration. During the first VITER iterations, the
volume used by the program is ramped from (actual volume * VINIT ) to the
actual volume.
PRO/II does not support vapor phase only components in the Component Data
Category of input, so the user must supply “dummy” liquid phase properties (as
appropriate) for any NONLIB components declared on the RXPOLYMER statement.
The NONVOLATILE statement may be used to specify the amount or fraction of a single
nonreacting component present in the initial liquid charge of a boiling pot reactor. Often,
this is a liquid catalyst for the reaction. The component appears only on the bottom tray of
the column, and must not participate in any reactions that occur.
COMPONENT This entry must appear to identify the single nonvolatile species. i
refers to the component number assigned in the Component Data
Category of input.
CHARGE One of these entries is required to specify the amount of the
or nonvolatile species present in the reactor. CHARGE may be used to
FRACTION specify the quantity of the species present on either a mole or weight
(mass) basis. Alternatively, FRACTION can specify the amount of
nonvolatile component as a fraction of the total liquid phase present in
the reactor.
SET This entry is required to identify the reaction set of the reaction to
be altered by the DEFINE statement. The setid argument is the
set ID of a LOCAL set defined in this unit operation.
RXN This entry is required to identify the reaction to be altered by the
DEFINE statement. The reactionid argument is the reaction ID of
a local reaction defined in the selected reaction set.
COMP The COMP entry is required when defining a stoichiometric
coefficient, kinetic order or equilibrium exponential factor;
otherwise, COMP is not needed.
<property> This identifies the reaction property being defined, and may be
any keyword listed in Table 12.5-1. This entry is required.
Examples: DEFINE SET= SET1, REACTION=RXN1,PEXP, AS, 200.
DEFINE SET= SET2, REACTION=RXN1,PEXP, AS &
CALC=CAL1, RESULT(1)
The conversion is based upon the total (combined liquid and vapor) phase
composition, i.e., not liquid or vapor phase alone.
UNIT OPERATIONS
CALCULATOR UID = CAL1
PROCEDURE
R(1) = 0.90
R(4) = 0.10
RETURN
COLUMN UID = RXD1
PARAM TRAY = 10, CHEMDIST= 30
FEED FEED, 3
PROD OVHD(M)= TOP, 300, BTMS(M)= BOTM, 699.998, SUPERSEDE=ON
COND TYPE= BUBBLE, PRES= 1.013
DUTY 1,1,,CONDENSER
DUTY 2,10,,SIDEHC2
PSPEC TOP= 1.0135
PRINT PROPTABLE=PART
ESTI MODEL= CHEM, RRATIO(L)=4
SPEC ID=COL1SPEC1, STREAM=TOP, RATE(KGM/H),TOTAL,WET, &
VALUE=300
UNIT OPERATIONS
CALCULATOR UID=RXCA
DEFINE P(1) AS STREAM=1,COMP=5,RATE (LBM/H), WET
PROCEDURE
R(1) = P(1)*0.1
RETURN
COLUMN UID=T1,NAME=LLEX
PARAM TRAY=4,LLEX=50,DAMP=0.6
FEED 1,1/8,4
PROD OVHD (L1,M) =3, 64, BTMS (M) =2,162 , SUPERSEDE=ON
PSPEC PTOP=60,DPCOL=10
PRINT PROPTABLE=PART
TOLERANCE COMPONENT=0.0005, EQUILIBRIUM=0.0005
LVOL 1,1
RXTRAY REFE=SET01,LOCAL=LSET01,TRAYS=1,1
RXSET LOCAL=LSET01
ALGORITHM
PRO/II’s Enhanced IO (EIO) algorithm is a remarkably fast, versatile and robust
calculational procedure that combines the speed of the IO algorithm with several useful
features previously only available in the SURE algorithm, i.e:
Water decant on any tray
Total draws
A listing of all valid Enhanced IO algorithm keywords is given below in the Keyword
Summary. Features unique to the Enhanced IO algorithm are described in more detail
below under the Input Description. Features common to all algorithms are given in Section
12.1, Column Input.
Keyword Summary
Unit Identification (required – Section 12.1)
COLUMN or SIDESTRIPPER or SIDERECTIFIER UID=uid, {NAME=text}
SUPERCEDE=ON or OFF
U U
BAFFLE=NO or YES,
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or U U
VFRAC(M or WT or LV)=value or U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
{PRES(unit)=value},
{RATE(M or WT or LV)=value},
U U
DT(unit)=value},
REFINING or CHEM
{CTEMP(unit)=value, TTEMP(unit)=value,
BTEMP(unit)=value, RTEMP(unit)=value},
RRATIO=3.0 or REFLUX=value
WET or DRY, U U
WET or DRY, U U
RRATIO(M or W or LV or GV), U U
WET or DRY, U U
PASSES=1, SF=1.0,
SPACING(TRAY, IN)=24.0,
DIAMETER(TRAY, unit)=value,
THICKNESS(DECK,GAUGE)=14,
THICKNESS(VALVE, GAUGE)=16,
{NUMBER(VALVES or CAPS)=value},
{SPACING(CAP,unit)=value},
DIAMETER(VALVE or SIEVEHOLE or CAP, unit)=defvalue,
HOLEAREA(PERCENT)=12.0,
MATERIAL(VALVE)=SS,
WEIR(unit)=defvalue, DCC(unit)=defvalue,
DCW(unit)= defvalue1,...,defvalue8,
B B B B
{DPCALC=1.0}
PACKING (Random packing)
SECTION(idno)=tno1, tno2, TYPE=itype,
SIZE(unit)=value, {FACTOR(unit)=value},
{HEIGHT(unit)=value or HETP(unit)=value},
HMETHOD=FRANK, DPMETHOD=NORTON,
{DIAMETER(unit)=value},
DPSECTION(unit)=value or DPPACK(unit,unit)=value},
FLMETHOD or
U U
FLOOD(unit)=value, DESIGN(unit)=value,
FLAPPROACH=0.5
or
CSMETHOD,
CSMAX(unit)=value, and/or CSDESIGN(unit)=value,
CSAPPROACH=0.88
PACKING (Structured packing)
SECTION(idno)=a, b, SULZER=itype,
{HEIGHT(unit)=value or HETP(unit)=value},
{DIAMETER(unit)=value}
NET The net vapor or liquid flow from one tray to the next. For
example, NET(L) specifies the pseudo stream to be the liquid
leaving tray “tno”, not including product or pumparound
draws.
TOTAL The total vapor or liquid flow leaving a tray, including product
and pumparound draws.
PA The liquid or vapor draw to a pumparound. tno1 is the draw
tray number, and tno2 is the return tray.
TSFEED The feed to the reboiler. This stream has the composition,
temperature, and pressure of the liquid at the surface of the
sump. To simulate a rigorous thermosiphon reboiler using
HXRIG, the static head must be added via a flash.
TSLIQUID The liquid stream from the reboiler. This is the liquid stream
obtained by flashing the reboiler return stream at the column
conditions on stage N-1.
TSVAPOR The vapor stream from the reboiler. This is the vapor stream
obtained by flashing the reboiler return stream at the column
conditions on stage N-1.
Column Merging
The IO and Enhanced IO algorithms are the only PRO/II distillation methods capable of
merging side columns and main-fractionator together for simultaneous solution. The
advantages to this are
faster execution
more flexible product specifications
For example, if it is necessary to have both a D86(5%) specification as well as a
D86(95%) specification on a sidestripper product, the SURE algorithm requires a multi-
variable controller (MVC) unit operation wrapped around the main-fractionator/sidestripper
pair of columns. The Enhanced IO algorithm can solve this problem by specifying the
products directly. Furthermore, the IO Column will solve using substantially less computer
time than the SURE column iterative calculation with the MVC.
To take advantage of column merging, the following conditions must exist:
Both the COLUMN and SIDESTRIPPER/SIDERECTIFIER must use the IO method.
For a SIDESTRIPPER, at least one main-fractionator LDRAW product must feed the top
tray of the SIDESTRIPPER. The overhead vapor must return to the main-fractionator.
Condensers are not permitted on SIDESTRIPPERS.
For a SIDERECTIFIER, at least one main-fractionator VDRAW product must feed the
bottom tray of the SIDERECTIFIER. The bottom liquid must return to the main-
fractionator.
Thermosiphon Reboilers
The Enhanced IO algorithm supports the modeling of thermosiphon reboilers with and
without baffles by using the REBOILER statement. In this way, the reboiler is modeled as
Limitations
Except for the decantation of pure water from the condenser, the Enhanced IO algorithm
does not support two liquid phases. Thus, the KVALUE(LLE) designation in the
METHODS setid is ignored. To rigorously solve three-phase distillation problems, use the
CHEMDIST.
Input Description
Section 12.1, Column Input, describes most of the keyword input for the IO algorithm. The
exceptions to this are the PARAMETER and REBOILER statements which contain
features unique to the Enhanced IO algorithm, the FZONE statement for flash zone
calculations and the TBP cutpoint specification option. All of these are described below.
Special notes on Enhanced IO keyword input concerning products, column pseudo
products, pumparounds, composition estimates, and performance specifications are also
given below.
The PARAMETER statement sets the number of trays in the column, the solution
algorithm, and a number of parameters relating to the solution algorithm chosen.
TRAY This entry is required and specifies the number of trays in the
column, including the condenser and reboiler (if present).
Anywhere from one to unlimited trays are allowed. PRO/II
requires the theoretical number of trays, unless the tray
efficiency feature is invoked, in which case the actual number
of trays is entered.
ENHANCEDIO The Enhanced IO algorithm is selected. Supplying an integer
argument specifies the number of iterations. The default is 15
Enhanced IO iterations.
FREEWATER This option is relevant only for water-hydrocarbon systems. In
such systems, excess free water is normally allowed to appear
only at the condenser or tray 1 and is automatically decanted.
When using the FREEWATER option, a separate free water
phase may exist on any or all trays in the column. In the latter
case, free water can be removed separately on trays with
designated water traps as WATER product streams.
Each FZONE statement represents one theoretical stage in the column. The user
should revise the number of theoretical stages to account for each flash zone defined.
TRAY This required keyword specifies the location of the feed to the
flash zone.
HEATEREFFI This optional keyword supplies the fired heater efficiency as a
fraction less than or equal to 1.0. The fired duty of the heater
is equal to the absorbed duty (i.e., equal to the tray duty as
calculated by the column) divided by the heater efficiency. A
default value of 0.85 is used if a value is not supplied.
LBYPASSFRC, These keywords specify the fraction of liquid and vapor
VBYPASSFRC bypassing the flash zone. The values supplied should be
between 0.0 and 0.999. A default value of 0.99 is used for
LBYPASSFRC, while a default value of 0.99 is used for
VBYPASSFRC if these keywords are not provided.
BAFFLE=NO or YES, U U
{RATE(M or WT or LV)=value or
U U
LFRAC(M or WT or LV)=value or
U U
VFRAC(M or WT or LV)=value or
U U
TEMP(unit)=value or DT(unit)=value},
{LFEST=value, VFEST=value, RTEST=value}
The REBOILER statement is used to define thermosiphon reboilers with or without baffles
and kettle reboilers. Only one reboiler per column is allowed. The reboiler must be
reboiler sump stage can be thought of as a mixer followed by an adiabatic flash. The
mixer combines the spillover from the bottoms sump, Lo, with the liquid downflow from the
Performance Specifications
COLUMNS and SIDESTRIPPERS or SIDERECTIFIERS are merged and solved as a
single column. The number of SPEC statements may differ from the number of variables
on the VARY statement for each individual column, but the total number of SPEC
statements must equal the total number of variables for the entire merged column.
Example
1: In this example, the free water can be drawn off of every tray, wherever it naturally
forms.
TITLE PROJECT=P2V5BETA, PROBLEM=ENHANCED, USER=SIMSCI,
DATE=AUG97
DIME SI, TEMP=F, PRESS=PSIA, TIME=SEC
TOLERANCE STREAM=0.001
SEQUENCE SIMSCI
CALCULATION TRIALS=100, RECYCLE=ALL
DUMP COLU=12
COMPONENT DATA
LIBID 1,H2O/2,C2/3,C3/4,IC4/5,NC4/6,IC5/7,NC5
THERMODYNAMIC DATA
METHOD SYSTEM=PR
WATER SOLUBILITY=KERO
STREAM DATA PROPERTY STREAM=S1, TEMPERATURE=100, PRESSURE=300,
PHASE=M, &
COMPOSITION(M)=1,50/2,50/3,50/4,50/5,50/6,50/7,50
UNIT OPERATIONS
COLUMN
PARA TRAY=5, ENHANCED, FREEWATER
FEED S1,3
PROD OVHD=S18,50,BTMS=S15,LDRAW=S16,1,140, &
WATER=S4,1,8 /S6,2,6 / S8,3,34/S12, 4,1/S14,5,1
PRES 1,200/5,200
CONDENSER TYPE=MIXED
VARY DUTY=1,2,DRAW=S16
SPEC STREAM=S18,RATE,VALUE=50
SPEC STREAM=S15, RATE, VALUE=150
SPEC REFLUX, VALUE=300
PRINT ITER=ALL
LIQU 1, 300/2, 275 / 3, 670 / 4, 700 / 5, 150
VAPO 1, 50 /2, 450 / 3, 440 / 4, 520 / 5, 550
TEMP 1, 93 / 2, 150 / 3, 175 / 4, 200 / 5, 230
END
HYDRAULICS
The IO, SURE, and CHEMDIST distillation algorithms fully support tray hydraulic
T T
calculations. These include tray sizing and rating calculations for trayed columns, and
structured or random packed column pressure drop and HETP calculations. The keyword
input described below is included as part of the COLUMN input when hydraulic
calculations are requested.
Note that the rate-based RATEFRAC® Software algorithm requires at least one section ofP P
tray rating, tray sizing, or packing to invoke non-equilibrium calculations. Trays or packed
segments that are not included in a sizing, rating, or packed section are treated as
equilibrium stages by RATEFRAC® routines. P P
Keyword Summary
Tray Sizing and Rating (optional)
TSIZE { SECTION(idno) = segno1, segno2,} B B B B
or
TRATE { SECTION(idno) = segno1, segno2,} B B B B
DIAMETER(TRAY, uflen)=value,
SPACING( TRAY or CAP, inch) = 24.0,
U U
and (for both TSIZE and TRATE, all the following are optional.)
{ DIAMETER(VALVE or SIEVEHOLE or CAP, uflen) = defvalue,
PASSES = 1, SFACTOR = 1.0, FFACTOR = 100.0,
THICKNESS(DECK, GAUGE or uflen) = 14, U U
1
P P DPCALC is required to access the results of tray hydraulic calculations
(e.g., downcomer backup) from a controller or other unit operation.
FLAPPROACH=0.5
or
CSMETHOD, { CSMAX(uvelo) = value, CSDESIGN(uvelo) = value,
CSAPPROACH = 0.88 }
USID = text*72, CASE = text*72 }
®
Structured Packing (not for RATEFRAC Software)
P P
SULZER = type, or
FLEX=type, or KGWIREGAUZE=type, or INTALOX=type,
{ HEIGHT(uleng) = value or HETP(uleng) = value,}
{ DIAMETER(uflen)=value or CAPACITY=value (>0.0 to 100.0) or
FLAPPROACH=value (>0.0 to 1.0) }
HEIGHT(uleng) = value
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = 0.5,
BASESEG = segno1 } U UB UB
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
®
RATEFRAC routine Structured Packing
P P P P
FLEX = type,
or INTALOX = type,
or KGWIREGAUZE = type,
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = value,
BASESEG = segno1 } U UB UB
HEIGHT(uleng) = value
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
and flooding calculations for sieve and bubble cap trays are estimated by derating valve
tray calculations by 5 and 20 percent respectively. Other tray hydraulic information is
2
determined for sieve trays using the methods of Fair and for bubble caps with the
P P
3
methods of Bolles . P P
Columns may be divided into a maximum of 70 sections when running PRO/II via
keywords.
For rating calculations, within each section all trays are of the same type with the same
mechanical configurations. Each section, however, is rated independently from any
other section and may consist of trays of an entirely different type and mechanical
configuration. A value for tray diameter (i.e., DIAMETER( TRAY ) = value) is required
when requesting tray rating calculations.
For sizing calculations, the diameter of each tray is adjusted to meet the flooding factor
criterion. The entire section is then re-rated at the largest required diameter. As with
rating calculations, different sections may consist of trays of an entirely different type
and mechanical configuration. A value for tray diameter (i.e., DIAMETER( TRAY ) =
value) is not allowed when requesting tray sizing calculations.
All tray calculations require actual liquid (flowing) densities. The user is required to enter
pure component liquid density data for all non-library components. In addition, sieve tray
calculations require viscosity data. Absolute viscosities for all non-library components
must be entered and a viscosity (or transport) method chosen on the METHODS
statement in the Thermodynamic Data category.
Different sections may contain either trays or packing within the same column. This is
especially useful in determining the overall column pressure drop, where part of the
column has been de-bottlenecked by replacing trays with packing.
References:
1. Glitsch, Inc, Ballast Tray Design Manual, Bulletin No. 4900, 3rd Edition.
2. Smith, B.D., Design of Equilibrium Stage Processes, Chapter 15-Tray Hydraulics:
Perforated Trays, McGraw-Hill (1963).
3. Ibid., Chapter 14- Tray Hydraulics: Bubble Cap Trays.
In addition to using all the tray sizing and tray rating statements available to all other
®
column models, the RATEFRAC Software algorithm requires additional data. This data is
P P
supplied by using the additional keywords that are identified as applicable only to the
RATEFRAC® Software algorithm.
P P
®
RATEFRAC P P is a trademark registered to KOCH-GLITSCH
®
{ DPCALC = 1.0 } (not supported by RATEFRAC Software) P P
Tray Rating
TRATE { SECTION(idno) = segno1, segno2,} B B B B
DIAMETER(TRAY, uflen)=value,
SPACING( TRAY or CAP, inch) = 24.0,
U U
®
{ DPCALC = 1.0 } (not supported by RATEFRAC Software) P P
(The following additional keywords apply only to the RATEFRAC® Software algorithm, and P P
are available for both tray sizing and tray rating except ESTDIAM which is for sizing only.)
{ BASESEGMENT = segno, TRAYSPERSEGMENT = 1 (or 2), U U
equilibrium segments.
VALVE or Designates the tray type. VALVE and V1 are synonymous and designate a
V1 or V1 valve (a general purpose standard size unit for deck thickness up to
V4 or 3/8"). V4 specifies V4 valve trays (a venturi-shaped orifice opening in the
SIEVE or tray floor for pressure drop reduction with maximum permissible deck
CAP thickness of 10 gage). SIEVE and CAP specify sieve and bubble cap trays
respectively.
PASSES The number of flow paths (passes) in each section. 1 to 5 passes are
allowed for TRATE. For TSIZE, 1, 2 or 4 passes are allowed, see Figure
12.7-1. The default number of passes is whatever is required to keep the
(liquid gpm rate)/(downcomer width) ratio below 8.0, as per Glitsch Ballast
Tray Design Manual (see page 3 for reference).
For TSIZE, PRO/II determines the default number so the ratio of
(liquid gpm rate)/downcorner width) is below 8.0. In RATEFRAC® P
SPACING The center-to-center tray spacing in each section. The default is 24 inches
(TRAY) (English units) or 610 mm (metric, SI).
DPCALC PRO/II, by default, executes tray sizing and rating calculations at output
time. If DPCALC is present, these calculations are performed during
flowsheet solution calculations. This enables the pressure drop to be
reflected in the column solution and gives the controller access to the
flooding factor. Not available when using RATEFRAC® Software.
P P
For DPCALC values greater than 0.0, the real number argument is the
number to divide the calculated pressure drop per theoretical tray to adjust
for tray efficiency. For example, a column is modeled as having 8
theoretical trays in a section, but in fact has 10 actual trays. Set
DPCALC=0.8 to adjust to the actual pressure drop. If DPCALC is set to
0.0, tray sizing and rating calculations are executed at calculation time, but
the column pressure profile is not updated.
Service SFACTOR
Non-foaming systems 1.00
Fluorine systems 0.90
Moderate foaming, e.g., oil absorbers, amine and 0.85
glycol regenerators
Heavy foaming, e.g., amine and glycol absorbers 0.73
Severe foaming, e.g., MEK units 0.63
Foam stable systems 0.30
The default is 1.0
computed for this designated segment. That computed diameter is then applied
to all other segments in the section. If omitted, the calculated diameter is the
largest diameter resulting from performing sizing calculations on every segment
in the section.
The following entries are valid for tray rating (TRATE) only:
DIAMETER The diameter of the tray (column diameter). Defaults to units of fine
(TRAY, uflen) length.
THICKNESS The deck thickness. The units default to gauge (English) or
(DECK, uflen) millimeters (metric, SI). Valid entries are listed in Table 12.7-3. Units
of fine length may be used as an alternative to gauge.
Table 12.7-3
Deck Thickness
Gauge Inches Millimeters
3 0.250 6.35
10 0.134 3.40
12 0.104 2.64
14* 0.074 1.88
* default
10 0.134 3.40
12 0.104 2.64
14 0.074 1.88
16* 0.060 1.52
18 0.050 1.27
20 0.037 0.94
* default
Table 12.7-5
Allowable Valve, Sieve Hole and Bubble Cap Diameters
inches millimeters
Valve 1.875 47.625 Default
Sieve 0.50 12.7 Default for any size seive
Caps 3 76.2 Default when Dcol 48 inches
4 101.6 Default when Dcol > 48 inches
6 152.4
HOLEAREA(PCT) Valid only with SIEVE trays, this is the total effective area of sieve
holes given as a percentage of the active area. The default is 12
percent.
MATERIAL(VALVE) Valve construction material. Allowable entries arelisted in table 12.7-7.
WEIR Weir height above tray. The default is 2 inches (50.8 mm) for valve and sieve
trays. The default values for bubble cap trays are shown in table 12.7-8.
Table 12.7-8
Default Values for Weir Height Using Bubble Cap Trays
Cap Diameter Weir Height
inches millimeters inches millimeters
3 76.2 2.75 69.85
4 101.6 3.00 76.20
6 152.4 3.25 82.55
Table 12.7-9
Format of Downcomer Data
Downcomer Top of Bottom of Valid Number
Width Downcomer Downcomer of Passes
Side value1
B B value5 B B 1,2,3,4,5
center value2
B B value6 B B 2,4
off-center value3
B B value7 B B 3,4,5
off-side value4
B B value8 B B 5
Examples
12.7-1. Tray Sizing Example
A column with eight theoretical trays is to be sized for valve trays spaced 20 inches
apart on trays 2 through 4. The actual pressure drop will be adjusted, assuming that
there are 4 actual trays in this section. Trays 5 through 7 are sieve trays using the
default spacing. The pressure drop is adjusted to reflect 4 actual trays. A system factor
of 0.9 is applied.
COLUMN UID=1
PARAM TRAY=8
FEED FD,5
... additional COLUMN input (not shown) ...
TSIZE SECTION(1)=2,4, VALVE, SPACE(TRAY,IN)=20, DPCALC=0.75
TSIZE SECTION(2)=5,7, SIEVE, SF=0.9, DPCALC=0.75
The IO, Enhanced IO, SURE, and CHEMDIST algorithms support simulation of
distillation using conventional random tower packings. Pressure drops are rigorously
calculated using the method of Tsai4 , Norton Co5 or KOCH-GLITSCH. The flood point
P P P P
be calculated based on the Norton correlations5. Calculations are based on the total
vapor leaving a packed stage and the total liquid leaving a packed stage.
The column may be divided into a maximum of 70 sections through keyword files.
Data for several types of random packing are contained in the program. For these
packing types, the user need only supply the packing size. For other types of random
packing, the packing factor must be supplied as determined from some suitable user
data. The packing factors built into the program are intended for use with the Norton
correlation or the KOCH-GLITSCH internal correlations. No packing factors are
published for the Tsai correlation, so Norton packing factors are used.
Rating or Design
Calculations can be performed either with a fixed diameter operating in a “rating” mode,
or with some performance limitation imposed on the simulation requiring the calculation
of the diameter, thereby operating in a “design” or “sizing” mode. Limitations may be
imposed based on:
A maximum pressure drop over a packed section.
A maximum pressure drop per foot of packing
A maximum approach to flooding.
A maximum approach to ‘efficient capacity’.
The pressure profile is defined by the user in the usual way using either the
PRESSURE statement or the PSPEC statement (See Section 12.1). This fixes the
pressure drop across the condenser and reboiler (if present), fixes the pressure drop
across trays for which no hydraulic calculations are requested, and provides an initial
estimate of the pressure profile for the column.
As calculations approach solution, the column pressure drop profile is updated. This
procedure is repeated until convergence of both the pressure profile and the usual
distillation equations are achieved. Updating of the pressure profile usually occurs two
or three times. As a result, packed columns converge in approximately three of four
more iterations than are required for the same column without packing.
routines)
P
The number of theoretical stages must be defined on the PARAMETER statement in the
usual way. If the user defines the height of packing, then the HETP is calculated as the
packed height divided by the number of packed stages (segments). If the height of
packing is not defined, then the program either uses the supplied HETP value or the
HETP calculated from Frank’s “rule-of-thumb” and calculates the height based on the
number of theoretical stages and this HETP value.
PRO/II never alters the number of stages entered on the TRAY entry of the
PARAMETER statement.
Data Requirements
Packed column calculations require actual (flowing) liquid and vapor densities. Density
data must be provided for all non-library user supplied components. Liquid viscosity is
required, but if a method is not explicitly defined by the user, the viscosity contribution to
the correlation is omitted. Surface tension is required when the Norton method is used
for efficient capacity and HETP calculations.
has additional data requirements for solving packed sections. These data include:
Void fraction of the packing
Built-in specific area of the packing (expressed as area per volume)
Critical surface tension of the packing material
RATEFRAC® routine is a non-equilibrium model that does not utilize theoretical trays.
P P
As a consequence, it does not support any of the efficiency options normally available in
equilibrium models. These include the keywords CSMETHOD, CSMAX, CSDESIGN
and CSAPPROACH, among others.
involving it are available. These options include the keywords HETP and HMETHOD.
After RATEFRAC® software solves, it computes HETP values for reporting purposes
P P
only.
to characterize each random packing. This data is not required by the equilibrium-based
algorithms in PRO/II. Data for random packing types and sizes have been licensed from
®
KOCH-GLITSCH. These are the only packings supported by RATEFRAC Software. P P
or FLAPPROACH=0.5
CSMETHOD, { CSMAX(uvelo) = value, CSDESIGN(uvelo) = value,
CSAPPROACH = 0.88 }
{ USID = text*72, CASE = text*72 }
HEIGHT(uleng) = value,
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = 0.5,
BASESEG = segno1 } U UB UB
{ FACTOR(FT or M) = value,}
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
segno2 B B
TYPE The packing type used in this section. For all algorithms other than
®
RATEFRAC Software, select a packing type fromTable 12.7-10 or 12.7-
P P
11 It is used along with the packing size to determine the packing factor by
table lookup. If, not given, the packing factor must be provided. For
RATEFRAC® Software, select a packing from Table 12.7-11.
P P
SIZE The nominal packing diameter. For any equilibrium stage model, chose
(uflen) one of the sizes in Table 12.7-10 or 12.7-11. Equivalent IMTP sizes also
are shown in Table 12.7-10. The SIZE and TYPE entries determine the
packing factor if the packing factor entry is omitted. The dimensional units
class is fine length.
For RATEFRAC® Software, select a size only from Table 12.7-11.
P P
®
RATEFRAC Software requires a SIZE entry.
P P
DIAMETER Specifies the diameter of this packed section. The dimensional units class
(uflen) if fine length (inch, mm, etc.) This key word acts as a toggle switch. It is
required for rating calculations. It is not allowed for sizing (design)
or calculations.
ESTDIAM Used only for design (sizing) calculations to provide an initial estimate of
(uflen) the diameter of the packed section. It cannot be used when the
DIAMETER entry is present. (Used in RATEFRAC® Software, ignored by
P P
other models.)
BASESEG Specifies a single segment in a section as the basis for diameter
calculations for RATEFRAC® Software only. Observing the DMIN
P P
Table 12.7-10
Random Packing Packing Factors for Equilibrium Models (not RATEFRAC® Software) P P
Random (in) 0.25 0.375 0.5 0.625 0.75 1.0 1.25 1.5 2.0 3.0 3.5
Packing (mm)
TYPE Type (size) 6.3 9.5 12.7 15.9 19 25.4 31.7 38.1 50.8 76.2 88.9
#15 #25 #40 #50 #70
R
1 IMTP P P
51 41 24 18 12
(Metal)
167 135 78.7 59 39.4
TM
2 Hy-Pak P P
45 29 26 16
(Metal)
148 95 85.3 52.5
R
3 Super Intalox P P
60 30
Saddles
(Ceram)
197 98,4
4 Super Intalox 40 28 18
Saddles
(Ceram)
131 92 59
5 Pall Rings 95 55 40 26 17
(Plastic)
312 180 131 85 55.8
6 Pall Rings 81 56 40 27 18
(Metal)
266 184 131 89 59
7 Intalox 725 1000 580 145 92 52 40 22
Saddles
(Ceramic)
2379 3281 1903 476 302 171 131 72
TM
P Hy-Pak is a trademark of Norton Company.
P
TYPE Random (in) 0.625 1.0 1.5 2.0 3.0 3.5 4.0 One
Packing (mm)
Type (size) 15.88 25.4 38.1 50.8 76.2 88.9 101.6 Size
#15 #25 #40 #50 #70
12 Snowflake 28.35
(Plastic) 93
13 Cascade Mini- 74.98 78.33 31.09 24.08
Ring (metal) 246 257 102 79
14 Cascade Mini- 49.99
Ring (plastic) 164
15 FlexiRing 100.28 60.96 39.014 29.87 17.68
(Metal) 329 200 128 98 58
16 FlexiRing 87.17 62.48 36.27 30.175 25.60
(Plastic) 286 205 119 99 84
17 Super Intalox 62.18 31.70 23.47
Saddles(Plastic) 204 104 77
18 Flexi Saddles 61.39 45.72 27.43 19.385
(Ceramic) 201.4 150 90 63.6
19 Koch-Glitch 68.3 46.025 31.09 18.59
IMTP
(Metal) 224 151 102 61
HEIGHT The height of the packed section. Default units are FT (English) or M
(uleng) (metric, SI). If not given, this value is determined from the number of
Or theoretical stages in the section and the supplied or calculated HETP
®
value. Required in each packed section when using RATEFRAC P
Software.
P
HETP The height of the packed section. If not given, this value is determined
from the number of theoretical stages in the section and the supplied or
calculated HETP value. HEIGHT and HETP are mutually exclusive.
®
by RATEFRAC Software.
P P
by RATEFRAC® software. P P
FLAPPROACH.
FLMETHOD In the absence of any other flood method or Norton method
keywords, this keyword selects the approach to flood as the
design and rating criteria. FLMETHOD is default if no method
®
is given. Not allowed with RATEFRAC software. P P
VOIDFRAC The fraction of the packing volume that is void space. Values
(ufrac) should be in the range 0.6 to 0.9999
LIQMIXING The method for liquid mixing. Options are COMPLETE (the
default), LINEAR, andLOG (logarithmic). Used only by
®
RATEFRAC Software.
P P
VAPMIXING The method for liquid mixing. Options are COMPLETE (the
default), LINEAR, andLOG (logarithmic). Used only by
RATEFRAC® Software.
P P
column model support structured packing sizing (design) and rating calculations. The IO,
Enhanced IO, SURE, and CHEMDIST algorithms utilize equilibrium stage models and
®
HETP to simulate packed sections of theoretical stages. RATEFRAC Software uses
P P
supports most (but not all) of the features available for the equilibrium stage models.
RATEFRAC® Software also requires additional data that is not supported by the
P P
Theoretical Stages
The number of theoretical stages must be defined on the PARAMETER statement in the
usual way. If the user defines the height of packing, then the HETP is calculated as the
packed height divided by the number of packed stages. If the height of packing is not
specified, then PRO/II uses the user-supplied HETP value and calculates the height
based on the number of theoretical stages and this HETP value.
Rating or Design
Calculations may be performed either with a fixed diameter in a “rating” mode, or with
percentage capacity or approach to flood specified in a “design” or “sizing” mode.
Pressure Profiles
The pressure profile is defined in the usual way using either the PRESSURE statement,
or the PSPEC statement (see Section 12.1, Column Input). This fixes the pressure drop
across the condenser and reboiler (if present), fixes the pressure drop across trays for
which no hydraulic calculations are requested, and provides an initial estimate of the
pressure profile for the column.
As calculations approach solution, the column pressure drop profile is updated. This
procedure is repeated until convergence of both the pressure profile and the usual
distillation equations are achieved. Updating the pressure profile usually occurs two or
three times. As a result, columns containing structured packings converge in
Definitions:
100% capacity is defined as a pressure drop of 10 mbar/m. Stable operation at this
capacity is possible, but the gas load is higher than at which maximum efficiency is
obtained.
Flooding occurs when the interaction between gas and liquid is so strong that stable
counter-current operation is no longer possible. Pressure drop and hold-up (fluid
retained in the packing) increase sharply, and separation efficiency falls rapidly with
slight increases in gas or fluid flow rates. Flooding occurs at gas loads above 105-110%
capacity. While flooding is widely referred to in the literature in qualitative rating of
columns, 100% capacity is the criterion used by Sulzer for quantitative rating, since it
may be more precisely measured, and since the results are independent of the liquid-
gas system employed.
F-factor is defined as wGAS(ρGAS)0.5, where wGAS is the superficial gas velocity.
B B P P B B
Data Requirements
All calculations require liquid and gas densities. Pure component liquid and gas
densities must be entered for all non-library components. All calculations also require
liquid viscosity and surface tension. The user must enter these data for all non-library
components, and a transport method must be specified on the METHODS statement in
the Thermodynamic Data Category of input. Additionally, the user must specify the
packing type, the top pressure, the packed height and either column diameter (rating
mode) or percent capacity (design mode).
®
Additional Data Requirements for RATEFRAC Software P P
As the only non-equilibrium rate-based stage model in PRO/II, RATEFRAC® Software has
P P
additional data requirements for solving packed sections. These data include:
Void fraction of the packing
Built-in specific area of the packing (expressed as area per lenfth)
Critical surface tension of the packing material
RATEFRAC® Software is a non-equilibrium model that does not utilize theoretical trays.
P P
As a consequence, it does not support any of the efficiency options normally available in
equilibrium models. These include the keywords CSMETHOD, CSMAX, CSDESIGN and
CSAPPROACH, among others.
HETP is not involved in RATEFRAC® routines rate-based calculations, so none of the
P P
options involving it are available. These options include the keywords HETP and
HMETHOD. After RATEFRAC® Software solves, it computes HETP values for reporting
P P
purposes only.
the SULZER key word must be used to select a structured packing from table 12.7-12.
Data in Table 10.7-14 is incompatible and should not be used. Use FLEX, INTALOX or
KGWIRE keywords to select a KOCH-GLITSCH structured packing from table 12.7-13.
The most widely used packing type is MELLAPAK 250.Y (M250Y); a mid-range packing
in terms of both separation performance and capacity. If the user is unsure which
packing type is most suitable for the application, M250Y should be specified for initial
calculations. If greater capacity/lower pressure drop is required, a less dense packing,
e.g., MELLAPAK 125.Y (M125Y) should be selected. If greater separation performance
is required, a denser packing, e.g., MELLAPAK 350.Y should be chosen. Refer to the
manufacturer if unsure what packing type to use.
The rigorous mass transfer models used in RATEFRAC® software require additional data
P P
to characterize each structured packing. Structured packing data has been licensed from
KOCH-GLITSCH. These are the only packings supported by RATEFRAC® software. P P
They are clearly identified in tables 12.7.13. Data in Table 14.7-13 is incompatible and
should not be used.
Accuracy
The capacity calculated by PRO/II using the Sulzer correlations is within 10%, and that
of the pressure drop within 20%. These accuracy estimates are somewhat conservative;
accuracy in most cases is better, and an additional factor of safety to allow for prediction
inaccuracy is usually not necessary. A safety factor is however necessary when there is
References:
Sulzer Chemtech, Document 22.54.06.40, “Correlations of the performance
characteristics of the various MELLAPAK types”, 1991
Sulzer Chemtech, Document 22.13.06.40, “Separation columns for distillation and
absorption”, 1991.
FLEX = type,
or INTALOX = type,
or KGWIREGAUZE = type,
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = value,
BASESEG = segno1 } U UB UB
HEIGHT(uleng) = value
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
identical configurations.
SULZER The packing type for the section when using an equilibrium stage model.
Select one of the packings in Table 12.7-13. This entry is required. Not
®
available with RATEFRAC software.. P P
Table 12.7-12
®
Sulzer Structured Packing Types (not for use with RATEFRAC ) P P
SULZER Description
Type
M125X 125 m2/m3, sheet metal, very high capacity. Suitable for extremely
P P
M125Y high liquid loads where separation efficiency requirements are low.
Configuration angle of X types 30 degree to vertical, Y types 45. Use
X types for higher capacity, Y types for higher separation efficiency.
2 3
M170X 170 m /m , sheet metal, high capacity, moderate separation
P P P P
M170Y efficiency.
M250X 250 m2/m3, sheet metal, moderate capacity, high separation
P P P P
M250Y efficiency.
2 3
M350X 350 m /m , sheet metal, moderate capacity, high separation
P P P P
M350Y efficiency.
M500X 500 m2/m3, sheet metal, limited capacity, very high separation
P P P P
FLEX or The packing type for the section when using RATEFRAC® P
entry is required.
KGWIRE
Table 12.7-13
KOCH-GLITSCH Structured Packing Types for IO, Enhanced IO, Chemdist,
Keyword
Packing KOCH- Size Size
FLEXI = Type GLITSCH ft2/ft3 P P P P m2/m3
P P P P
Type
F1X FlexiPac 1X 128 420
F14X FlexiPac 1.4X 103 338
F16X FlexiPac 1.6X 86.87 285
F250 FlexiPac 250X 74.07 243
F2X FlexiPac 2X 67.06 220
F25X FlexiPac 2.5X 44.81 147
F25Y FlexiPac 2.5Y 44.81 147
F3X FlexiPac 3X 33.53 110
F3Y FlexiPac 3Y 33.53 110
F4Y FlexiPac 4Y 16.76 55
F2YP FlexiPac 2Y 61.875 203
HC70 FlexiPac HC 700Y 210 689
HC50 FlexiPac HC 500Y 147.52 484
HC1Y FlexiPac HC 1Y 128 420
HC14 FlexiPac HC 1.4Y 103 338
HC16 FlexiPac HC 1.6Y 86.87 285
HC25 FlexiPac HC 250Y 74.04 243
HC2Y FlexiPac HC 2Y 67.06 220
BX Wire
BX KG Wire Gauze 149.05 489
Gauze
Packing Koch-Glitch Size Size
FLEXE = 2 3
Type Type ft /ft
P P P P m2/m3
P P P P
HEIGHT The packing section overall height in units of fine length. If not
(uleng) given, this value is determined from the number of theoretical
or stages in the section and the supplied or calculated HETP value.
HETP The Height Equivalent to a Theoretical Plate for this section. Default
(uleng) units are FT (English) or M (metric or SI). A value for either HEIGHT
or HETP must be given. For the majority of distillation applications,
the value of HETP is independent of the gas-liquid system, and the
9
values given in the Sulzer documentation for the various packing
P P
HETP.
DIAMETER The diameter of the packed section in IN (English) or MM (metric or
(uflen) SI). For rating calculations, this entry is required. For sizing
or calculations, where the diameter is to be calculated, this entry is not
required.
ESTDIAM Used only for design (sizing) calculations to provide an initial
(uflen) estimate of the diameter of the packed section. It cannot be used
when the DIAMETER entry is present. (Used in RATEFRAC® P P
of CAPACITY.
VOIDFRAC The fraction of the packing volume that is void space. Values
(ufrac) should be in the range 1.-e-6 to 1.0.
LIQMIXING The method for liquid mixing. Options are COMPLETE (the
default), LINEAR, andLOG (logarithmic). Used only by
®
RATEFRAC software.
P P
VAPMIXING The method for liquid mixing. Options are COMPLETE (the
default), LINEAR, andLOG (logarithmic). Used only by
®
RATEFRAC software.
P P
TITLE
DIME TEMP = C, PRES = BAR
COMP DATA
LIBID 1, EBENZENE / 2, STYRENE
STREAM DATA
PROP STREAM = 1, TEMP = 40, PRES = 0.2, &
COMP = 1, 0.5 / 2, 0.5, RATE = 1000
UNIT OP
COLUMN UID = COL1
PARA TRAY = 40
FEED 1, 20
PROD OVHD = 2, BTMS = 3
COND TYPE = BUBB
DUTY 1, 1, 1 / 2, 11, 11
PSPEC TOP = 0.16, DPCOL = 0.05
PACKING SECTION = 21, 40, SULZER = M250Y, &
HEIGHT = 30, DIAM = 5
ESTI MODEL = CHEM
TEMP 1, 149 / 2, 150 / 11, 190
SPEC STREAM = 3, RATE(M), COMP = 1, &
RATIO, REFFEED, RATE(M), &
COMP = 1, VALUE = 0.0001
SPEC COLUMN = COL1, RRAT(M), VALUE = 10
VARY DUTY = 1, 2
END
DISTILLATION
Keyword Summary
Unit Identification (required)
SHORTCUT UID=uid, NAME=text
Specifications (required)
Specifying a stream property (Section 10.4):
SPEC STREAM = sid, <property 1>, PHASE=T or L or V, U U
WET or DRY,
U U
General Information
The shortcut distillation module uses a generalized Fenske method to predict product
distributions for multi-feed, multi-product fractionators. The model supports an unlimited
number of feeds and products. Any type of condenser can be used. For water-
hydrocarbon systems, if present, free water will decant at the condenser. Many types of
product specifications can be made.
For one-feed, two-product columns, the user may request the determination of the
minimum reflux ratio by the Underwood method. In this case, PRO/II will also determine
and print the number of theoretical trays, the actual reflux rates, and condenser and
reboiler duties for a set of given R/Rmin or M/Mmin values, based on a Gilliland-type
correlation. The method of Kirkbride is used to determine the optimum feed tray location
for each operation.
Column Models
An N-product column can be divided into (N-1) sections, with one section between each
pair of adjacent products. Two types of models are available in PRO/II for Fenske
calculations, as illustrated in Figure 12.8-1. In the CONVENTIONAL model, total reflux
condition exists throughout the column. In the REFINE model, the column is represented
by a series of one-feed, two-product columns. While total reflux condition exists in each of
these sectional columns, there is no reflux between the sections.
Input Description
Unit Identification (required)
SHORTCUT UID=uid, NAME=text
The SHORTCUT statement must appear as the first statement. All entries are general to
all unit operations, as described in Section 10.2.
“i” is the component that defines the light key. Similarly, “k”
defines the heavy key component.
RRMIN or When minimum reflux is calculated, the Gilliland correlation is
MMMIN used to predict five points on the reflux vs. trays curve. The
middle point is defined by the ratio to minimum reflux or the
ratio to minimum trays.
FINDEX a, b, ...
Specifications (required)
Specifying a stream property (Section 10.4):
SPEC STREAM = sid, <property 1>, PHASE=T or L or V,
U U
WET or DRY,
U U
Examples
1: Simple Splitter
In a single feed, two product column operating at 700 kPa, the top product is to contain
0.01 mole fraction of component number 5, while the bottom product is to contain .001
mole fraction of component 4. It is estimated that the top product will contain 30 weight
percent of the feed. A total bubble point condenser is used, operating at 70 kPa below the
column pressure. A table of five Gilliland points will be generated about a ratio of reflux to
minimum reflux of 2.5.
SHORTCUT UIC=SPLT, NAME=SPLITTER
FEED 5
PRODUCT STREAM=6, PRES(KPA)=630, &
PERCENT(WT)=30
PRODUCT STREAM=7, PRES(KPA)=700
SPEC STREAM=6, COMP=5, FRACTION, VALUE=.01
SPEC STREAM=7, COMP=4, FRACTION, VALUE=.001
The REFINE model is used for the simulation. Note that the stripping streams to the
sidestrippers are included with the feed to the column for proper water balance. Note also
that the light naphtha and gas will be considered as one stream since only one overhead
product is possible for the shortcut column model. (The condenser is represented by a
EXTRACTION
Keyword Summary
Unit Identification (required)
COLUMN UID=uid, NAME=text
{DIAGRAM},
{COMPOSITIONS=M and/or WT},
{XYDATA, KVALUE}, {KEYL=i, j, KEYH=k, l},
Tolerances (optional)
TOLERANCE EQUILBRIUM=value, ENTHALPY= value, COMP= value
General Information
The unit operation may be used to simulate multicomponent liquid-liquid extraction. The
extractor may have multiple feeds, with at least one feed to the top stage and another feed
to the bottom stage. The extractor has two products: a light-phase overhead product and a
heavy-phase bottom product. Theoretical stages are considered with a light and heavy
phase in equilibrium leaving each stage. A component purity or recovery specification for
each product stream may be entered. One feed or sidedraw or duty must be varied for
each specification made.
The K-value method must support the prediction of two liquid phases, i.e., must be of type
LLE, and must be a liquid activity method or advanced equation of state rather than a
generalized K-value predictor.
Conventions
Although liquid-liquid extraction units are generally not trayed, the LLEX COLUMN
borrows its nomenclature from conventional distillation, and theoretical stages are referred
to as trays. Thus, a TRAY=5 entry on the PARAMETER statement designates five
theoretical stages. Internal flows are referred to as the light (L1) phase and the heavy (L2)
phase respectively, with the light phase moving upward and the heavy phase moving
downward.
Input Description
Unit Identification (required)
COLUMN UID=uid, NAME=text
The COLUMN statement must appear as the first statement. All entries are general to all
unit operations, as described in Section 10.2.
This statement is used to define all feeds to the column. Stream “sid” is fed to theoretical
stage “tno”. An unlimited number of feed streams are allowed. The SUPERCEDE option is
described in Section 12.1, Column Input.
PRODUCT OVHD= sid, value, BTMS=sid, value,
{L1PART= sid, tno, value/...},
{L2PART= sid, tno, value/...}
value The actual sidedraw rate in moles per unit time unless
the draw is declared as a variable on the VARY statement
in which case “value” is an estimate of the sidedraw rate.
QSPEC The heat loss (negative), or heat gain (positive) for each
individual tray. The loss/gain must be given for the top and
bottom trays. The individual loss/gain for trays not defined
are determined by linear interpolation using the data given
for the nearest tray above and below the tray in question.
Thus, the minimum data necessary is the duty for the top
and bottom tray.
QCOND The heat loss/gain for tray 1.
QREBO The heat loss/gain for tray N.
QCOL The total heat loss/gain for the column excluding tray 1 and
tray N if their respective heat loss/gain was specified. The
heat loss/gain for each tray will be defined as
(QCOL/NTRAYS), where NTRAYS is the number of trays in
the column, excluding tray 1 and tray N if QCOND and
QREBO are specified.
QTRAY The heat loss/gain for each tray.
Table 12.9-1
Available Product and Internal Specifications
Product Specifications
RATE(basis,unit)
RATE(basis,unit), COMP=i,j
FRACTION(basis), COMP=i,j
PERCENT(basis), COMP=i,j
PPM(basis), COMP=i,j
Additional Specifications
TEMP(unit), TRAY=tno
Available <operators>
RATIO (alias DIVIDE)
The LLEX algorithm requires one specification variable statement for each specification.
They may all be given on the same VARY statement.
DUTY The heater duty corresponding to “idno” on the DUTY
statement is varied.
DRAW The draw rate for stream “sid” given as an L1PART or
L2PART on the PROD statement is varied.
FEED The feed stream “sid” mole rate is varied without changing
composition or thermal state.
Example: Vary heater duties 1 and 3 and draw stream DR1 in a liquid-liquid
extractor.
VARY DUTY= 1,3, DRAW= DR1
{DIAGRAM},
{COMPOSITIONS=M and/or WT},
{XYDATA, KVALUE}, {KEYL=i, j, KEYH=k, l},
Table 12.9-2
Available LLEX DEFINE Properties
PTOP Top stage pressure
DPTRAY Pressure drop per stage
DPCOL Column pressure drop
Example: DEFINE the top pressure as the pressure in FLASH F1 plus 5 pressure units.
DEFINE the stage pressure drop as CALCULATOR CAL1 result R(3).
DEFINE PTOP AS FLASH=F1, PRES, PLUS, 5.0
DEFINE DPTRAY AS CALC=CAL1, R(3)
Tolerances (optional)
TOLERANCE EQUILBRIUM=value, ENTHALPY= value, COMP= value
The tolerance definitions are given in Section 5, General Data Category . The
EQUILIBRIUM tolerance is analogous to the BUBBLE point tolerance for VLE
calculations.The defaults shown here occur when these values have not been globally
redefined in the General Data Category.
The LLEX tolerances can significantly affect final solution. Usually, the default tolerances
result in sufficient accuracy without incurring unreasonable CPU overhead. In the following
cases it may be necessary to tighten the tolerance:
1. The LLEX is in a calculation loop such as a recycle or controller. The external
loop in unable to converge because of inconsistent derivatives coming from the
LLEX unit.
2. The LLEX converges very slowly and the last “converged” iteration is only
marginally superior to the previous iteration. With this type of asymptotic
convergence pattern, a number of additional steps may result in a significant
departure from the “converged” iteration.
Examples
1: Simple Extraction Unit
The feed stream 1 is fed to the top (stage 1), and the solvent stream 2 is fed to the bottom
(stage 4). The extract is stream 13 and is estimated at 147 moles/hr. The raffinate is
stream 14. The column operates at 50 psia. The simple estimate generator is used to
initialize the profiles.
COLUMN UID=EXT1,NAME=LLEX-1
FEED 1,1/2,4
PRODUCT OVHD=13,147,BTMS=14
PARAMETER TRAY=4,LLEX
PSPEC PTOP(PSIA)=50
ESTI MODEL=SIMPLE
Figure 12.9-1
Figure 12.9-2
ALGORITHM
Keyword Summary
Unit Identification (required – Section 12.1)
COLUMN UID = uid, { NAME = text }
SUPERCEDE = ON or OFF
U U U U
MTSUBROUTINE = subroutine-name,
HTCORR = CHILTON, or U U
HTSUBROUTINE = subroutine-name,
IACORR=DEFAULT or ONDA or BRAVO or SCHEFFE, or
U U
®
Chapter 12.10 RATEFRAC ALGORITHM 447
IASUBROUTINE = subroutine-name
DIAMETER(TRAY, uflen)=value,
SPACING( TRAY or CAP, inch) = 24.0,
U U
and (for both TSIZE and TRATE, all the following are optional.)
{ DIAMETER(VALVE or SIEVEHOLE or CAP, uflen) = value,
PASSES = 1, SFACTOR = 1.0, FFACTOR = 100.0,
THICKNESS(DECK, GAUGE or uflen) = 14, U U
HEIGHT(uleng) = value
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = 0.5,
BASESEG = segno1 } U UB UB
{ FACTOR(FT or M) = value,}
SPAREA(FT or M) = value,
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
FLEX = type,
or INTALOX = type,
or KGWIREGAUZE = type,
DIAMETER(uflen) = value,
or { ESTDIA(uflen) = value and FLAPPROACH = value,
BASESEG = segno1 } U UB UB
HEIGHT(uleng) = value
SPAREA(FT or M) = value,
VOIDFRACTION(ufrac) = value,
LIQMIXING = COMPLETE or LINEAR or LOG,
U U
CSURFACETENSION(usurf) = value,
{ USID = text*72, CASE = text*72 }
®
Chapter 12.10 RATEFRAC ALGORITHM 449
Column Heat Loss/Gain (optional)
For equilibrium segments, the duty applies to the total segment. For non-equilibrium
segments, the duty applies only to the liquid phase.
QSPEC(uduty) = segno, value / ...
or
QCOLUMN QCOND(uduty) = value, QREBO(uduty) = value,
QCOL(uduty) = value or QTRAY(uduty) = value,
(Duty in millions of energy/time units.)
Reboiler (optional)
REBOILER TYPE = KETTLE
and
RATE(M or WT or LV) = value
U U
or TOTAL
or TEMP(utemp) = value or DT(utemp) = value
or RRATIO(M or W or LV or GV), U U
WET or DRY, U U
®
Chapter 12.10 RATEFRAC ALGORITHM 451
{ <operator>, <reference>, <property 2>,}
VALUE = value, { ATOL = value or RTOL = value }
Specifying a heater/cooler duty:
SPEC({CHANGE}) DUTY(idno, uduty),
{ <operator>, <reference>, <property 2>,}
VALUE = value, { ATOL = value or RTOL = value}
The TFLOW statement allows the creation of pseudo streams equivalent to the internal
column flows. These streams may be input to other PRO/II unit operations as desired;
however, care must be used not to destroy the problem overall mass balance.
®
RATEFRAC software allows an unlimited number of TFLOW streams.
P P
NET The net vapor or liquid flow from one tray to the next. For example,
NET(L) specifies the pseudo stream to be the liquid leaving tray
“segno”, not including product or pumparound draws.
TOTAL The total vapor or liquid flow leaving a tray, including product and
pumparound draws.
PA The liquid or vapor draw to a pumparound. tno1 is the draw tray
number, and tno2 is the return tray.
®
Chapter 12.10 RATEFRAC ALGORITHM 453
Tolerances (optional – Section 12.1)
TOLERANCE EQUILBRIUM = 0.001, ENTHALPY = 0.001, KVALUE = 0.001
General Information
Summary
The RATEFRAC® algorithm is a non-equilibrium rate-based distillation model developed
P P
®
using technology licensed from KOCH-GLITSCH. RATEFRAC routines is based upon
P P
section. Features shared with other algorithms are discussed in Section 12.1, Column
Input. The following discussion reviews the equilibrium stage model, introduces the
rate-based stage model, and then compares and contrasts the two models.
actual mass transfer on each stage. This completely avoids the need for overall or
component efficiencies.
The non-equilibrium stage model includes bulk liquid and vapor phases, as well as a
distinct interface where vapor-liquid equilibrium exists. Mass transfer between the bulk
liquid and bulk vapor phases occurs only through the interface. Refer to Figure 12.10-1.
®
Chapter 12.10 RATEFRAC ALGORITHM 455
Rate-based Sections
A section of a column contains one or more segments. Three input statements are
available to divide a tower into sections for rate-based calculations.
TSIZE Tray sizing (design) section
TRATE Tray rating section
PACKING Packed column section
Rate-based RATEFRAC® routines calculations take place only on segments included in
P P
one of these types of section. Any distillation stage not included in one of these sections
is an equilibrium stage, and does not participate in rate-based calculations. RATEFRAC® P P
always treats condensers and reboilers as equilibrium stages. They cannot be included in
one of these sections, and never are modeled using rate-based methods.
The column may be divided into as many sections as desired, so long as each section
includes at least one segment. A segment may be a member of no more than one
section. All segments in a section are contiguous; which means segments in one
section cannot interleave between segments in another section. Different sections in
the same column may be different types. TSIZE, TRATE, and PACKING sections may
be present in any combination.
All segments in a single section have the same configuration. For example, if a TSIZE
section contains a bubble cap tray, all segments in that section also must be bubble-cap
trays with the same tray diameter and the same bubble-cap diameter. As another
example, assume a random-packing section filled with (TYPE=1) IMTP metal packing
of size #40. All segments in the section would contain this packing. A new section
would be required to change the packing size, packing type, or the arrangement (from
random to structured).
actual tray rather than a theoretical tray. Typically, the bulk vapor and liquid are not in
equilibrium. There is no need of efficiencies to scale the separation to approximate
actual performance.
All trays (segments) to be modeled using the rate-based model must be part of either a
sizing or a rating section. The TSIZE and TRATE input statements subdivide the tower
into sections. They also assign segments to each section. Each section contains one
or more segments. All segments in a section have the same configuration
characteristics. For example, if one segment is a bubble-cap tray, all other segments in
that section also are bubble-cap trays. Any tray not included in a sizing or rating
section is calculated as an equilibrium stage. It cannot participate in the rate-based
calculations.
avoiding entirely the requirement to estimate HETP. RATEFRAC® models the actual
P P
®
mass transfer in each packed section. To model a packed tower, RATEFRAC software P P
Mass transfer rate-based modeling requires more data than an equilibrium stage model.
®
This is due to the heat and mass transfer relationships that RATEFRAC uses to model P P
a stage. The rate-based model requires correlations for binary mass transfer
coefficients and pure component binary component diffusion coefficients. Additionally,
interfacial area calculations require correlations that are specific to manufacturer’s trays
and pickings.
RATEFRAC® requires the following thermodynamic properties. These are the same as
P P
Additionally, the methods that compute heat and mass transfer coefficients require the
following properties:
Diffusivities
Surface Tension
Viscosities
Thermal Conductivities
®
Chapter 12.10 RATEFRAC ALGORITHM 457
RATEFRAC® software estimates vapor diffusivities using the correlation by Fuller et. Al.
P P
Refer to Industrial Engineering Chemistry, Vol. 58, #5, 1966 and also Diffusion of
Halogenated Hydrocarbons in Helium, Journal of Physical Chemistry, V73, #11, Nov
1969. The model estimates binary liquid phase diffusivities using the Wilke-Chang
model. It calculates multi-component liquid phase diffusivities using equation 4.2.18 page
91 of Multi-component Mass Transfer by Krishna and Taylor.
Note that correlations for these quantities use data specific to the physical internals of
the distillation tower. In other words, each type of tray, and each type of structured or
random packing, uses a different correlation.
RATEFRAC® models each distillation segment as having a bulk vapor phase and a bulk
P P
liquid phase that are not in equilibrium with each other. It uses an interface to model all
mass and heat transfer between the bulk phases. The interface has its own vapor and
liquid phases that are in equilibrium. The interfacial area represents the contacting
surface area between the vapor and liquid. The interfacial area and the binary mass
transfer coefficients are used to compute the bulk mass transfer of each component.
Built-in correlations allow the RATEFRAC® algorithm to compute interfacial area, mass
P P
®
transfer rates, and heat transfer rates for each type of tower internal RATEFRAC P
supports. Mass-transfer correlations are specific to the type of internal structure under
P
and use their own correlations. New user-added subroutine capabilities support user-
defined correlations for interfacial area, mass transfer, and heat transfer. See the User
Added Subroutines Manual for examples and instructions to utilize user added
subroutines. RATEFRAC® software does not support In-line procedures at this time.
P P
Table 12.10-1 shows the variables required by the rate-based stage model compared to
a typical equilibrium stage model. Similarly, Table 12.10-2 compares the sets of
equations solved in the two models. To enhance the comparison, the tables do not
include design specifications.
Table 12.10-1
Variables Used in RATEFRAC® and Equilibrium Stage Models
P P
Table 12.10-2
Equations Used in RATEFRAC® and Equilibrium Stage Models
P P
Number Required
Equations Used ® Equilibriu
RATEFRAC
m
P P
®
Chapter 12.10 RATEFRAC ALGORITHM 459
Initial Estimate Generator
RATEFRAC® software generates initial estimates in two stages. First, RATEFRAC®
P P P
software uses the same PRO/II initial estimate generators that all the other column
P
algorithms use. Those generators use simple models to approximate the distribution of
mass throughout the tower. Using the mass distribution estimates, they then generate
initial mole fractions, flows, and temperature profiles.
By default, RATEFRAC® software first solves a distillation tower using equilibrium trays
P P
and ‘rating’ design specifications. For example, assume a two-product tower has two
®
purity specifications, and solves using the non-equilibrium model. RATEFRAC P
software first solves the column assuming each stage (or segment) is an equilibrium
P
stage, replacing the two purity specifications with reflux ratio and distillate rate
specifications. Also assume the user provided rough initial estimates for these
specifications. During a simulation execution, the equilibrium model solves to within a
(relatively loose) tolerance. Then, using those results, the actual non-equilibrium
calculations begin. The rate-based calculations restore the original user-specified
design specifications (i.e., the two purity specs in this example).
Note that if a packed column is being solved using segment heights that are much
smaller than the HETP, the solution of the equilibrium stage column may not provide a
good starting point for the non-equilibrium stage model. In this case, it may be
necessary to bypass the equilibrium solution to achieve convergence of the non-
equilibrium model.
As another example, consider a 30-foot high packed tower section with an HETP of one
foot. The packed bed is 30 ft high, so using 30 segments would be appropriate (to
match the HETP). Suppose an investigator wants to track some composition profiles
that are changing, but has no idea what the HETP should be, and specifies the number
of actual segments as 300. Now the height of each segment is only 0.1 ft. When the
equilibrium stage model solves with 300 equilibrium stages, it converges to a solution
that predicts much more separation than the 30 ft of packing for the non-equilibrium
model. In this scenario, it may be necessary to bypass the solution of the equilibriums
®
stage model used to initialize RATEFRAC . Because the initial estimate was omitted, it
P P
Thermosiphon Reboilers
The RATEFRAC® algorithm does not support the modeling of thermosiphon reboilers
P P
Limitations
Except for the decantation of pure water using the FREEWATER option on the
RFPARAMETER statement, the algorithm does not support two liquid phases. In such
cases, RATEFRAC® software ignores the KVALUE(LLE) designation in the
P P
statements, and introduces several new ones for its exclusive use. The remainder of this
section describes all the new input features used by RATEFRAC®. P P
®
RATEFRAC requires a significant amount of input data that is different from the
P P
input statements also does not generate input errors when used with other algorithms.
This approach was adopted to facilitate changing the solution algorithm without
requiring extensive modification of the input data file. For example, to convert a
RATEFRAC® input file to the Enhanced IO algorithm, change the PARAMETER
P P
®
RATEFRAC statement to PARAMETER ENHANCEDIO. In many cases, this is the
P P
SUPERCEDE = ON or OFF
U U U U
The feed and product statements shown here are the only ones supported by
®
RATEFRAC . Their usage requirements are the same as for other column
P P
algorithms. Refer to section 12.1 for a thorough discussion of the available entries .
The entries shown here are the only pseudo-product options supported by RATEFRAC®. P P
Section 12.1 discusses them in detail. Note: RATEFRAC® software does not support P P
declares the number of distillation segments (stages) in the column. It also supports an
optional damping factor that may aid convergence in some cases.
®
Chapter 12.10 RATEFRAC ALGORITHM 461
SEGMENTS This entry is required and specifies the number of distillation
segments in the column, including the condenser and reboiler (if
present). One or more segments are required. Segments typically
®
correspond to actual trays in RATEFRAC (not theoretical trays).
P P
® ®
RATEFRAC P P Required to select the RATEFRAC algorithm. Supply an integer
P P
rate-based calculations. All other segments are equilibrium stages, and solve using
equilibrium methods. Section 12.7 provides an extensive description of the input
requirements and options that are specific to RATEFRAC®. P P
Each TSIZE, TRATE, and PACKING statement identifies a single section of the tower.
A section may contain as few as one segment. A single tower may contain any number
of sections, so long as each section contains at least one segment. A segment cannot
appear in more than one section.
Every segment within a single section has attributes identical to those of all other
segments in that section. Among others, these attributes include section diameter, tray
type, packing type, packing size, and packing arrangement (structured or random). If
any attribute needs to be different, a separate section is required. Refer to section 12.7
– Column Hydraulics for a more complete description.
the column. Rate-based calculations do not modify segment pressures. See section
12.1-Column Input for a comprehensive discussion of these statements.
or CHAN or AICHE
or MTSUBROUTINE = subroutine-name,
HTCORR = DEFAULT, or CHILTON
U U
or HTSUBROUTINE = subroutine-name,
IACORR=DEFAULT or ROCHA or BRAVO or ONDA
U U
The RFTRANSFER statement provides options for choosing the method used to
calculate the interfacial area, mass transfer, and heat transfer in one section of the
column. Defaults exist for all calculation methods. The DEFAULT option selects an
appropriate method based upon the internal configuration of the section of the tower.
SECTION Identifies the section of the column to which the RFTRANSFER statement
applies. The idno argument is the identification number of a section
declared on a TSIZE, TRATE, or PACKING statement. Refer to Section
12.7: Column Hydraulics. All segments in the section use the methods
specified on this statement.
MTCORR Selects a built-in correlation to compute mass-transfer rates for every
segment in the section. Each mass-transfer correlation typically applies
to a specific type of internal stage configuration. Table 12.10-3 shows the
applicability of each built in correlation. Choosing an inappropriate
correlation generates an error during input processing The “DEFAULT”
option automatically selects an appropriate correlation based upon the
internal configuration of the section.
®
Chapter 12.10 RATEFRAC ALGORITHM 463
Table 12.10-3
Applicability of Built-In Mass-Transfer Correlations
Internal
MTCORR = Correlation Reference
Configuration
Distillation Columns Containing Structured
Packings: A Comprehensive Model for
Their Performance. 1. Hydraulic Models
ROCH Structured Packing Rocha, Bravo and Fair, Ind. Eng. Chem.
Res. 1993, 32, 641-651 and 2. Mass
Transfer Models, Ind. Eng. Chem. Res.
1996, 35, 1660-1667
Mass Transfer Coefficients Between Gas
and Liquid Phases in Packed Columns,
ONDA Random Packing
Onda, takeuchi, Okumoto, J. Chem. Eng.
Japan, 1, 1, 1968, p56.
Scheffe, RD, Mass Transfer
Characteristics of Valve Trays, MS
SCHEFFE Valve Trays
Thesis, MS Thesis, Clarkson University,
1984
Prediction of Point Efficiencies on Sieve
Trays 1. Binary Systems, Chan, H and J.
CHAN Sieve Trays
R. Fair, Ind. Eng Chem Proc. Des. Dev.
23, p814, 1984
AICHE Report 1958, Grester, J.A., A. B.
AICHE Bubble-cap Trays Hill, N. N. Hochgraf and D. G. Robinson
Tray Efficiencies in Distillation Columns
DEFAULT Automatic Selects one of the above as appropriate
or
MTSUB Identifies a user-added subroutine instead of a built-in correlation to
perform the mass-transfer calculations. Refer to the “PRO/II User-Added
Subroutine Manual” for instructions and information.
IACORR Selects a built-in correlation to compute interfacial area for each segment
in the section. Each correlation typically applies to a specific type of
internal stage configuration. Table 12.10-4 shows the applicability of each
built in correlation. Choosing an inappropriate correlation generates an
error during input processing. The “DEFAULT” option automatically
selects an appropriate correlation based upon the internal configuration of
the section.
1984
Prediction of Point Efficiencies on Sieve
1 Trays 1. Binary Systems, Chan, H and J.
CHAN Sieve Trays
R. Fair, Ind. Eng Chem Proc. Des. Dev.
P P
or
IASUB Identifies a user-added subroutine instead of a built-in correlation to
perform the interfacial area calculations. Refer to the “PRO/II User-Added
Subroutine Manual” for instructions and information.
HTCORR Selects a built-in correlation to compute heat transfer between the bulk
liquid and bulk vapor for each segment in the section. Typically, these
correlations apply to any type of internal stage configuration. Table
12.10-5 shows the applicability of each built in correlation. The
“DEFAULT” option automatically selects the CHILTON correlation.
®
Chapter 12.10 RATEFRAC ALGORITHM 465
Table 12.10-5
Available Built-In Heat Transfer Correlations
Internal
HTCORR = Correlation Description
Configuration
CHILTON1 P P All internal types Chilton-Colburn
DEFAULT Automatic Selects the Chilton-Colburn correlation
1
P P Selected by the DEFAULT option for this type of internal configuration
or
HTSUB Identifies a user-added subroutine instead of a built-in correlation to
perform the heat transfer calculations. Refer to the “PRO/II User-Added
Subroutine Manual” for instructions and information.
Reboiler (optional)
REBOILER TYPE=KETTLE
U
no calculation options. A column allows only one reboiler. In a merged column, only the
main tower allows a reboiler. The reboiler requires a heater on the bottom stage of the
column. Use a DUTY statement to declare this association. If the REBOILER statement
is present, no pumparound to and from the reboiler (bottom stage) is allowed.
and
RATE(M or WT or LV) = value
U U
or TOTAL
or TEMP(utemp) = value
or DT(utemp) = value
This card defines pumparounds (up the column) and bypasses (down the column).
RATEFRAC® supports TOTAL pumparounds, but does not support the LFRAC option.
P P
®
Chapter 12.10 RATEFRAC ALGORITHM 467
The initial estimate generator options are the same for RATEFRAC® as for other PRO/II P P
column models. See Section 12.1 – Column Input for a full description of these entries.
®
The initial estimate generator for RATEFRAC provides additional options not available
P P
®
for other PRO/II column models. Normally, the RATEFRAC initial estimate generator
P P
solves the column using the Enhanced IO algorithm, an equilibrium model. The options
on the RFESTIMATE statement control the IEG calculations.
IEGBYPASS Allows suppression of all IEG calculations. The default is NO, do not
bypass the IEG calculations. Use the YES option to suppress the IEG
calculations when restartng a previously solved flowsheet. Entering
IEGBYPASS with no argument is the same as IEGBYPASS = YES.
DESIGN This controls whether or not the column design specifications are
included in the IEG calculations. The default is DESIGN = NO, which
omits design specifications from the IEG. Entering DESIGN = YES, or
simply DESIGN with no argument, activates the column design
specifications in the IEG calculations.
IEGITER Specifies the maximum number of iterations allowed for IEG
calculations. The default is 30.
IEGTOL Specifies the convergence tolerance for IEG calculations. Once IEG
calculations have converged within this tolerance, the IEG calculations
terminate. This tolerance generally is loose, since the purpose of the
IEG is to generate reasonable data estimates before starting rate-based
calculations. The default tolerance is 0.01.
LIQFLOWTRAN Provides several options for extrapolating the liquid flow tran.
STANDARD Selects a linear (first order) correlation. This is the default.
SQUARE Performs the calculations using a quadratic (second order) method.
LOGARITHMIC Performs the calculations using a logarithmic method.
VAPFLOWTRAN Provides several options for extrapolating the vapor flow tran.
STANDARD A linear (first order) correlation. This is the default method.
SQUARE Performs the calculations using a quadratic (second order) method.
{ CESTIMATE(L or V or IL or IV)
U U segno, x1, x2,... /... ,} (always mole fractions)
B B B B
The purpose of user-supplied profile data is to provide a reasonable starting point for
®
IEG calculations. The RATEFRAC IEG is quite robust, and user-supplied profile
P P
estimates rarely are required. However, there are a few situations where they may be
useful. Refer to Section 12.1 – Column Input for a discussion of these circumstances.
The non-equilibrium RATEFRAC® model provides some profiles that are no available in
P P
other PRO/II equilibrium column models. This is necessary because the rate-based
calculations The RATEFRAC® algorithm does not support L1 or L2 phase composition
P P
estimates.
LTEMP Supplies an estimate of the bulk liquid phase temperature on each
segment.
VTEMP Supplies an estimate of the bulk vapor phase temperature on each
segment.
ITEMP Supplies an estimate of the interfacial temperature on each segment.
VAPOR Estimates the bulk vapor rate of each segment.
LIQUID Estimates the bulk liquid rate of each segment.
CESTI Allows estimating the composition of each component in each phase
of each segment. In all cases, supply the values as mole fractions.
(V) or Every CESTIMATE statement requires one of the four qualifiers to
(L) or select a fluid phase. Always supply values for the first and last
segments in the column that participate in (non-equilibrium) rate-
(IV) or based calculations. Data for segments between these two extremes
(IL) is generated by linear interpolation. Refer to the discussion in
Section 12.1- Column Input.
(V) Selects the bulk liquid phase of each segment.
(L) Selects the bulk liquid phase of each segment.
(IV) Selects the interfacial vapor phase of each segment.
(IL) Selects the interfacial liquid phase for each segment.
®
Chapter 12.10 RATEFRAC ALGORITHM 469
MTRATE Provides an estimate of the overall mass-transfer between the bulk
vapor and the bulk liquid of each segment. Positive values indicate
net transfer from the bulk liquid to the bulk vapor. Negative values
indicate net transfer from the bulk vapor to the bulk liquid.
RATEFRAC® software supports the same generalized specifications as the other PRO/II
P P
column models. Refer to Section 12.1-Column Input for an extensive of this feature.Main
columns merged with sidestrippers and siderectifiers solve as a single unit operation. The
number of SPEC statements may differ from the number of variables on the VARY
statement for each individual tower, but the total number of SPEC statements must equal
the total number of variables for the entire merged column.
®
RATEFRAC supports the same print options as the other PRO/II column models.
P P
®
Chapter 12.10 RATEFRAC ALGORITHM 471
The RFPRINT statement provides output report options that are available only for the
®
RATEFRAC column model. All entries on this statement are optional. Several of the
P P
PRO/II column models. Refer to Section 12.1 – Column input for more information.
®
Chapter 12.10 RATEFRAC ALGORITHM 473
Thermodynamic Set Selection (optional)
METHOD SET = setid, segno /...
Each segment may use a different thermodynamic METHOD set. RATEFRAC (R) P
software considers only bulk liquid and vapor phases. It does not perform liquid-liquid
P
normally considers only the bulk vapor and the bulk liquid, it normally uses VLE (as
opposed to
VLLE) thermodynamic method sets. The RFVLLETEST statement provides a
mechanism to test for the (potential) formation of two liquid phases on a segment-by-
segment basis. The presence of two liquid phases on a segment generates a warning.
This entry provides a mechanism to specify which segments to test.
SEGMENT
The segno1 and segno2 values are the first and last segment to be
segno1
B B B B
B B
B B
SET Use this entry to specify the thermodynamic METHOD set used to test
for the presence of two liquids.
The setid argument is the thermodynamic METHOD set ID to use for
setid testing. This should always be a VLLE method set.
COLUMN UID=T1
PARAMETER TRAY=8,RATEFRAC
FEED TOPFEED,1/BTMFEED,8
PRODUCT OVHD(M)=OVHD,300,
BTMS(M)=BTMS
PSPEC PTOP=15
PRINT PROPTABLE=PART
RFPRINT BUBBLE DEW MTRATE HTRATE
MTCOEFF HTCOEFF interface
PACK SECTION(1)=1,8, FLEXIPAC=F1X0
DIAMETER=48 HEIGHT(FT)=5.18
END
Figure 12.10.1
®
Chapter 12.10 RATEFRAC ALGORITHM 475
The page is intentionally left blank
EXCHANGER
Keyword Summary
Unit Identification (required)
HX UID=uid, {NAME=text},
{ZONES (OUTPUT or CALCULATION)=5}, {PLOT}
U U
HDTBB(unit)=value or CDTBB(unit)=value or
HDTAD(unit)=value or CDTAD(unit)=value or
UA(u unit, area unit)=value,
TOLERANCE=0.001
Input Description
Unit Identification (required)
HX UID=uid, {NAME=text},
{ZONES (OUTPUT or CALCULATION)=5}, {PLOT}
U U
The HX statement must appear as the first statement of each simple heat exchanger
module. The UID and NAME entries are general to all unit operations,
as described in Section 10.2.
DP(unit)=0.0, {METHOD=setid}
One HOT or COLD statement is required to define the feeds and products of a one-sided
exchanger. A module containing one HOT and one COLD statement simulates a
conventional heat exchanger. Other combinations, including utility or column internal tray
streams, are listed in Table 13.1-1.
The thermodynamic method for the heat exchanger, and not the column, is used
to calculate properties for this attached column stream. To use the ATTACH option,
COLUMN input data must declare a heater-cooler on the tray to which the exchanger is
attached. An attached exchanger may invoke a special iterative procedure to enhance
convergence, as described in Section 17.4.
This entry identifies the column to which the exchanger is
attached. It is required.
COLUMN
TYPE The TYPE entry designates the method of attachment. It is
required.
PHASE This specifies the phase of the tray fluid used as feed to the
exchanger. It is required when TYPE=SIDE; otherwise it is
The column may determine the duty of the heater-cooler, in which case no performance
specification should appear in the heat exchanger input. Alternatively, the duty may be
determined from a specification on the heat exchanger. In the latter case, the heater-
cooler duty in the column cannot be used as a specification variable. Practically speaking,
column convergence is considerably enhanced when the column calculates the duty, and
no performance specification appears for the heat exchanger.
Data on the CONFIGURATION statement applies only to two-sided heat exchangers. All
entries are optional. If the statement is omitted, the exchanger runs in
COUNTERCURRENT mode, assuming one shell pass and one tube pass. Supplying
values for both the U value and AREA entries specifies the performance of the heat
exchanger. This is known as a ‘UA’ specification. In this case, the OPERATION statement
is not allowed, and no other specification is permitted.
HDTBB(unit)=value or CDTBB(unit)=value or
HDTAD(unit)=value or CDTAD(unit)=value or
UA(u unit, area unit)=value,
TOLERANCE=0.001
The OPERATION statement specifies the desired value of a performance parameter. Only
one specification is allowed in each heat exchanger module. Specifications referencing
stream properties or parameters of other unit operations must be entered on DEFINE
statements. Exactly one operation specification must be provided.
The OPERATION statement must not be used in either of the following cases:
Table 13.1-2A lists specification parameters available in all heat exchangers, either one-
sided or two-sided. Table 13.1-2B lists additional specifications available only in
exchangers with two defined sides.
Table 13.1-2A
Specification Parameters Available In All Exchangers
Entered on the OPERATION Statement or a DEFINE statement
Entry Description
DUTY Overall exchanger heat duty in millions of energy units per
time unit
All entries listed in Tables 13.1-2A and 13.1-2B are valid <param> entries on DEFINE
statements. Additional parameters available on DEFINE statements are listed in Tables
13.1-3A and 13.1-3B. Multiple DEFINE statements are allowed. Refer to Section 10.5 for a
description of the DEFINE statement.
Only one parameter listed in Table 13.1-2A or 13.1-2B may appear on a DEFINE
statement. The only exceptions are the U and AREA entries on the CONFIGURATION
statement, which may be entered in addition to any specification available on the
OPERATION statement.
Table 13.1-3B
Additional Entries Allowed on DEFINE Statements
Available Only In Two-Sided Heat Exchangers
Statement Entry Description
CONFIG FT LMTD correction factor
Examples
1: Process heater
Model a heat exchanger that mixes process streams 5 and 6 and heats them to 200° C
with a pressure drop of 20 psi. The products are vapor stream V1 and liquid stream L1.
Calculate the utility requirement of saturated steam entering at 300° C.
HX UID= HE01
COLD FEED= 5, 6, V= V1, L= L1, DP(psi)= 20
OPERATION CTEMP(C)= 200
UTILITY STEAM, TSAT(C)= 300
HEAT EXCHANGER
Keyword Summary
Unit Identification (required)
HXRIG UID=uid, {NAME=text}, {PLOT}
LENGTH(FEET)=20, OD(INCH)=0.75,
{ID(INCH)=0.584 or THICKNESS(unit)=value or
BWG=integer},
NUMBER=254, PASS=2, PATTERN=90,
PITCH(INCH)=1.0,
MATERIAL=CS ,
or
LABEL=text, DENSITY(LB/FT)=490.8,
CONDUCTIVITY(BTU/H)=30.0,
{FOUL(unit)=value}, LAYER(unit)=0.0,
{HO(unit)=value}, HSCALE=1.0,
{DPSHELL(unit)=value or DPUNIT(unit)=value},
DPSCALE=1.0,
{METHOD=setid}
BAFFLE {SEGMENT=SINGLE} {NTIW},
U U
or
{SEGMENT=DOUBLE},
CUT=0.20 or NFAR=value,
THICKNESS(INCH)=0.1875, {SHEET(unit)=value},
{SPACING(unit)=value, INSPACING(unit)=value,
OUTSPACING(unit)=value},
or
NONE
SNOZZLE TYPE=CONVENTIONAL, ID(unit)=inlet, outlet,
or
TYPE=ANNULAR, ID(unit)=inlet,outlet,
LENGTH(unit)=inlet, outlet, AREA(unit)=inlet, outlet,
CLEARANCE(unit)=inlet, outlet,
or
NONE
FLOW=COUNTERCURRENT, or COCURRENT,
U U
{UESTIMATE(unit)=value}, USCALE=1.0
HXCALC DPSMETHOD=BELL, STREAM, DPTMETHOD=BBM, HEX5,
U U U U
VLLE Calculations
Rigorous modeling of two liquid phases is possible by specifying VLLE thermodynamics.
Refer to Section 10.2 for a description of how VLLE methods change the significance of
the V and L product entries on the TUBE and SHELL statements.
Input Description
Unit Identification (required)
HXRIG UID=uid, {NAME=text}, {PLOT}
This must be the first statement of each rigorous heat exchanger. All entries are
described in Section 10.2. The plot option requests a plot of the results created by the
ZONES option on the PRINT statement.
Tube Configuration
The TUBES statement is required. The FINS and TNOZZLE statements are optional.
TUBES FEED=sid, {sid, . . .},
LENGTH(FEET)=20, OD(INCH)=0.75,
{ID(INCH)=0.584 or THICKNESS(unit)=value or
BWG=integer},
NUMBER=254, PASS=2, PATTERN=90,
PITCH(INCH)=1.0,
MATERIAL=CS ,
or
The TUBES statement defines options and conditions on the tube side of the exchanger.
The minimum required entries are the FEED and product (V, L, M) keywords. Omit these
entries when attaching the tube side of the exchanger to a distillation column (see below).
FEED At least one feed stream label is required. All feeds are
mixed adiabatically at the pressure of the lowest individual
feed stream to determine the combined feed temperature.
V, L These keywords define the phase of each product stream: V
or for vapor, L for liquid, or M for mixed phase. If only one
M product is specified, the correct phase is determined and
overrides the phase implied by V, L, or M. Valid combinations
are V, L, V and L, or M.
W For water-hydrocarbon systems only, W may designate a
decanted water stream. If not specified, decant water is
included in the liquid product. When VLLE thermodynamics
apply, W allows input of the stream label for the second liquid
phase, normally aqueous. Refer to Section 21 for a
description of VLLE methods and usage.
S For systems with solids, the solids may be separated into a
stream designated by S. If S is not given, all solids will leave
the separator with the liquid phase stream.
LENGTH The nominal length of a tube in an exchanger bundle. For
straight tubes, tube length is measured as the distance from
the outer face of both tubesheets. For U tubes, tube length is
measured as the distance from the outer face of the
tubesheet to the last baffle normally placed at the tube
tangent line. See Figure 13.2-1. This entry is optional and
defaults to 20 ft in English units (6.1 meter in metric or SI).
2 2
KC/H (kcal/hr-m -°C) for metric, and KJ/H (kW-m -K) for SI.
P P P P
metric or SI. When used, AREA overrides (a) the surface area entered on
the TYPE statement or (b) the area calculated from the dimensions of the
tubes. A default area is calculated from dimensions.
HEIGHT This is the fin height in inches for English units or millimeters for metric or
SI. The default is 0.0625 inches in English units or 1.59 mm for metric or
SI.
Shell Configuration
The SHELL statement is required. The BAFFLE and SNOZZLE statements are optional.
SHELL FEED=sid, {sid, . . .},
{FOUL(unit)=value}, LAYER(unit)=0.0,
{HO(unit)=value}, HSCALE=1.0,
{DPSHELL(unit)=value or DPUNIT(unit)=value},
DPSCALE=1.0,
{METHOD=setid}
The SHELL statement defines various features and parameters on the shell side of the
exchanger. The minimum required entries are the FEED and product (V, L, M ) keywords.
Omit these entries when attaching the shell side of the exchanger to a distillation column
(see below).
FEED At least one feed stream label is required. All feeds are
mixed adiabatically at the pressure of the lowest individual
feed stream to determine the combined feed temperature.
SEALS The number of pairs of sealing strips per cross-flow pass may be
specified with this entry. Refer to Figure 13.2-4B. The default is zero.
2 2
units, 0.00041 m -hr-C/kcal for metric, and 0.00010 m -K/kW for
P P P P
SI.
LAYER The thickness of the shell-side fouling layer has no effect on
thermal resistance, but does affect pressure drop. Dimensional
units are inches in English units or millimeters for metric or SI.
The default value is zero.
HO The shell-side film coefficient normally is not specified, since a
2
value is calculated rigorously. Dimensional units are Btu/hr-ft -F P P
2 2
in English units, kcal/hr-m -C for metric, and kW-m -K for SI.
P P P P
METHOD The thermodynamic method set used on the shell side of the
or
{SEGMENT=DOUBLE},
CUT=0.20 or NFAR=value,
THICKNESS(INCH)=0.1875, {SHEET(unit)=value},
{SPACING(unit)=value, INSPACING(unit)=value,
OUTSPACING(unit)=value},
or
NONE
The BAFFLE statement defines various parameters relating to the exchanger baffles. All
entries on it are optional.
SEGMENT The number of segments (or cuts) for each baffle may be selected
with this option. Valid entries are SINGLE or DOUBLE. The
default is SINGLE.
NONE Use of this option indicates absence of baffles, and all other
entries are ignored. By default, NONE is turned off.
NTIW This keyword selects the No-Tubes-In-Window option. It is not
valid with double segmental baffles. The default assumes Tubes-
In-Window construction.
CUT Baffle CUT is the ratio of the height of the window to the shell
or inside diameter (see Figure 13.2-5). NFAR is the net free area
NFAR ratio, i.e., the net (without tubes) window area divided by the net
cross-sectional area of the shell. Either entry may be entered as
a percentage or as a fraction. For double segmental baffles, use
the height of only one of the windows to compute CUT. In other
words, for the same cut value, double-segmental baffles have an
NFAR value that is twice the value of that for single-segmental
baffles. See Table 13.2-2 for some typical values.
Table 13.2-2
NONE This option indicates the absence of any shell-side nozzles, and
all other entries are ignored. By default, NONE is turned off.
or Valid options for nozzle type are CONVENTIONAL (default) or
TYPE ANNULAR. Refer to Figure 13.2-6.
or
SIDE The exchanger models a side heater-cooler. The
feed from the column tray must be one of (1) the vapor
or liquid of the tray to which the exchanger is attached, (2)
the vapor from the tray below the attached tray, or (3) the
liquid from the tray above the attached tray.
TRAY This designates the tray used to attach the exchanger to the
column. It is required when TYPE=PA or TYPE=SIDE.
FTRAY FTRAY indicates the column tray that supplies the feed to the
exchanger. It is required when TYPE=SIDE; otherwise, it is
not allowed. When the exchanger is attached to tray ‘n’ of the
column, FTRAY accepts values of ‘n’, ‘n+1’, or ‘n-1’,
indicating that the feed is taken from the attached tray (n), the
tray below the attached tray (n+1), or the tray above the
attached tray (n-1).
PHASE This specifies the phase of the tray fluid used as feed to the
exchanger. It is required when TYPE=SIDE; otherwise, it is
invalid. Valid options are V (vapor) or L (liquid). For attached
tray ‘n’, if FTRAY= n+1, PHASE must be V; if FTRAY= n-1,
PHASE must be L.
RATE This optional entry is available only when TYPE=SIDE. It
specifies the rate of the feed from the tray to the heat
exchanger. The default basis is moles. If omitted, the total
vapor or liquid tray rate is used. If the specified value
exceeds the rate available from the tray, the total rate of the
specified phase is used.
FLOW=COUNTERCURRENT, or COCURRENT,
U U
{UESTIMATE(unit)=value}, USCALE=1.0
This statement defines items general to the heat exchanger. All entries are optional.
This statement allows selection of options used in the calculation procedure. If used, the
DPSMETHOD entry is required.
DPSMETHOD Shellside pressure drop prediction method. The selection of
BELL results in the Bell-Delaware method of pressure drop
prediction. STREAM selects the stream analysis technique of
Wills and Johnston (1). Refer to the PRO/II Reference Manual
for more information.
Reference: (1) Wills, M.J.N., and Johnston, D., A New and
Accurate Hand Calculation Method for Shellside Pressure
Drop and Flow Distribution, presented at the 22nd Heat
Transfer Conference and Exhibition, Niagara Falls, N.Y., 1984.
MODEL MODEL specifies the simulation model to be used for the
calculations. SIMSCI (default) is used for Pro/II simulation
model and HTRI is used for XIST simulation model.
HOTSIDE HOTSIDE specifies the side which is having hot fluid.
Allowable entries are SHELL (the default) or TUBE . This is
applicable only when the MODEL is HTRI. Based on this, the
shell side and tube side processs data are transferred to
HTRI’s hot side and cold side.
FILE File specifies the HTRI file, which is having the input data
Examples
1: AES Heat Exchanger Rating
Model an AES type heat exchanger having cold stream CLD1 feeding the shell side, and
hot stream HOT1 entering the tube side. The 23.25 inch inside diameter shell has 13.25
inch diameter nozzles. Space the single segmented baffles 17.6 inches apart with a cut of
25.5%. The 499 carbon steel tubes have an outside diameter of 0.75 inches, walls that
are 0.049 inches thick, and a length of 11.73 feet. The tubes are oriented at 30 degrees
with respect to shell-side flow on a pitch of 0.9375 inches. Print the extended set of
hydrodynamic properties in addition to the usual summary and TEMA specification sheet.
HXRIG UID=HXR1, NAME=STEX
TYPE TEMA=AES
SHELL FEED=CLD1, M=CLD2, ID=23.25
BAFFLE SPACING=17.6, CUT=25.5, SEGMENT=SINGLE
SNOZZLE ID=13.25, 13.25
TUBES FEED=HOT1, M=HOT2, OD=0.75, THICKNESS=0.049, &
LENGTH=11.73, PATTERN=30, PITCH=0.9375, &
NUMBER=499, MATERIAL=CS
PRINT EXTENDED
tube-side nozzles are 6 inches. The carbon-moly steel shell has an I.D. of 27.7 inches, an
effective area of 1367 ft2, and a fouling factor of 0.001 ft2-hr-F/Btu. The baffle cut is 0.25,
P P
with baffles spaced every 11.6 inches. The shell-side inlet nozzle is 6 inches, while the
outlet nozzle is 4 inches. Specify a duty of 3.5 million Btu to obtain a calculated value of
the fouling factor. Use the default thermodynamics methods set for the tube side, and set
TMS1 for the shell side. Report the extended set of hydrodynamics properties and a
zones summary, in addition to the normal summary and TEMA specification sheet.
HXRIG UID=E01, NAME=CONDEN
TYPE TEMA=AJS, AREA=1367, ORIENTATION=HORIZONTAL
TUBE FEED=100, M=101, PASS=2, MATERIAL=CS, &
LENGTH=16, PATTERN=90, ID=0.62, OD=0.75, &
PITCH=1, NUMBER=448, CONDUCTIVITY=32, FOUL=0.0015
TNOZ ID=6,6
SHELL FEED=1, M=11, SERIES=1, MATERIAL=CMS, &
FOUL=0.001, ID=27.7, METHOD=TMS1
BAFFLE CUT=0.25, SPACING=11.6
SNOZZLE ID=6,4
OPERATION DUTY (BTU/H)=3.5
PRINT EXTEND, ZONES
EXCHANGER
Keyword Summary
Unit Identification (required)
LNGHX UID=uid, {NAME=text},
{ZONES (CALCULATION or OUTPUT)=5}
U U
{DUTY(unit)=value or TEMP(unit)=value},
{NUMBER=idno, CELL=text},
DP(unit)=0.0, {METHOD=setid}
COLD FEED=sid, {sid, ... },
{DUTY(unit)=value or TEMP(unit)=value},
{NUMBER=idno, CELL=text},
DP(unit)=0.0, {METHOD=setid}
General Information
LNG heat exchanger simulates the exchange of heat between any number of hot and
cold streams. The exchanger is divided into cells representing individual cross-flow
elements. HOT cells give up heat, while COLD cells absorb heat. Each cell can mix
multiple feed streams to form a combined feed at the lowest individual feed pressure to
that cell. Streams may be separated into vapor and liquid products at the outlet of the cell.
All but one cell may include a specification of either the outlet temperature or the duty.
However, at least one cell must remain unspecified. The products of all unspecified cells
exit the exchanger at a single temperature that satisfies the overall energy balance.
The default calculational mode performs an overall energy balance and checks for
temperature crossover only at the outlet. It does not consider exchanger configuration and
makes no attempt to check for internal “pinch’ conditions or temperature crossovers.
The optional zone analysis identifies and issues warnings for all internal temperature
crossovers and “pinch” points. It produces a table showing the inlet and outlet
temperatures, duty, weighted LMTD, and weighted UA value for every zone in each cell.
Zone analysis also allows a CONTROLLER to satisfy a minimum internal temperature
approach (MITA), UA, or zoned mean-temperature-difference (MTD) specification on the
exchanger.
Input Description
Unit Identification (required)
LNGHX UID=uid, {NAME=text},
{ZONES (CALCULATION or OUTPUT)=5}
U U
The LNGHX statement must be the first statement of each LNG heat exchanger module.
The UID and NAME entries are general to all unit operations, as described in Section
10.2. A description of the ZONES entry appears below.
{DUTY(unit)=value or TEMP(unit)=value},
{NUMBER=idno, CELL=text},
DP(unit)=0.0, {METHOD=setid}
Each LNG heat exchanger requires at least one HOT and one COLD statement. An
unlimited number of HOT and COLD statements may be used. Each HOT or COLD
statement must declare at least one feed and one product stream. Optionally, the user
may specify either the duty or the outlet temperature of each cell, but at least one cell
must remain unspecified. All other entries are optional.
LNGHX UID=EX1
HOT CELL=HC1, NUMBER=3, . . .
HOT CELL=HC2, NUMBER=1, . . .
COLD CELL=CC1, . . .
COLD CELL=CC2, . . .
Cell HC1 is assigned cell number 3, and cell HC2 is assigned cell number 1.
By default, cell CC1 becomes cell number 2, and cell CC2 becomes cell
Table 13.3-1
Entries Allowed on DEFINE Statements
Keyword Description
DUTY(i) Duty of cell number “i” in millions of energy units per time
unit
TEMP(i) Outlet temperature of cell “i”
DP(i) Pressure drop of cell “i”
Examples
1: Specifying cell duty and outlet temperatures
Use an LNG heat exchanger to cool stream 1 to -50 F, stream 3 to -60 F, and remove 0.1
million Btu of heat from stream 2. Configure the exchanger such that cooling streams C1
and C2 emerge at the same temperature, determined by overall heat balance. A 1 psi
pressure drop applies to each cell.
LNGHX UID= LNG1
HOT FEED= 1, V=V1, L=L1, DP(PSI)=1.0, TEMP(F)= -50
HOT FEED= 2, V=V2, L=L2, DP(PSI)= 1.0, &
DUTY(BTU/H)=0.1
HOT FEED= 3, V=V3, L=L3, DP(PSI)=1.0, TEMP(F)= -60.0
COLD FEED=C1, V= V4, L= L4, DP(PSI)= 1.0
COLD FEED= C2, L= L5, DP(PSI)=1.0
HEAT EXCHANGER
Keyword Summary
Unit Identifier (required)
AIRCOOLHX UID=uid {NAME=text}
Feeds and Products (required)
SIDE(1 or TUBE) FEED=sid {,sid…}, M=sid {,sid…}, METH =setid
SIDE(2 or AIR) FEED=sid {,sid…}, M=sid {,sid…}, METH=setid
Parameters (required)
INT (index or id) value1, value2,….value33
B B B B B B
General Information
Air Cooled Heat Exchanger (ACE) is the heat transfer equipment, which uses air as the
cooling fluid. Air cooled heat exchangers are used in many process industries, especially
Petrochemical industries.
Air-cooled heat Exchangers have two sides, one is the tube side, which is the process
side and the other one is shell side, which is the airside. Air is supplied to the unit
operation using fans. These fans can be placed at the bottom or top of the unit operation.
If the fan is situated at the top then it is called induced draft type and if it is at the bottom of
the ACE then it is forced draft type arrangement.
Keyword Description
Unit Identifier (required)
AIRCOOLHX UID=uid {NAME=text}
Feeds and Products (required)
SIDE(1 or TUBE) FEED=sid {,sid…}, M=sid {,sid…}, METH =setid
SIDE(2 or AIR) FEED=sid {,sid…}, M=sid {,sid…}, METH=setid
Parameters (required)
Table 13.4-1
Integer Parameters
Index ID Description
1 IfDesign 0 – rating mode (default)
1 – design mode.
2 IfHotAir 0 – tube side hot (default)
1 – air side hot
3 IfCoCurrent 0 – countercurrent flow(default)
1 – cocurrent flow
4 iBWG Tube thickness defined by Birmingham Wire
Gauge (BWG) value.
The allowed range is 9 <= iBWG <= 18
5 iTubeSchedule Schedule thickness. Requires a PAR(TubeNPS)
entry.
6 nTubes Number of tubes per bundle (rating only)
7 nTubePass Number of tube passes per bundle
The allowed range is 1 <= nTubePass <= 16
8 nTubePassMin Minimum tube passes per bundle (design only)
9 nTubePassMax Maximum tube passes per bundle (design only)
10 iPattern Tube layout pattern
0 – inline (default)
1 – staggered
11 nTubeRow Number of tube rows per bundle (rating only)
12 nTubeRowMin Minimum number of tube rows per bundle (design
only)
In the keyword file, the integer after INT or PAR implies that the input begins from
that parameter number. For example, if the first two INT parameters are blank, the
Table 13.4-2
Real Number Parameters
Index ID Description
AreaTotal Effective area per bundle. This area covered by the
tube sheets and baffles is subtracted from the outside
1
area of the tubes. Includes the fin area if fins are
present. (rating only)
2 AreaMin Minimum area per bundle (design only)
3 AreaMax Maximum area per bundle (design only)
4 Uestimate Overall U-value estimate per unit of area.
Uscale The Overall U-value scaling factor applied to all heat
transfer coefficients. This scale factor is applied in
5
addition to the individual film coefficient scale factors.
(default = 1.0)
6 TubeLength Tube length (rating only)
7 TubeLenMin Minimum tube length (default = 24 ft, design only)
TubeLenMax Maximum tube length (default = 40 ft, design only)
8
allowed for the design.
TubeLenInc Tube length increments used in design (default = 2
ft).
PRO/II uses the maximum length to initiate the
9 design and reduces the length by the increment
specified if the tube side pressure drop and velocity
specifications cannot be met at the minimum number
of passes
TubeID Inside tube diameter (fine length units). If not
10 specified, this value is automatically computed from
the outside diameter and thickness or BWG entries.
11 TubeOD Outside tube diameter (fine length units).
12 TubeThick Tube wall thickness (fine length units).
TubeNPS Tube Nominal Pipe Size (NPS). Requires a Pipe
13
Schedule entry INT(iTubeSchedule).
AIRCOOLHX UID=SU525
SIDE(TUBE) FEED=3003, M=8003
SIDE(AIR) FEED=3004, M=8004
INT(iBWG) 16
INT(nTubes) 628
INT(nTubePass) 3
INT(nTubeRow) 4
INT(TubeMaterial) 1
Keyword Summary
Unit Identifier (required)
FURNACE UID=uid, {NAME=text}
General Information
The Furnace unit operation (sometimes refered to as the Fired Heater unit operation)
raises the temperature of fluid on one side by burning fuel on the other side. The furnace
model acts as a combustion reactor and heat exchanger.
Similar to a heat exchanger, it consists of two “sides”. Only heat transfer occurs across the
sides, not mass transfer. On the tube side (referred to here as the Process Side), the
process fluid to be heated is sent in and comes out from the exit of tube side. There will
be one or more hydrocarbon (fuel) and air/oxygen streams feeding the Combustion Side
of the furnace. These streams will be burned to produce a single product stream on the
combustion side. The following assumptions are made:
1. The hydrocarbons and carbon monoxide are completely converted to carbon
dioxide and water.
2. Any of the hydrogen sulfide present is converted to sulfur dioxide and water.
3. There is no re-circulation of flue gases in the burner chamber.
You can select different Thermodynamic systems for each of the two sides of the furnace.
The components CO2, H20, O2, SO2, N2 must appear on the component list
while simulating a furnace.
In the keyword file, the integer after INT or PAR implies that the input begins from
that parameter number. For example, if the first two INT parameters are blank (which they
always will be for the Furnace), the keyword would be INT (3) 1 where 1 is the entry for
the third INT parameter.
If a parameter does not have any value, a space is shown. For example:
PAR(1) 2, 1 , , , 2, 1, 0, ,1,.………..
INT Values
There is one INT entry for the furnace unit operation. Either an index number or id string
may be used to identify the starting position.
Table 13.5-1
Integer Parameters
Index ID Description
3 CORNUM Tubeside pressure drop
0 = Tube outlet pressure or pressure drop specified
directly
1 = Pressure drop correlation used
Table 13.5-2
Specification Selection Table
Column 1 Column 2 Column 3
Gas to tube heat transfer Gas to wall heat transfer
coefficient coefficient
Tube to process heat Wall to atmosphere heat
transfer coefficient transfer coefficient
Average tubeskin Wall temperature
temperature
Process outlet Wall heat loss or % firing Bridgewall Temperature
temperature or process duty lost through the wall
duty
Table 13.5-3
Real Number Parameters
Index ID Description
1 TTEMP Average tube skin temperature. Should be greater
than the process inlet temperature.
2 TOUT Process outlet temperature. Should be greater the
than process inlet temperature. Not permited with
PAR(DUTY) statement.
3 TWALL Furnace wall temperature. Should be greater than
the the ambient temperature.
4 PWQLO Percentage firing duty lost through wall.
5 BTEMP Bridgewall temperature (the temperature of the flue
gases leaving the furnace). Should be greater than
the tube skin temperature and the furnace wall
temperature.
6 TMAXimum Maximum average tubeskin temperature. Should be
greater than the tubeskin temperature.
7 DTMAXimum Maximum average delta temperature.
8 TAMBient The ambient temperature. The default is 76.73 F or
24.85 C ( = 298 K).
9 PRES Process side outlet temperature.
10 DP Process side pressure drop. Default is 0.0.
12 BTEStimate Estimated bridgewall temperature.
13 QLEStimate Estimated percent duty lost through wall.
14 TTEStimate Estimated average tubeskin temperature.
15 TESTimate Estimated process outlet temperature.
20 UAGT Gase to tube heat transfer coefficient.
21 UATU Tube to Process heat transfer coefficient.
22 UAGW This entry specifies the gas to wall heat transfer
coefficient
Gas to wall heat transfer coefficient should not be
less than or equal to zero.
23 UAWA Wall to atmosphere heat transfer coefficient.
27 C2 Constant “B”
28 C3 Constant “C”
FURNACE UID=F-01
SIDE(PROCESS) FEED=PF1, M=PP1
SIDE(COMBUSTION) FEED=CF1,CF2, M=CP1
INT(CORNUM) 0
PAR(TTEM) 697.
PAR(TOUT) 632.
PAR(TWAL) 1028.
PAR(PWQLO) 2.84
PAR(TMAX) 821.
PAR(TAMB) 298
PAR(PRES) 508.5
PAR(BTES) 1400
REACTOR
Keyword Summary
DTFEED(unit)=0.0 or TEMPERATURE(unit)=value
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0,
PHASE=L or V,
DP(unit)=0.0 or PRESSURE(unit)=value,
RXCALC {MODEL=STOIC or SHIFT or METHANATION},
{NOHBALANCE}
Each set of BASE, EQUILIBRIUM, and APPROACH statements must appear immediately
following the corresponding REACTION statement.
General Information
The equilibrium reactor unit operation simulates a reactor by solving the heat and material
balances for one or more simultaneous reactions based on stoichiometry, equilibrium and
approach to equilibrium data, and heat of reaction data. Results include reactant
conversions, product rates, and thermal conditions.
For most applications, the equilibrium reactor will operate in the general mode using user-
supplied reaction stoichiometry. A special form of the reactor module allows simulation of
methanation or shift reactor using built-in stoichiometry and heat of reaction data for
vapor-phase shift and methanation reactions. For the methanator model, simultaneous
reaction equilibria of methanation and shift reactions are solved.
The model allows one shift and one methanation reaction. Methane, carbon monoxide,
carbon dioxide, water, and hydrogen must all be present in the component list.
Options allow the reactor to operate isothermally at a specified temperature, at the feed
temperature, or adiabatically. Adiabatic operation allows specifying a fixed amount of heat
added or removed, and temperature limits may be imposed. Isothermal reactors compute
the duty required to satisfy an outlet temperature specification.
Input Description
Unit Identification (required)
EQUREACTOR UID=uid, {NAME=text}
The EQUREACTOR statement is required as the first statement of each equilibrium
reactor module. All entries are general to all unit operations and are described in Section
10.2.
VLLE Calculations
Rigorous modeling of two liquid phases is possible by specifying VLLE thermodynamics.
Refer to Section 10.2 for a description of how VLLE methods change the significance of
the L and W product entries.
DTFEED(unit)=0.0 or TEMPERATURE(unit)=value
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0,
PHASE=L or V,
DP(unit)=0.0 or PRESSURE(unit)=value,
MODEL This entry allows selection of special methanator and shift reactor
models. The STOIC option, which is the default, is used to identify
a general reactor with user defined stoichiometry from the reaction
Table 14.1-1
Allowed Reaction Specification Sets
Reactor Model Statement Status
STOIC RXSTOIC required
REACTION optional
BASE optional
EQUILIBRIUM optional
APPROACH optional
METHANATION REACTION optional
EQUILIBRIUM optional
APPROACH optional
SHIFT REACTION optional
EQUILIBRIUM optional
APPROACH optional
COMPONENT This entry specifies the base component used in the reaction
conversion report. The component must be involved in the
reaction as a reactant (not a product), and be present in the
reactor feed stream. It is defaulted to the base component of
heat of reaction data determined in the reaction data section.
EQUILIBRIUM(unit) A=value, B=value, C=value, D=value,
E=value, F=value, G=value, H=value
This statement is required for the stoichiometric model if it has not been specified for the
reaction in the reaction data section. Coefficients A, B, C, D, E, F, G, and H define the
equilibrium constant as a function of temperature:
ln (K eq ) = A + B / T + C * ln (T ) + D * T + E * T 2
+ F *T 3 + G *T 4 + H *T 5 14.1-2
14.1-3
C Pp CQqn...
K eq = 14.1-4
C Aa C Bb ...
where:
Ci = activity concentration of component i
B B
n
(pressure unit) , where n=(p+q+ ...) - (a+b+...), in a vapor phase reaction.
P P
14.1-5
A separate EQUILIBRIUM statement may be entered for each reaction. Keq has units of
(pressure units)-2 in the methanation reaction, but is dimensionless in the shift reaction. If
the EQUILIBRIUM statement is not input for the shift or methanation reaction, default
values of A and B used come from the National Bureau of Standards.
See the PRO/II Reference Manual for more information.
FRACTION Input values C0, C1, and C2 may appear in any combination. B B B B B B
APP = C0 + C1 * T + C2 * T2 B B B B B B P
converted in reaction
COR = Moles of carbon monoxide in
B B
product
COF = Moles of carbon monoxide in feed
B B
equilibrium
Examples
1: Water Gas Reaction (Equilibrium Calculations)
Model the water gas reaction shown above at 1530 K and a total pressure of 1
atmosphere. Under these conditions, the Keq is essentially unity (0.9999). The reactor
calculates heat of reaction from the enthalpy balance. The feeds to the reactor are as
follows:
The pressure for the reactor is assumed to be the lowest individual feed pressure.
The reactor outlet temperature is specified at 1530 degrees. The base component for the
reaction is CO. Since an APPROACH is not supplied, the reaction proceeds to equilibrium
quantities of products and reactants. The equilibrium constant is calculated from the
relationship:
Ln(Keq) = -0.0001
B B
RXDATA
RXSET ID=1
REACTION ID=1
STOICHIOMETRY 2,-1/1,-1/3,1/4,1
2: Shift Reactor
Model the shift reaction of a synthesis gas in stream F1 at 600 F and 90 psia. Use a
temperature approach of 50 F.
EQUREACTOR UID=S1, NAME=SHIFT ONLY
FEED F1
PROD V=V1
OPERATION PRESSURE(PSIA)=90, TEMPERATURE(F)=600
RXCALC MODEL=SHIFT
REACTION SHIFT
APPROACH DT=50
STREAM 1
COMPONENT Moles/hr
H2O 50
CO 4150
H2 12600
CO2 80
CH4 1420
N2 880
REACTOR
Keyword Summary
Unit Identification (required)
CONREACTOR UID=uid, {NAME=text}
DTFEED(unit)=0.0 or TEMPERATURE(unit)=value
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0,
DP(unit)=0.0 or PRESSURE(unit)=value,
RXCALC {MODEL=STOIC or SHIFT or METHANATION}, U U
XOPTION=STOP
General Information
The conversion reactor unit operation simulates a reactor by solving the heat and material
balances for one or more simultaneous reactions based on supplied stoichiometry,
fractional conversions and heat of reaction data. Results include reactant conversions,
product rates, and thermal conditions.
For most applications, the conversion reactor will operate in the general mode using user-
supplied reaction stoichiometry. A special form of the reactor module allows simulation of
methanation or shift reactor using built-in stoichiometry and heat of reaction data for
vapor-phase shift and methanation reactions.
Shift reaction: Methanation reaction:
←
CO + H 2 O→← CO2 + H 2 CO + 3H 2 → CH 4 + H 2 O
The model allows one shift and one methanation reaction. Methane, carbon monoxide,
carbon dioxide, water, and hydrogen must all be present in the component list.
The fractional conversion of the base component in each reaction may be defined as a
function of temperature. Options allow the reactor to operate isothermally at a specified
temperature, at the feed temperature, or adiabatically. Adiabatic operation allows
specifying a fixed amount of heat added or removed, and temperature limits may be
imposed. Isothermal reactors compute the duty required to satisfy an outlet temperature
specification.
Input Description
The CONREACTOR statement is required as the first statement of each conversion
reactor module. All entries are general to all unit operations and are described in Section
10.2.
FEED sid, {sid, . . .}
PRODUCT V=sid or L=sid ,{W=sid, S=sid},
or
VLLE Calculations
Rigorous modeling of two liquid phases is possible by specifying VLLE thermodynamics.
Refer to Section 10.2 for a description of how VLLE methods change the significance of
the L and W product entries.
DTFEED(unit)=0.0 or TEMPERATURE(unit)=value
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0,
DP(unit)=0.0 or PRESSURE(unit)=value
All entries on the OPERATION statement are optional. If omitted, the reactor executes in
ISOTHERMAL mode at the temperature of the combined feed.
ISOTHERMAL These optional entries specify the thermal calculation mode.
or ISOTHERMAL calculates the required reactor duty by heat
ADIABATIC balance based on a fixed outlet temperature, which may be
defined with either the TEMP or DTFEED entry. ADIABATIC
calculates the outlet temperature that satisfies a fixed total
outlet enthalpy. A fixed duty may be defined using the DUTY
entry. The default mode is ISOTHERMAL.
PRESSURE The PRESSURE entry specifies the pressure of the reactor
or products, while DP is the pressure drop below the pressure
DP of the combined feed. The default is DP=0.0.
TEMP In ISOTHERMAL mode only, TEMP defines a fixed
or temperature for the reactor products, while DTFEED
DTFEED specifies a temperature increase over the temperature of the
combined feed. When none of TEMP, DTFEED, or
ADIABATIC are given, the reactor operates in ISOTHERMAL
mode at DTFEED=0.0.
DUTY Available for an ADIABATIC reactor only, DUTY defines the
amount of heat transferred to the reactor from an external
source. Values must be entered in millions of energy units
per time unit. Positive values indicate heat input to the
reactor. By default, DUTY = 0.0.
XOPTION=STOP
The RXCALC statement allows selection of the reactor model, basis for input conversion
data, and error handling option. All entries are optional.
A+B→C
B+C→D
If fractional conversions are specified for both reactions
based on conversion of B, then the amount of product D is
dependent upton the input order of the two reactions.
Table 14.2-1
Error Condition Handling Options
XOPTION= Description of Corrective Action
STOP(default) Stop all calculations. Set solution flag to “unit not
solved”.
NORX
No reaction occurs. Set solution flag to “unit solved”.
Table 14.2-2
Allowed Reaction Specification Sets
Reactor Model Statement Status
STOIC RXSTOIC required
REACTION required
BASE required
CONVERSION optional
METHANATION REACTION optional
CONVERSION optional
SHIFT REACTION optional
CONVERSION optional
COMPONENT This entry identifies the base component used in the reaction
conversion calculations. The component must be involved in
the reaction as a reactant (not a product), and be present in
the reactor feed stream. If component ID entries for this
keyword are missing, the stoichiometric coefficients for the
REACTION are interpreted as absolute moles reacted.
One CONVERSION statement is allowed for each reaction. The fraction of the base
component reacted (CO for shift and methanation reactions) is given by:
2
Fraction converted = C0 + C1*T + C2*T
B B B B B B P P
where T is temperature. Input parameters C0, C1, and C2 are dimensionally dependent B B B B B B
upon the temperature unit. For the stoichiometric or shift model, if the CONVERSION
statement is not present, the default values C0=1.0, C1=0.0, and C2=0.0 indicate complete B B B B B B
conversion. For the methanation model, default values of the conversion factors are
C0=1.0, C1=0.0, and C2=0.0 for the methanation reaction, and C0=0.0, C1=0.0, and C2=0.0
B B B B B B B B B B B B
Examples
1: HF Alkylation Unit (Conversion Calculations)
Alkylate feed stream 1 with isobutane from recycle stream 2 to produce high octane motor
fuel. Use a pressure of 40 psia and a temperature of 65É F. Remove vapor product as
stream 3 and liquid product as stream 4. The following components are present:
The REFPHASE entry on the HORX statements redefine the reference phase to
liquid from the default vapor. The heats of reaction (in thousands of energy units per mole
of reference component reacted) are negative, indicating exothermic reactions. For the
isothermal reactor, product temperature is specified, so the reactor computes the required
cooling duty.
2: Shift Reactor
• Model the shift reaction of a synthesis gas in stream F1 at 600É F and
90 psia. Use a fractional conversion of 20 percent.
CONREACTOR UID=S2, NAME=SHIFT ONLY
FEED F1
PROD V=V2
OPERATION PRESSURE(PSIA)=90, TEMPERATURE(F)=600
RXCALC MODEL=SHIFT
REACTION SHIFT
CONVERSION 0.20
4: Methanator
Methanate synthesis gas at a temperature of 600É F and a pressure of 90 psia. Convert
75 percent of the CO to CH4, and 20 percent of the CO to CO2.
The RXCALC statement is required to enable the methanator model. The REACTION
METH and REACTION SHIFT statements allow conversion statements for the two
reactions.
CONREACTOR UID=M2, NAME=SECOND STAGE
FEED 1
PROD V=V2
OPERATION PRESSURE(PSIA)=90, TEMPERATURE(F)=600
RXCALC MODEL=METHANATION
REACTION METHANATION
CONVERSION 0.75
REACTION SHIFT
CONVERSION 0.20
REACTOR
Keyword Summary
Unit Identification (required)
GIBBS UID=uid, {NAME=text}
DP(unit)=0.0 or PRESSURE(unit)=value,
TEMPERATURE(unit)=value
ISOTHERMAL,
U U
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0,
PARAMETER MAXTRIALS= 50, TOLERANCE=0.0001,
FIBTOL= 0.01, PROFLAG=0,
PHYSPROP=1
TRIAL START=6, FREQUENCY=4,
INITIALPHASE=VL or V or L or LL or VLL,
U U
ELIMINATE=1.0E-6
General Information
The Gibbs reactor module simulates a single-phase or multiphase reactor by solving heat
and material balances. Using minimization of Gibbs free energy, it calculates product
rates, compositions, and thermal conditions subject to an overall material balance. After
converging calculations in a declared vapor or liquid phase, an isothermal flash
determines the actual phase and prints a warning if the actual and declared phases
disagree. Mixed phase operation (the default) simultaneously determines the phase split
and the chemical equilibrium. The resulting product may be vapor, liquid, or mixed phase,
but no warning is issued.
The reactor may operate isothermally at a specified temperature or at the feed
temperature. Both temperature and pressure may be set to values different from those
derived from the feed stream(s). Adiabatic operation allows adding or removing a fixed
amount of heat and accepts limits imposed on operating temperature.
The Gibbs reactor considers all components given in the Component Data category,
unless constraints are imposed. Currently thermodynamic methods with K-value
calculated from SOUR, GPSWATER, AMINE, KDATA, and user-added subroutines are
not supported by the Gibbs reactor unit. Use of Henry’s law in the selected
Input Description
Unit Identification (required)
GIBBS UID=uid, {NAME=text}
The GIBBS statement must appear as the first statement of each GIBBS reactor module.
All entries are general to all unit operations, as described in Section 10.2.
VLLE Calculations
Rigorous modeling of two liquid phases is possible by specifying VLLE thermodynamics.
Refer to Section 10.2 for a description of how VLLE methods change the significance of
the L and W product entries.
DP(unit)=0.0 or PRESSURE(unit)=value,
TEMPERATURE(unit)=value
or
ADIABATIC, DUTY(unit)=0.0,
TMAX(K)=3000, TMIN(K)=1.0
All entries on the OPERATION statement are optional. If omitted, the reactor executes in
ISOTHERMAL mode at the temperature and pressure of the combined feed.
PHASE This optional entry specifies the reaction phase, where L=liquid,
V=vapor, VL=vapor-liquid, LL=liquid-liquid, VLL=vapor-liquid-
liquid, and M=mixed phase. For PHASE=M, either specified or
by default, the reactor determines the correct phase based on
the minimization of Gibbs free energy.
PRESSURE The PRESSURE entry specifies the pressure of the reactor
or products, while DP is the pressure drop below the pressure of
DP the combined feed. The default is DP=0.0.
TEMPERATURE When used with the ISOTHERMAL mode of operation, the
TEMPERATURE entry defines the outlet temperature of the
reactor products. When used with the ADIABATIC mode of
operation, the TEMPERATURE entry defines an initial
temperature estimate. When both the TEMP and ADIABATIC
entries are missing, the reactor operates at the temperature of
the combined feed.
ISOTHERMAL This keyword specifies the default mode of operation. In this
or mode, the TEMPERATURE entry may define the operating
ADIABATIC temperature at which the duty is calculated. The DUTY, TMAX,
and TMIN entries are invalid in ISOTHERMAL mode. Presence
of the ADIABATIC keyword specifies adiabatic operation, which
calculates the outlet temperature that satisfies the overall
energy balance. This option allows the DUTY, TMAX, and TMIN
entries. The default mode is ISOTHERMAL operation.
DUTY Available for an ADIABATIC reactor only, DUTY defines the
amount of heat transferred between the reactor and an external
medium. Values must be entered in millions of energy units per
unit time. Positive values indicate heat input to the reactor. By
default, DUTY = 0.0.
Table 14.3-1
Product Rate Starting Estimate Options
PROFLAG= Description
0 (default) PRO/II default initial estimate.
1 Average all the feeds.
2 Use values given by the REACTANTS entry on the
ELEMENT statement.
PHYSPROP The PHYSPROP entry selects the option used for handling
physical property evaluations. Available options are listed
in Table 14.3-2.
ELIMINATE=1.0E-6
The TRIAL statement and all its entries are optional. It provides options for handling the
case when the number of phases in the reactor is unknown (PHASE=M), and reaction
phase is determined by PRO/II using iterative calculations.
START This entry specifies the calculation iteration number when the
phase split is first attempted. The default is the sixth iteration.
FREQUENCY This specifies the number of iterations between cycles of
phase split trial. The default is 4.
INITIALPHASE This entry is the initial guess of the fluid phases in the reactor.
Allowed phases are VL or V or L or LL or VLL. the default is
VL.
ELIMINATE This entry specifies the threshold level used to determine the
existence of a fluid phase. A fluid phase is considered to exist
in the reactor only if the molar ratio of a fluid phase to the
total fluid is greater than the threshold value. The default
value is 1.0E-6.
Constituent groups
cno Component Formula
H2
B B O2 B B C N2
B B
For this example, all the components are present in the Component
Library, so the COMPONENTS and NAMES entries are not normally required. If
any NONLIB or PETRO components are present, the COMPONENT entry is
required.
14.3-1
There are 3 atomic species (C, H, Cl), but C and H always occur in a 1:2 ratio. Therefore,
the number of effective atoms is 2 (Cl and CH2). These two effective atoms represent the
three chemical species, so only one chemical reaction is allowed.
REACTION rxid
The REACTION statement is the first statement in a pair of statements specifying a single
reaction. It supplies the ID of the reaction defined in the reaction data section.
APPROACH DT(unit)=0.0 or EXTENT(basis,unit)=i,value
The APPROACH statement optionally specifies the temperature approach or extent data
for the reaction. This statement should immediately follow the REACTION statement.
1 2 3 4 (cno)
These conditions can be defined using a REACTION statement and an APPROACH
statement:
The reaction stoichiometry must have been defined earlier for the reaction within a
reaction set in the reaction data section.
Examples
1: Shift Reaction (Equilibrium Calculations)
Model the water gas reaction:
in the vapor phase at the temperature and pressure of the combined feed. The
compositions of feed streams 1 and 3 are:
Rates, Moles/Hr
cno Component Stream 1 Stream 3
1 H20
B B 1970 5910
2 C0 1580 0
3 H2 B B 6880 0
4 C02 B B 960 0
RATES, MOLES/HR
cno Component Feed Est. Product
Stream 7 Stream 9
1 H20
B B 50 4000
2 C0 4150 50
3 H2 B B 12600 200
4 C02 B B 80 100
5 CH4 B B 1420 6000
6 N2 B B 880 0
1. Use ADIABATIC operation to remove heat at a rate of 380 million Btu/hr of heat.
2. Estimate the reaction temperature at 650 F.
3. Operate at a pressure of 90 psia.
4. Set the overall temperature approach to 20 F below the system equilibrium
temperature.
5. Exclude nitrogen from all reactions.
6. Use the product rate estimates shown above.
7. Use only the invariant elemental groups H2, O2, and C.
8. Limit the extent of the shift reaction to 140 pounds of carbon monoxide (CO).
All the components are present in the Component Library, so the COMPONENTS
and NAMES entries are not required. Also, the value of DUTY is negative, indicating heat
removal.
REACTOR
Keyword Summary
Unit Identification (required)
PLUGFLOW UID=uid, {NAME=text}
DPIN(unit)=0.0 or PIN(unit)=value,
DP(unit)=0.0 or PRESSURE(unit)=value, POINTS=10,
THERMAL, TEMPERATURE(unit)=value
U U
or
ADIABATIC, DUTY(unit)=0.0,
STEPSIZE(unit)=value},
or
{GEAR, TOLERANCE(PCT)= 0.1},
or
{LSODA, TOLERANCE (PCT)=0.1},
{KINETICS(POWERLAW or SUBROUTINE or
U U
PROCEDURE) =id}
TPROFILE(lbasis/lunit,tunit) location, temp { / location, temp / ... },
and/or
PPROFILE(lbasis/lunit,punit) location, pres { / location, pres / ...},
or
PROFILE(lbasis/lunit, tunit,punit) location, temp, pres {/location, temp, pres / ... },
PRINT PATH
General Information
The PLUGFLOW reactor simulates a tubular reactor exhibiting plug flow behavior. The
two basic assumptions defining plug flow are (1) no axial (longitudinal) mixing or heat
transfer and (2) equal transit time through the reactor for all fluid elements.
This unit calculates conversions for simultaneous reactions. Reaction rates are
determined using either the built-in power law model or a custom kinetics algorithm
provided as a User-Added Subroutine or In-Line Procedure. See Section 10.7 for a
Table 14.4-1
Plugflow Reactor Input Requirements
Mode of Operation
STATEMENT THERMAL ADIABATIC COCURRENT COUNTER-
CURRENT
PLUG, FEED, Required Required Required Required
and
PRODUCT
RXSTOIC Required Required Required Required
REACTION, Optional Optional Optional Optional
KINETICS,
KORDER
OPERATION Required Required Required Required
RXCALC Optional Optional Optional Optional
PROFILE or Optional
TPROFILE
PPROFILE Optional Optional Optional Optional
PRINT Optional Optional Optional Optional
OPENPIPE Optional Optional Optional Optional
PACKING Optional Optional Optional Optional
HOT or COLD Required Required
Input Description
Unit Identification (required)
PLUGFLOW UID=uid, {NAME=text}
The PLUGFLOW statement must appear as the first statement of each PLUGFLOW
module. All entries are described in Section 10.2.
VLLE Calculations
The PLUGFLOW reactor does not support rigorous modeling of two liquid phases. VLLE
thermodynamics do not apply to this module.
DPIN(unit)=0.0 or PIN(unit)=value,
DP(unit)=0.0 or PRESSURE(unit)=value, POINTS=10,
THERMAL, TEMPERATURE(unit)=value
U U
or
ADIABATIC, DUTY(unit)=0.0,
or
COCURRENT and U(unit)=1.0
or
COUNTERCURRENT and U(unit)=1.0
The OPERATION statement is required to define the LENGTH and DIAMETER of the plug
flow reactor. All other entries are optional. Table 14.4-2 lists the input requirements.
POINTS The POINTS entry specifies the number of points along the
length of the reactor included in the reactor profile printout. A
maximum of 100 points is allowed. The default is 10 points.
(English units).
FUGACITY},
or
{GEAR, TOLERANCE(PCT)= 0.1},
or
{LSODA, TOLERANCE (PCT)=0.1},
{KINETICS(POWERLAW or SUBROUTINE or
U U
PROCEDURE) =id}
The RXCALC statement and all entries on it are optional. Options allow declaring the
activity basis and the integration method, and defining various calculation parameters.
Other entries identify kinetic models supplied by the user as in-line procedures or as User-
Added Subroutines.
loc This is the linear distance along the length of the reactor
tube from the reactor entrance. By default, location is
the actual distance along the reactor length.
temp This entry is a temperature value at the position
specified by the “loc” entry.
pres This entry is a pressure value at the position specified
by the “loc” entry.
PRINT PATH
The PRINT statement controls printout options. It is optional.
Table 14.4-3
Open Pipe Pressure Drop Correlation
DPCORR Description
BBM Beggs-Brill-Moody.
BBP Beggs-Brill-Moody with Palmer modification to liquid holdup
OLIMENS Olimens
DEF Dukler-Eaton-Flanigan
MB Mukherjee-Brill
GRAY Gray
HB Hagedorn-Brown
DP1 or DP2 User-Added Subroutine
Table 14.4-4
Pressure Drop Correlation
DPCORR Description
ERGUN Ergun equation for packed beds.
DP1 or DP2 User-Added Subroutine
Table 14.4-5
Define Statement <param> Entries
Examples
1: Thermal mode operation
React 85 lb-moles of a 4 to 1 mixture of chlorine and propylene vapor to form allyl chloride
in a plug flow reactor having 4 tubes, each 20 feet long, and an inside diameter of 11.94
inches. Assume an inlet pressure of 29.4 psia with a pressure drop of 10 psi, and use the
simple temperature profile given below. The following reaction data apply:
REACTIONS:
1.
2.
ates of CI2 reaction (r1) in lb-moles ft3 at 29.4 psia:
B B B B P P
[
r 1 = 2.1*1011 * e − 27009.6 / RT * [C cl ]* C prop ]
r 2 =1.19 *10 7 * e −6811.98 / RT * [C cl ]* C prop [ ]
Heat of reaction at 179 F:
Temperature profile,
reactor inlet:
reactor mid-point:
reactor outlet: 390 F
500 F
800 F
Problem input includes the following COMPONENT, STREAM, and REACTION data:
TITLE
COMPONENT DATA
LIBID 1, CL2 / 2, PRLN / 3, ACL / 4, 12PR / 5, HCL
STREAM DATA
2: Adiabatic Operation
Operate the plug flow reactor of Example 1 as an adiabatic reactor. Note that the
TPROFILE statement is invalid for adiabatic operation.
PLUG UID= RX2
FEED 1
PRODUCT V= V2
OPERATION LENGTH(FT)= 20, DIAMETER(INCH)= 11.94,&
ADIABATIC, DP(PSI)= 10, PHASE= V, TUBES= 4
RXSTOIC RXSET=RS1
REACTION 1
KINETIC COMPONENT=1
REACTION 2
KINETIC COMPONENT= 1
Keyword Summary
Unit Identification (required)
CSTR UID=uid, {NAME=text}
VOLUME(unit)=value or VMAX(unit)=value,
DP(unit)= 0.0 or PRESSURE(unit)=value,
{TEMPERATURE(unit )=value}
ISOTHERMAL ,
U U
or
ADIABATIC and DUTY(unit)= 0.0,
TMAX(K)= 3000, TMIN(K)= 1.0
PARTIALPRESSURE or FUGACITY},
{LIQUID= CONCENTRATION or FUGACITY or
U U
ACTIVITY}
{KINETICS(POWERLAW or SUBROUTINE or
U U
PROCEDURE) =id}
NONVOLATILE CHARGE (M or W) = i, value { /j, value ...} or
U U
Tolerances (optional)
TOLERANCE TEMP (F) = 0.1, COMP = 1.0E-5, ENTH = 1.0E-4
General Information
The CSTR module simulates a continuously fed, stirred tank reactor. It assumes that the
stirring results in perfect mixing. The module may operate in adiabatic mode with or
without heat duty specified, or in (the default) isothermal mode at a specified temperature
or at the feed temperature, or in the constant volume operation for the boiling pot model.
This module calculates conversions for simultaneous reactions. Reaction rates are
expressed either with a power law model or through the use of customized kinetic reaction
models provided as User-added Subroutines or In-Line Procedures. See Section 10.7 for
a discussion on In-Line Procedures. Also refer to the PRO/II Data Transfer User-added
Subroutines User’s Guide for further information about installing user-supplied
subroutines.
Input Description
Unit Identification (required)
CSTR UID=uid, {NAME=text}
The CSTR statement is required as the first statement of each reactor module. All entries
are general to all unit operations and are described in Section 10.2.
VLLE Calculations
The CSTR does not support rigorous modeling of two liquid phases. VLLE
thermodynamics do not apply to this module.
Solids Handling
The CSTR does not support solid phase calculations.
COMPONENT This entry identifies the base component used in the reaction
conversion report. The component must be involved in the
reaction as a reactant (not a product). Its default is the base
component of heat of reaction in the reaction data section.
The kinetic parameters, PEXP, ACTIVATION, and TEXPONENT, if input on the
KINETIC statement, are used to overwrite values of these parameters previously
input in the reaction data section. If no kinetic data set was entered for the
reaction in the reaction data section, then the defaults given below are used.
PEXP This is the preexponential (frequency) factor for the rate
expression of the power law kinetics model. The default value
is PEXP=1.0 with all units defaulted to the units determined
by the DIMENSION statement in the General Data category.
VOLUME(unit)=value or VMAX(unit)=value,
DP(unit)= 0.0 or PRESSURE(unit)=value,
{TEMPERATURE(unit )=value}
ISOTHERMAL ,
U U
or
ADIABATIC and DUTY(unit)= 0.0,
TMAX(K)= 3000, TMIN(K)= 1.0
The OPERATION statement is required to define the VOLUME of the reactor vessel. All
other entries are optional. Input requirements are listed in Table 14.5-1.
VOLUME This entry specifies the volume of the reacting phase. For the
vapor and liquid models, VOLUME is assumed to be the
METRIC or SI.
DP DP denotes the pressure drop at the entrance to the reactor
or below the pressure of the combined feed. Alternatively,
PRESSURE PRESSURE directly specifies the reactor pressure. The
reactor always operates at constant pressure. If both
PRESSURE and DP are omitted, the reactor operates at the
pressure of the combined feed, and DP = 0.0.
VMAX This optional entry defines the maximum reaction (liquid)
phase volume for the boiling pot model to be used in
calculating the reaction phase volume. The default is two
times the estimated volume (VEST) or 100 m3 if no estimated
volume is given. Default dimensions are ft3 for ENGLISH and
m3 for METRIC or SI.
Table 14.5-1
OPERATION Statement Input Requirements
Mode of Operation
VAPOR or LIQUID BOILING POT
KEYWORD ISO ADIA ISO ADIA VOLUME
PHASE required required required required required
DP optional optional optional optional optional
PRESSURE optional optional optional optional optional
VOLUME required required — — required
ISOTHERMAL required — required — —
ADIABATIC — required — required —
TEMPERATURE optional optional optional optional —
DUTY — optional — optional —
TMIN — optional — optional optional
TMAX — optional — optional optional
VMAX — — optional optional —
PARTIALPRESSURE or FUGACITY},
{LIQUID= CONCENTRATION or FUGACITY or
U U
ACTIVITY}
{KINETICS(POWERLAW or SUBROUTINE or
U U
PROCEDURE) =id}
The RXCALC statement and all entries on it are optional. Options allow declaring the
activity basis. Other entries identify kinetic models supplied by the user as In-Line
procedures or as User-Added Subroutines.
VAPOR This entry specify the vapor phase activity basis for the reaction
rate calculation. The allowed options are molar concentration,
Tolerances (optional)
TOLERANCE TEMP(value) = value, COMP = value, ENTH = value
The optional TOLERANCE statement allows specification of criteria of solution for the
boiling pot reactor mode.
TEMP This entry specifies the temperature tolerance between the calculated
reactor temperature and the calculated product dew point. The
default is 0.1°F and the allowable range is 0.01 to 1.0°F.
COMP This entry specifies the component mole fraction tolerance for the
Table 14.5-2
Define Statement <param> Entries
Keyword Statement Description
ACTIVATION( i ) KINETIC Activation energy of reaction i
DP OPERATION Pressure drop below combined feed to
the reactor inlet
DUTY OPERATION Duty of an adiabatic reactor
PEXP( i ) KINETIC Frequency factor of reaction i
PRESSURE OPERATION pressure of the reactor
TEMPERATURE OPERATION Isothermal reactor temperature
VOLUME OPERATION Total volume of reactor vessel
TMAX OPERATION Maximum allowable reactor
temperature
TMIN OPERATION Minimum allowable reactor temperature
VMAX OPERATION Maximum reaction phase (liquid)
volume for boiling pot model
RDATA(i) RDATA Real data for user-added kinetics
Examples
1: Adiabatic operation
React 85 lb-moles of a 4 to 1 mixture of chlorine and propylene vapor to form allyl chloride
in an adiabatic CSTR having a volume of 83 cubic feet. Assume the reactor operates at
the feed pressure of 29.4 psia with a maximum operating temperature of 1200 F. The
REACTIONS:
1.
2.
Rates of CI2 reaction (r1) in lb-moles ft3 at 29.4 psia:
B B B B P P
[
r1 = 2.1*1011 * e − 27009.6 / RT * [C cl ]* C prop ]
r2 =1.19 *10 7 * e −6811.98 / RT * [C cl ]* C prop [ ]
Heat of reaction at 179 F:
Problem input includes the following COMPONENT, STREAM, and REACTION data:
TITLE
COMPONENT DATA
LIBID 1, CL2 / 2, PRLN / 3, ACL / 4, 12PR / 5, HCL
STREAM DATA
PROP STREAM= 1, TEMPERATURE(F)= 390, &
PRESSURE(PSIA)= 29.4, RATE= 85, COMPOSITION= 0.2 / 0.8
RXDATA
RXSET ID=RS1
REACTION ID=1
STOICHIOMETRY 1,-1/2,-1/3,1/5,1
HORX HEAT=-48, REFCOMP=1, REFPHASE=V, REFTEMP(F)=179
KINETIC PEXP=2.1E11, ACTIVATION=27.0096
KPHASE DEFAULT=V
REACTION ID=2
STOICHIOMETRY 1,-1/2,-1/4,1
HORX HEAT=-79.2, REFCOMP=1, REFPHASE=V, REFTEMP(F)=179
KINETIC PEXP=1.19E7, ACTIVATION=6.81198
KPHASE DEFAULT=V
The unit operation input data are:
CSTR UID= CST1
FEED 1
PRODUCT V= V1
OPER VOLUME(CUFT)= 83, ADIABATIC, PHASE= V, &
2: Isothermal operation
Hydrolyze acetic anhydride in two isothermal stirred tank reactors operating at the feed
temperature of 15 C. The volume of the first reactor is 3.84 m3, and the volume of the
second is 30 m3. The feed to the first reactor consists of 6 m3 per minute of acetic
anhydride and water in a volumetric ratio of 1:7.5. The reaction is:
For this dilute solution, assume the rate of reaction of acetic anhydride is:
3
reaction rate, kg-moles/m -min = 9.6 * C aa
P P B B
The unit operation input data appears below. Note reactant 2 has a power law exponent of
zero, resulting in a concentration term of unity for water. Also, the reaction activation
energy is zero. Heat of reaction is computed using heat of formation data from the
Component Library.
ELECTROLYTE FUEL
CELL
Keyword summary:
Unit identification (required)
FUELCELL UID=uid, {NAME=text}
Operating parameters
Steam Temperature is the temperature of the humidifier steam
Steam Pressure is the pressure of the humidifier steam
Liquid Mole Fraction is the liquid mole fraction of the humidifier steam, no entry for pure
gas or pure liquid
Operating Temperature is the cell temperature
Stoichiometric Coefficient is optional. If supplied, it sets the rate of O2 in the Anode feed
B B
Terminology
The Voltage – Current Density Characteristic Equation is:
U = U0 – b*J – R*ln(J)
B B
U is the Voltage in mV
U0 is the voltage at current density = zero
B B
Coefficient b is mV /(mA/cm2)
J is the current density in mA/cm2
Coefficient R is mV/ln(mA/cm2)
J is the current density in mA/cm2
Coefficient R is mV/ln(mA/cm2)
In the Anode side, the model calculates the stream data for the feed, the Humidified feed,
the Temperature Controlled feed, and the product. On the Cathode side, the model
calculates the stream data for the feed, the Compressed feed, the Humidified feed, the
Temperature Controlled feed, and the product. Results also include a detailed Reaction
Energy report and a detailed heat balance with efficiencies and electric power generation.
For example,
METHOD ..., KVALUE(SLE)=DATA, DIFFUSIVITY=DATA, &
TRANS=PETRO
selects the user-supplied solubility and diffusivity data and petroleum based transport
properties.
METHOD ..., KVALUE(SLE)=VANTHOFF, DIFFUSIVITY=WILKE, &
TRANS=PURE
selects the van't Hoff predictive solubility method, the Wilke-Chang diffusivity method, and
pure component based transport properties. See Section 2.7, Solid Solubility Methods, of
the SIMSCI Component and Thermodynamic Input Manual for more input considerations.
Keyword Summary
Unit Identification (required)
DRYER
T UID=uid, {NAME=text} T T T
PROD
T OVHD=sid, BTMS=sid T T T
or
TDP(unit)=0.0 or PRES(unit)=value,
T T T
DUTY(unit)=value, {TEST=value}
T T T T
or
TEMP(unit)=value, DUTY(unit)=value,
T T T T
{PEST(unit)=value}
T T
or
TEMP (unit)=value, {PEST(unit)=value}
and
DESIGN
T VFRACTION(WT or M)=value, PHASE= T or L, T T T U U
or
RATE(WT or M,unit)=value, OVHD or BTMS,
T T U U T T T T
PHASE=T or L
T T U U
or
MOISTURE(WT or M)=value, BTMS,
T T U U T T
or
FRACTION(WT or M)=value and COMPONENT=i, j ,
T T U U T T
{RTOL=0.01 or ATOL=value}
T T T T
or
DEFINE <param> AS STREAM=sid, <prop>, {<op>,<ref>}
T T T T
General Information
The DRYER is used to decrease the liquid content of a stream containing solids.
Generally, the liquid being removed is water. The DRYER may be operated at a fixed
temperature and pressure or at a fixed heat duty requirement. Alternatively, the pressure
or temperature may be fixed and a design specification placed on one of the product
streams, generally, the dried solid stream.
Consult the PRO/II Reference Manual for a description of the DRYER computational
algorithm.
Input Description
Unit Identification (required)
DRYER UID=uid, {NAME=text}
T T T T
This must be the first statement of a DRYER unit. Section 10.2, Unit Operation Input,
describes all optional entries.
PROD
T OVHD=sid, BTMS=sid
T T T
The DRYER always has two products. The overhead product consists of the volatile
components removed from the feed(s) and is in the vapor phase. The bottom stream is
the dried stream, which is a mixed phase stream containing liquids and solids.
OVHD The vapor product from the DRYER.
BTMS The dry liquid/solid product from the DRYER.
or
DP(unit)=0.0 or PRES(unit)=value,
T T T T
DUTY(unit)=value, {TEST=value}
T T T T
or
TEMP(unit)=value, DUTY(unit)=value, {PEST(unit)=value}
T T T T T T
PRES Used to fix the operating pressure of the DRYER. The default is
or a pressure drop of 0.0.
DP
TEMP
Used to fix the operating temperature of the DRYER.
DUTY
Used to fix the duty of the DRYER in millions of energy units per
time unit. Positive value indicates that the heat is added.
TEST
Used to provide an estimate of the operating temperature of the
DRYER when PRESSURE is specified. This is optional.
PEST
Used to provide an estimate of the operating pressure of the
DRYER when the TEMPERATURE is specified. This is
optional.
Using a DESIGN specification:
OPERATION
T DP(unit)=0.0 or PRES(unit)=value, TEMP(unit)=value
T T T T T
or
TEMP (unit)=value, {PEST(unit)=value}
and
DESIGN
T VFRACTION(WT or M)=value, PHASE= T or L, T T T U U
or
RATE(WT or M,unit)=value, OVHD or BTMS,
T T U U T T T T
PHASE=T or L
T T U U
or
MOISTURE(WT or M)=value, BTMS,
T T U U T T
or
FRACTION(WT or M)=value and COMPONENT=i, j ,
T T U U T T
{RTOL=0.01 or ATOL=value}
T T T T
When a DESIGN specification is used, the OPERATION statement defines either the
temperature or the pressure, but not both. The OPERATION statement entries are
described above.
Except for the case where the fraction of the feed vaporized (VFRAC) is specified, the
DESIGN specification is made either on the overhead or on the bottom stream, and,
therefore, either the OVHD or the BTMS keyword must be used.
PHASE
When BTMS is used with a RATE specification, the default
is the total liquid and solids (PHASE=T) bottom stream
rate. Alternatively, PHASE=L may be selected, in which
case the RATE refers to the liquid portion of the bottom
stream.
Similarly, when a VFRAC specification is used, the default
is the fraction of the total (PHASE=T) feed vaporized.
Alternatively, PHASE=L may be selected, in which case
the VFRAC specification refers to the fraction of the liquid
portion of the feed that is vaporized.
ATOL
The absolute tolerance for the specification.
RTOL
The relative tolerance for the specification. The default is
RTOL=0.01 or 1 percent.
VFRACTION The fraction of the feed vaporized on a weight (WT) basis
or a molar (M) basis. The default is weight. Molar may only
be used if all solids have their molecular weights defined.
The fraction may refer either to the total feed rate
(PHASE=T and default) or to the liquid portion of the feed
(PHASE=L). The BTMS keyword is not allowed with
VFRAC.
RATE
The flowrate of either the OVHD or BTMS stream on a
weight (WT) basis or a molar (M) basis. The default is
weight. Molar may only be used if all solids have their
molecular weights defined. If COMPONENT is also used,
then rate refers to the flowrate of a component or group of
components. When RATE is used with the BTMS keyword,
the rate may refer either to the total BTMS rate (PHASE=T
and default) or to the liquid portion of the BTMS rate
(PHASE=L).
MOISTURE
The moisture content of the BTMS stream on a weight
(WT) basis or a molar (M) basis. The default is weight.
FRACTION
The fraction of a particular component or group of
components in the OVHD or BTMS stream on a weight
(WT) basis or a molar (M) basis. The default is weight.
Molar may be used only if all solids have their molecular
weights defined. The COMPONENT entry is also required.
PHASE=T is not allowed with this specification. PHASE=L
must be entered.
PPM
The parts per million of a particular component or group of
components in the OVHD or BTMS stream on a weight
(WT) basis or a molar (M) basis. The default is weight.
Molar may be used only if all solids have their molecular
weights defined. The COMPONENT entry is also required.
PHASE=T is not allowed with this specification. PHASE=L
must be entered.
or
DEFINE
T T <param> AS STREAM=sid, <prop>, {<op>,<ref>}
T T
DRYER parameters TEMP, PRES, DUTY, and DP may be defined relative to any
available stream<reference>property (Table 10.2-2) or unit operation <reference>
parameters (Table 10.2-3). The DRYER supports a maximum of two DEFINE statements.
Examples are given at the end of this section. Refer to Section 10.5 for a discussion of the
DEFINE construct.
When more than one thermodynamic method set appears in the problem, the METHOD
statement may be used to choose the set applicable to this unit operation. Refer to
Section 10.2 for information on defining and selecting thermodynamic sets for unit
operations.
FEED F101
T T
OPERATION PRES(BAR)=1.0
T T
2: Desiccator
Stream FX is dried to produce a dry solid stream SX and a vapor stream VX. Component
4 is controlled to 500 parts per million by weight in the solid stream by the CONTROLLER
CON1. The unit has a pressure drop of 40 mmHg and its temperature is estimated at 342
degrees F. Note that the requirement PHASE=L be given on the DESIGN statement.
DRYER UID=E2, NAME=EVAP-101-2
T T T T
FEED FX
T T
CONTROLLER UID=CON1
T T
CPARAMETER ITER=40
T T
FEED F101
T T
FILTER
Keyword Summary
Unit Identification (required)
RFILTER UID=uid, {NAME=text}
PSUBMERGED=value, RPM=value
Input Description
Unit Identification (required)
RFILTER UID=uid, {NAME=text}
This must be the first statement of a RFILTER unit. Section 10.2, Unit Operation Input,
describes all optional entries.
PSUBMERGED=value, RPM=value
The OPERATION statement is required. The rotational speed must be given. Either the
angle of filtration or the percent the drum is submerged must be defined but these have
default values. The keyword definitions are as follows:
Examples
1: Filter Drum Design
In this example a rotary drum filter is to be designed. Stream F101 is fed to the RFILTER
and separated into liquid product L101 and a filtered solids product, S101. The RFILTER
is operated at the maximum pressure drop of 2.5 psia and a rotational speed of 1
revolution per minute. The diameter is determined subject to a width/diameter ratio of 1.0.
The various cake properties are specified. The average particle diameter is calculated
from the particle size distribution.
RFILTER UID=D1,NAME=DRUM-102-1
FEED F101
PROD FILTRATE=L101, CAKE=S101
OPERATION RPM=1
DESIGN DPMAX(PSIA)=2.5, WDRATIO=1.0
CAKEPROPS PSOLIDS=95.0, POROSITY=0.4, FRES=1E+10
CENTRIFUGE
Keyword Summary
Unit Identification (required)
FCENTRIFUGE UID=uid, {NAME=text}
MRES(unit)=0.2E+07, SRES(unit)=value
Ge
{ } entries are optional ( ) keyword qualifiers values given are defaults ne
underlined keywords are default.
Input Description
Unit Identification (required)
FCENTRIFUGE UID=uid, {NAME=text}
This must be the first statement of a FCENTRIFUGE unit. Section 10.2, Unit Operation
Input, describes all optional entries.
Either DESIGN or RATING must be selected. In RATING mode, the filtrate flowrate is
calculated. For DESIGN mode, just to accommodate the filtrate flow, the diameter is
selected from a list supplied by the user. As an alternative to supplying the TYPE of
filtering centrifuge, a list of rotational speeds may be provided. The keyword definitions are
as follows:
Type
T T T Description T
Refer to the PRO/II Reference Manual for a complete description of the speed calculation.
MRES(unit)=0.2E+07, SRES(unit)=value
The user is expected to supply cake properties as determined from laboratory
experiments or actual operating unit measurements. If such data is not available, the
model calculates the cake properties based on default values. Therefore, the
CAKEPROPS statement is optional. If default values are used, the reported design
conditions must be used with caution. However, the heat and material balances are
unaffected by the cake properties.
The percentage solids in the cake can be given directly (using PSOLIDS) or calculated
from the sphericity of the particles and the particle diameter. The particle diameter can be
defined directly using the DPARTICLE keyword or by the definition of a particle size
distribution for the feed stream(s).
Keyword definitions are as follows:
POROSITY The porosity of the cake. The default is 0.45.
PSOLIDS The percentage of solids in the filter cake. The default
is 50 percent. If the sphericity and particle diameter are
defined, it is calculated.
SPHERICITY The sphericity of the particles in the cake. This entry is
not required if PSOLIDS is given. It is used in
conjunction with DPARTICLE to calculate PSOLIDS.
The default is 0.75.
DPARTICLE The average particle diameter in the cake. If no particle
size distribution is defined for the feed stream, then
DPARTICLE may be given instead. It is used in
conjunction with SPHERICITY to calculate PSOLIDS
and is not required if PSOLIDS is used. The dimensions
of DPARTICLE are fine-length.
MRES The resistance of the filter cloth or screen to the filtrate.
This has dimensions of reciprocal course-length. The
default is 0.2E+07/m or equivalent in other dimensional
units.
SRES The specific resistance of the cake. This has
dimensions of course-length per weight. The default is
0.2E+07 m/kg or the equivalent in other dimensional
units.
Examples
1: Filtering Centrifuge Design
In this example, a filtering centrifuge is to be designed. Stream F101 is fed to the
FCENTRIFUGE and separated into liquid filtrate product L101 and a filtered solids
product, S101. Three possible diameters are given. The centrifuge type is specified as a
differential scrolling type. Knowledge of the type, along with a diameter, determines the
filtrate throughput. The resistance of the cake and screen is given. The percentage solids
content of the cake is determined using the default value for sphericity (0.75) and the
particle size distribution of the feed which must have been given elsewhere. The cake
porosity defaults to 0.45.
Default values for the liquid surface radius, cake surface radius, and centrifuge height are
used.
The diameter and rotational speed is determined by choosing one of the supplied
diameters, such that the maximum filtrate flow is just accommodated.
FCENTRIFUGE UID=D1,NAME=FCEN-103-1
FEED F101
PROD FILTRATE=L101, CAKE=S101
DESIGN LDIAM(FT)=1.5,3.0,6.0,TYPE=DIFF
CAKEPROPS MRES=1E+6, SRES=1.5E+5
CURRENT DECANTER
Keyword Summary
Unit Identification (required)
FCENTRIFUGE UID=uid, {NAME=text}
Input Description
Unit Identification (required)
FCENTRIFUGE UID=uid, {NAME=text}
This must be the first statement of a CCDECANTER unit. Section 10.2, Unit Operation
Input, describes all optional entries.
Keyword Summary
Unit Identification (required)
DISSOLVER UID=uid, {NAME=text}
diffusivity of the solute. In addition, Kc increases with decreasing particle size when the
B B
particle diameter is sufficiently small. The user may enter data for calculating the mass
transfer coefficient, Kc, or allow PRO/II to calculate Kc using Treybal’s method. Binary
B B B B
diffusivity data may be entered in the Thermodynamic Data Category (Section 23).
Refer to the PRO/II Reference Manual for a description of the DISSOLVER computational
algorithm.
Input Description
Unit Identification (required)
DISSOLVER UID=uid, {NAME=text}
This must be the first statement of a DISSOLVER unit. Section 10.2, Unit Operation Input,
describes all optional entries.
Examples
1: DISSOLVER Design
In this DISSOLVER, determine the required volume such that the dissolution rate of
crystals of the solute component is 1600 LB/HR. Two feed streams are present. The slurry
product is S1 and the remaining components leave in stream V1.
The solute is defined as component number 3; the solvent as component number 1.
The DISSOLVER operating temperature is given as 10 degrees greater than the feed and
a pressure drop is given as 0.5 PSI.
The mass transfer rate is calculated using the Treybal method.
DISSOLVER UID=D1, NAME=DISS-105-1
FEED FD1, WASH
PRODUCT OVHD=V1, BTMS=S1
PRINT CSD
OPERATION SOLUTE=2, SOLVENT=3, DT=10, DP=0.5
DESIGN DRATE=1600
2: DISSOLVER Rating
This DISSOLVER is essentially the same as the previous example, except that it operates
in rating mode. The volume is fixed at 40 cubic feet and the crystal production rate is
calculated.
Instead of giving the operating temperature, the duty of the unit is given as 0.2 million
Btu/hr. The total pressure drop is given.
DISSOLVER UID=D1, NAME=DISS-105-2
FEED FD1, WASH
PRODUCT OVHD=V1, BTMS=S1
PRINT CSD
RATING VOLUME(FT3)=40
OPERATION SOLUTE=2, SOLVENT=3, &
DUTY(BTU/H)=0.2, DP=0.5
Keyword Summary
Unit Identification (required)
CRYSTALLIZER UID=uid, {NAME=text}
General Information
Crystallization is used in industrial processes for the manufacturing of organics,
inorganics, fertilizers, biochemicals, and polymers. The primary objective of the crystallizer
is to transform a supersaturated solution into a mixed solid/liquid crystal slurry. The
crystallizer is simulated as a Mixed Suspension Mixed Product Removal (MSMPR) model.
The model allows feed streams with or without crystals. The model currently does not
account for breakage or agglomeration of crystals. The crystallizer unit consists of several
component parts. If an operating temperature or duty is supplied, a feed heat exchanger is
employed. If a differential temperature or recirculation rate is supplied, a recirculation
calculation is employed. Figure 15.6-1 illustrates the crystallizer unit.
Input Description
Unit Identification (required)
CRYSTALLIZER UID=uid, {NAME=text}
This must be the first statement of a CRYSTALLIZER unit. Section 10.2, Unit Operation
Input, describes all optional entries.
where:
X exit
B B = The liquid phase mole fraction of the solute component
in the BTMS product.
Xeq
B B = The equilibrium (or saturation) mole fraction of the solute
component in the BTMS liquid as calculated by the
thermodynamic solubility method selected.
where:
SSRATIO = Supersaturation ratio (dimensionless)
G = Crystal growth rate, in units of velocity or length per time
as given on the KG qualifier.
and
KG Kinetic rate constant for growth rate. This is required. The
dimensional units must be either FT/S (the default for English
units) or M/S (the default for metric and SI).
GEXPONENT Exponential factor (defaults to 1.0). The value typically
ranges between 0.0 and 2.5, with 1.0 being most common.
Examples
1: Crystallizer Design
In this CRYSTALLIZER the required volume is to be determined such that the production
rate of crystals of the solute component is 10000 kgs/hour. Two feed streams are present.
The slurry product is S1, and any resulting vapor components leave in stream V1.
The solute is defined as component number 2, and the solvent as component number 1.
2: Crystallizer Rating
This CRYSTALLIZER is essentially the same as the previous example, except that it
operates in rating mode. The volume is fixed at 1214.3 cubic feet and the crystal
production rate is calculated.
Instead of giving the temperature rise across the heat exchanger, the recirculation flowrate
is given. The total pressure drop is given instead of the operating pressure.
CRYSTALLIZER UID=D1, NAME=CRYS-106-2
FEED FD1, WASH
PRODUCT OVHD=V1, BTMS=S1
PRINT CSD
RATING VOLUME(FT3)=1214.3
OPERATION SOLUTE=2, SOLVENT=1,TEMP(F)=-80, &
DP=0.5, RECIRC(GAL/M)=50.0
GROWTH KG(M/S)=0.1217
NUCLEATION KB=12650.
FREEZER
Keyword Summary
Unit Identification (required)
MELTER/FREEZER UID=uid, {NAME=text}
Input Description
Unit Identification (required)
MELTER/FREEZER UID=uid, {NAME=text}
This must be the first statement of a MELTER/FREEZER unit. Section 10.2, Unit
Operation Input, describes all optional entries.
Examples
1: In this example, the liquid product goes into stream 1 and the solid product into stream
2. Components 1 and 2 melt at a feed fraction of 0.09 and component 4 melts completely.
Half of the component 3 is frozen.
MELTER UID=EX1, NAME=MELTFREEZ
FEED F1
PRODUCT L=1, S=2
OPERATION TEMP=100, DP=0.0, MELFRAC=1,2,0.09/4,1.0, &
FREFRAC=3,0.5
2: In this example, the melted liquid product goes into stream 1 and the solid product into
stream 2. Each component in feed F2 will be totally solid or totally liquid depending on its
melting temperature.
MELTER UID=EX2, NAME=MELTFREEZ
FEED F2
PRODUCT L=1, S=2
OPERATION TEMP=150, DP=0.0
SEPARATOR
Keyword Summary
Unit Identification (required)
SSEPARATOR UID=uid, {NAME=text}
General Information
The SOLIDS SEPARATOR unit operation provides the capability to separate solid phase
material from a mixture of feed streams. The maximum allowed number of feed streams is
10 and the unit requires both an overhead and a bottom product. The solids separator
operates adiabatically at the lowest of the individual feed stream pressures.
Keyword Description
Unit Identification (required)
SSEPARATOR UID=uid, {NAME=text}
This must be used as the first statement of a SOLIDS SEPARATOR unit. Section 10.2,
Unit Operation Input, describes all optional entries.
RPARM 1.00
The fraction of the solid component separated in the bottoms stream is specified on the
RPARM statement. By default, this fraction is 1.00.
Keyword Summary
Unit Identification (required)
CYCLONE UID=uid, {NAME=text}
General Information
The cyclone separator unit operation provides the capability to separate solid phase
material with particle size distribution data from vapor streams. A mixture of up to 10 feed
streams is allowed and the unit requires both an overhead and a bottoms product. The
cyclone operates adiabatically at the lowest of the individual feed stream pressures
unless otherwise specified (inlet pressure or pressure drop between feed stream and
inlet may be specified). Liquid feeds are not allowed and all solid components must have
particle size distribution data. The cyclone may be operated in either rating or design
mode.
Strictly speaking, the API adjustment is applicable only to the overall efficiency
and not to the individual efficiencies. However, there is no way to determine the
individual efficiencies and so no way to determine the particle size distribution of the
exiting streams without applying the adjustment to the individual efficiencies. The
alternative is to ignore the adjustment due to loading completely. That adjustment is
optional in the cyclone. Also, some individual efficiencies may be greater than 100%
(more than complete removal of those solids from the gas stream) in which case, the
efficiencies are reduced to 100% (complete removal of those solids from the gas
stream) and a warning is printed in the output.
The cyclone can determine the overall efficiency and particle size distribution of a
stream with multiple components (up to a total of 76 solid components) each with
different inlet particle size distributions. The particle size distribution of each component
is limited to 26 cut sizes (25 size ranges).
Two methods are provided for determining the pressure drop in the cyclone:
The Koch and Licht method. This model yields a conservative estimate of the
pressure drop since it assumes a gas-only feed. An adjustment to the pressure
drop to account for low solids loading is applied if the solid loading is sufficiently
small.
The API method. This method is recommended only for solids loading greater
than 4 pounds of solids per second per square foot of inlet area.
Keyword Description
Unit Identification (required)
CYCLONE UID=uid, {NAME=text}
This must be used as the first statement of a CYCLONE unit. Section 10.2, Unit
Operation Input, describes all optional entries.
b= Dc/4
B B
B= Dc/4
B B
De =
B B Dc/2
B B
2: scroll or volute
3: axial
IPARM(7) This optional entry specifies whether the cyclone is inside a
(Rating and vessel or not:
Design modes) 1: no
U U
2: yes
For a value of 2, RPARM(9) and RPARM(10) must be
specified. Dipleg size, RPARM(62), is calculated if the value
of 2 is entered.
IPARM(8) This optional entry is the setting for efficiency adjustment due
(Rating and to loading:
Design modes)
1: adjust
U U
2: do not adjust.
2: switch
This entry allows changes to be made automatically in the
pressure drop model between the Koch & Licht and API
methods based on solids loading.
2: series.
IPARM(11) This optional entry is the number of identical cyclones in
(Rating modes) series or parallel and is based on the value supplied for the
maximum number of cyclones (IPARM(20)). The default is 1.
For example, if a solid with PSD data: 10, 20, 30, 40 (in
default input units) is required to have a weight fraction of
0.20 in size range 20 to 30, the value for IPARM(12) would be
2 and the value for a define statement would be 0.20.This
optional entry is the number of particle range to be specified.
The default is 1.
RPARM Outputs
COMPONENT DATA
LIBID 1,AIR/2,CACO3
ATTR COMP=2, PSD(MIC)= 10, 20, 30, 40, 60
THERMODYNAMIC DATA
METHOD SYSTEM=IDEAL, DENSITY(L)=API, &
SET=IDEA01, DEFAULT
STREAM DATA
PROPERTY STREAM=F1, TEMPERATURE=300, PRESSURE=101, &
PHASE=M, COMPOSITION(WT,KG/S)=1,0.9
SOLID STREAM=F1, COMPOSITION(WT,KG/S)=2,0.1
PSD COMP=2, DATA=0.1,0.15,0.5,0.25, STREAM=F1
UNIT OPERATIONS
CYCLO UID=CYC1
FEED F1
PRODUCT OVHD,BTMS
IPARM =2,3,2,1,1,1,1,1,2,2,4,,,,,,,,,6
RPARM =0.79244,,,,,,,,,,,,99.99
CYCLO UID=CYC2
FEED F2
PRODUCT OVHD2,BTMS2
IPARM =1,3,2,1,1,1,1,1,2,2,4,,,,,,,,,6
RPARM =0.78832
END
SEPARATOR
Keyword Summary
Unit Identifier (required)
MEMBRANE UID=uid, {Name=text}
Feeds and Products (required)
FEED sid, {sid,….}
PROD sid1, sid2
General Information
The Membrane Separator simulates the fractionation of components across a semi-
permeable membrane. A semi-permeable membrane is one that allows some but not all of
the components in a mixture to pass through it.
This model is applicable to high flux asymmetric membranes in any flow pattern provided
that the following assumptions are met :
1. A constant pressure on both the permeate and residue side.
2. The driving force is partial pressure as calculated by ideal gas law.
3. The residue side is well mixed.
4. The permeate side is plug flow.
5. The gas membrane unit is governed by the following equation:
RPARM Inputs
Keyword Summary
Unit Identification (required)
CALCULATOR UID=uid, {NAME=text}
FORTRAN Statements
DIMENSION var( ), var( ), ...
INTEGER var{()}, var{()}, ...
REAL var{()}, var{()}, ...
nn var = expression
nn CALL routine ()
nn GOTO mm
nn CONTINUE
nn IF (expression) conditional clause
nn IF (expression) THEN
ELSEIF (expression) THEN
General Information
The CALCULATOR is a versatile utility module offering much of the calculational power of
FORTRAN. As a unit operation module, it may be placed anywhere in the flowsheet
calculation sequence. Using a simple language based on FORTRAN 77, it computes a
result or array of results for printout, for storage in a stream vector, or for use by other unit
modules. Its usefulness is limited only by the imagination of the user. Typical applications
include:
1. Compute special stream properties for use by a CONTROLLER, MVC, or
OPTIMIZER unit operation.
2. Compute process utility or operating costs for printout, convergence control, or
optimization.
3. Compute equipment size and cost, based on calculated unit parameters, for
printout or optimization.
The CALCULATOR has two main sections: setup and procedure. The setup section
retrieves flowsheet variables involved in the calculations, dimensions certain supplied
arrays, defines invariant constants, sequences streams for DO loop processing, and
assigns descriptive labels to elements of the RESULTS vector. The procedure section
contains FORTRAN-based statements which perform calculations.
Input Description
Calculator Setup
All statements in the setup section are optional.
DIMENSION C(50), P(50), V(200), R(200), IX(9), IS(9)
The DIMENSION statement overrides default dimensions to declare the number of
elements in CALCULATOR supplied arrays C, P, V, R, IX, and IS. The section “Elements
of the Language” describes each of these arrays.
Predefined Variables
Definitions of predefined variables, including default dimensions for arrays, appear in
Table 16.1-1. Use a DIMENSION statement in the CALCULATOR setup section to reset
the number of elements in each array.
Arrays C, P, V, and R store values in floating-point form. Array IX stores integer values.
Forms of use include:
TABLE 16.1-1
PREDEFINED VARIABLES
Default
Variable name Dimension Description and Comments
and form (for arrays)
Cn or C(index) 1≤n≤50 Constant values defined in the setup section. Used only on the
right hand side of assignment statements
Pn or P(index) 1≤n≤50 Flowsheet parameters set by DEFINE statements. Used only on
the right hand side of assignment statements.
Vn or V(index) 1≤n≤200 A floating-point work array used on either the left or right hand
side of assignment statements. These elements are initialized to
a large negative value and are not available outside the
calculator.
Rn or R(index) 1≤n≤200 The array of calculator results, used on either side of assignment
statements. This results vector is available to other flowsheet
modules external to the CALCULATOR. These elements are
initialized to a large negative value.
IXn or 0≤n≤9 An array of integer values. The form “IX(index) is invalid on a DO
IX(index) statement. It may be used on either side of assignment
statements.
ISn 0≤n≤9 An array of elements used as indices of DO loops for stepping
through a series of streams in the order defined on the
SEQUENCE statement.
ISOLVE This variable indicates whether or not the CALCULATOR solved.
It is initialized to 0 upon each entry into the calculation procedure.
The user assigns all subsequent values using an assignment
statement.
0 The CALCULATOR has not yet executed (default) or has
solved successfully.
1 The CALCULATOR solved.
2 The CALCULATOR did not solve, but continue flowsheet
calculations within a recycle loop.
3 The CALCULATOR did not solve, all calculations stop
unconditionally.
4 The CALCULATOR solved; but stop all subsequent
flowsheet calculations. This sets the flowsheet solution flag
to ‘SOLVED’.
Declaration Statements
REAL rname1, rname2(i), rname3(j,k) ...
INTEGER iname1, iname2(i), iname3(j,k) ...
DIMENSION name1(i), name2(j,k) ...
These statements are used to define local scalars and arrays for use in the code. Each
subscript may be an integer constant, or two integer constants separated by a colon to
specify both the lower and upper array bounds. When defined by the DIMENSION
statement, variables assume the normal FORTRAN convention that assigns names
starting with I through N as integers, and all others as reals. Name lengths may be 8
characters long. Variables defined here may be changed in the code. Variables not
defined here are assumed to be real or integer according to the first character.
Variable names must not conflict with any reserved words or predefined variables (Table
16.1-1).
Examples:
DIMENSION A(20,20), B(20), X(20)
REAL MASS
INTEGER COUNT, TAB(100
REAL REVENU(1990:1995), PROFIT(1990:1995), LOSS(1990:1995)
A variable may only appear once on these statements. The following is valid in
standard FORTRAN, but not in the CALCULATOR:
REAL MOLWT
DIMENSION MOLWT(50)
Both standard FORTRAN and the CALCULATOR accept this equivalent form:
REAL MOLWT(50)
Assignment Statements
nn VARIABLE = expression
The “expression” is governed by standard FORTRAN conventions. The operations on a
given statement are executed in the following order:
1. Expressions within parentheses ( )
2. Functions
3. Exponential (**)
The CALCULATOR supplied arrays C and P may not appear on the left side of an
assignment statement.
TABLE 16.1-2
FORTRAN INTRINSIC FUNCTIONS
Arguments
Function Description Number Type Type of
Result
ABS Absolute Value 1 real real
DIM Positive Difference 2 real real
EXP Exponential e 1 real real
INT Truncation 1 real integer
LOG Natural Logarithm 1 real real
LOG10 Common Logarithm 1 real real
MIN Minimum Value ≤2 real real
MAX Maximum Value ≤2 real real
MOD Remainder 2 real real
NINT Nearest integer 1 real integer
SQRT Square Root 1 real real
SIN Sine (radians) 1 real real
COS Cosine (radians) 1 real real
TAN Tangent (radians) 1 real real
ASIN Arc Sine (radians) 1 real radian
ACOS Arc Cosine (rad) 1 real radian
ATAN Arc Tangent (rad) 1 real real
SINH Hyperbolic Sine 1 real real
COSH Hyperbolic Cosine real real
TANH Hyperbolic Tangent 1 real real
TABLE 16.1-3
PRO/II INTRINSIC FUNCTIONS
Function Description of Property
Pure Component Properties
CMW(cno) Molecular weight
CNBP(cno) Normal boiling temperature
CSPGR(cno) Specific gravity (60F/60F)
CTC(cno) Critical temperature
CPC(cno) Critical pressure
CVC(cno) Critical volume, cc/gm-mole
COMEGA(cno) Acentric factor
Properties of Components in Streams
SCMF(cno,sid) Molar fraction of component in stream
SCWF(cno,sid) Weight fraction of component in stream
SCVF(cno,sid) Standard liquid volume fraction
SCMR(cno,sid) Molar rate of component in stream
SCWR(cno,sid) Weight rate of component in stream
SCLVR(cno,sid) Standard liquid volume rate of component
SCGVR(cno,sid) Standard gas volume rate of component
Stream Properties
SMR(sid) Mole rate of stream
SWR(sid) Weight rate of stream
SLVR(sid) Standard liquid volume rate of stream
SGVR(sid) Standard gas volume rate of stream
STEMP(sid) Stream temperature
SPRES(sid) Stream pressure
TABLE 16.1-5
STREAM COMPONENT PROPERTIES STORED BY
SRVSTR
type= Description
SCMR molar rate of component in stream
SCWR weight rate of component in stream
SCLVR component standard of liquid volume rate
SCGVR ccomponent standard gas volume rate
IF Statements
nn IF (expression) conditional clause
This statement allows logical branching during calculations and conforms to standard
FORTRAN rules for “IF” statements. If the parenthetic expression is true, it executes the
conditional clause. The conditional clause may not be one of the following:
REAL
INTEGER
DIMENSION
IF
ELSEIF
ELSE
ENDIF
DO
RETURN
Table 16.1-6 lists logical operators allowed in the expression.
Operator Description
.EQ. equal to
.NE. not equal to
.LT. less than
.GT. greater than
.GE. greater than or equal to
.LE. less than or equal to
.AND. both true
.OR. either true
.EQV. equivalent
.NEQV. not equivalent
.NOT. true/false toggle
nn IF (expression) THEN
ELSEIF (expression) THEN
ELSE
ENDIF
These statements conform to standard FORTRAN IF-THEN-ELSE statements, allowing
for structured branching of code. “ELSE IF” and “END IF” written as two words are also
accepted. Block “IF” constructs may be nested.
DO Loops
nn DO mm iname= i, j, k
This statement defines the beginning of a DO loop having a range extending through
statement label mm. “i” and “j” are initial and final indices respectively. The increment step
“k” is optional and defaults to 1.
nn DO mm ISn= sid1, sid2
This statement defines the beginning of a stream DO loop having a range extending
through statement label mm. ISn is a stream variable, and sid1 and sid2 must be stream
ids appearing on the SEQUENCE statement. No incremental step index (comparable to
k) is allowed.
OPEN Statement
nn OPEN(FILE=fileide, ACCESS=OVERWRITE or APPEND)
The OPEN statement opens a file for CALCULATOR output. For PC, VAX, and UNIX
platforms, the default output name is fileid.CAL, where fileid is the current input file name.
A unique filename of up to 12 characters, can be specified, if necessary. However, it must
have a “.CAL” extension. Underscore characters are not allowed (e.g., FILE_01). Any
OPEN statement automatically closes the previously opened file.
These statements allow output using full FORTRAN format control. Output will be to the
file most recently opened with the OPEN statement. The WRITE statement list may
include constants, variables, expressions, or array names. Specifying an array name
causes all elements of the array to be written.
The WRITE statement refers to a FORMAT statement defining the output format. The
following standard FORTRAN format items are supported.
Format Items Function
nIw.d Output integer data
nFw.d, nEw.dEe, nDw.d, nGw.dEe Output real data
‘xxxxx’, nHxxxxx Output character constants
Tn, TLn, TRn, nX Tab control
kP Scale factor
S, SS, SP Control of sign output
/, : Line control
n(...) Grouping
OUTPUT Statement
nn OUTPUT {R( i : j ), P( i : j ), C( i : j ), V( i : j ), IX( i : j ), IS( i : j )}
This is a special output statement provided with PRO/II. It outputs calculator-supplied
arrays or portions of these arrays to the currently open file. Entries “i” and “j” refer to the
first and last elements of the array to be output. If they are absent, the entire array will be
output.
DISPLAY Statement
nn DISPLAY {R( i : j ), P( i : j ), C ( i : j ), V( i : j ), IX( i : j ), IS( i : j )}
The DISPLAY statement prints out calculator-supplied array values to the standard report
file during calculations. Entries “i” and “j” are defined in the same way as the OUTPUT
statement.
TRACE Statement
nn TRACE option
Trace statements control printing an historical trace as calculations proceed. This
facilitates debugging the code in the procedure. Options are:
ON Prints line number, statement number, and (action taken/new
variable value) as each statement executes.
BRANCH Prints TRACE information only for branching statements such as IF,
GOTO or DO.
OFF Turns off all TRACE options.
Examples
1: Determination of Flash Point
Use Nelson’s method to estimate the flash point from D86 distillation characterization
data.
CALCULATOR UID=CL1,NAME=FLASH POINTS
$
$ THIS UNIT CALCULATES THE FLASH POINTS OF
$ STREAMS V1, V2, V3, V4, V5, AND V6 USING
$ THE FORMULA:
$ FP= 0.64 * (D86(10)+D86(IP))/2.0 - 100.0
$ WHERE THE D86 POINTS ARE IN DEG F.
$ THE FINAL RESULTS IN DEG C ARE STORED
$ IN R(1) THROUGH R(6). METHOD FROM NELSON.
$
$ SETUP SECTION - RETRIEVE PARAMETERS
$
DEFINE P(1), AS, STREAM=V1, D86(10)
DEFINE P(2), AS, STREAM=V1, D86(IP)
DEFINE P(3), AS, STREAM =V2, D86(10)
DEFINE P(4), AS, STREAM =V2, D86(IP)
DEFINE P(5), AS, STREAM =V3, D86(10)
DEFINE P(6), AS, STREAM =V3, D86(IP)
DEFINE P(7), AS, STREAM =V4, D86(10)
DEFINE P(8), AS, STREAM =V4, D86(IP)
DEFINE P(9), AS, STREAM =V5, D86(10)
DEFINE P(10), AS, STREAM =V5, D86(IP)
DEFINE P(11), AS, STREAM =V6, D86(10)
DEFINE P(12), AS, STREAM =V6, D86(IP)
$
CALCULATOR
Keyword Summary
Unit Identification (required)
STCALC UID=uid, {NAME=text}
{TEMP(unit)=value or DT(unit)=value or
DEWT or BUBT or
DTAD(unit)=value or DTBB(unit)=value},
{TEST(unit)=value}
and
BTMS V=sid or L=sid ,{W=sid, S=sid},
or
V=sid, L=sid, {W=sid, S=sid},
or
M=sid, {W=sid, S=sid},
{PRES(unit)=value or DP(unit)=0.0},
{TEMP(unit)=value or DT(unit)=value or
DEWT or BUBT or
DTAD(unit)=value or DTBB(unit)=value},
{TEMP(unit)=value or DT(unit)=value or
DEWT or BUBT or
DTAD(unit)=value or DTBB(unit)=value},
{TEST(unit)=value}
General Information
The STream CALCulator (STCALC) is a general purpose utility module that provides three
distinct modes of stream manipulation: feed blending, stream splitting, and stream
synthesis. All three modes of operation may appear in a single stream calculator module.
Input requirements are listed in Table 16.2-1.
The feed blending mode allows an unlimited number of feed streams to be combined in
any proportion. Feed streams may be added to or subtracted from each other using
arbitrary co-factors to form a blended feed having the desired composition.
The stream splitting mode of operation allows the splitting of the components in the
resulting feed blend into overhead and bottom products specified by simple splitting rules.
In this mode, feed streams must be declared using the FEED statement. The OVHD and
BTMS statements together define the desired products, and the FOVHD, FBTMS,
ROVHD, RBTMS, XOVHD, and XBTMS statements supply the splitting rules. The
products must satisfy the material balance required by the composition and rate of the
combined feed. The full thermodynamic state may be defined on the OVHD and/or BTMS
statement for their respective products. If the thermal conditions are not given, the
product thermodynamic states are calculated by enthalpy balance such that the
temperatures are equal.
The stream synthesis mode of operation provides the ability to create composite product
streams of any composition and thermodynamic state. In this mode, the PROD statement
identifies the product streams and defines the thermodynamic state. The FPROD,
RPROD, and XPROD statements specify the composition of the products. Feed streams
are allowed, but not required. When no feed streams are declared, the products are
generated totally independent of material balance considerations.
Input Description
Unit Identification (required)
The STCALC statement is required as the first statement of each Stream Calculator
module. All entries on it are general to all unit operations. Refer to Chapter 11 for
descriptions of their use.
RATE (MOLES/HR)
Component FD1 FD2 FD3
methane 121.2 26.5 79.2
ethane 321.3 101.4 55.0
propane 41.1 99.1 101.2
{TEMP(unit)=value or DT(unit)=value or
DEWT or BUBT or
DTAD(unit)=value or DTBB(unit)=value},
{TEST(unit)=value}
If stream splitting is desired, both the OVHD and BTMS statements are required to identify
the two product streams and define the thermodynamic state of each. The total flows of
DEWT These entries specify that the product is at its dew point or
or bubble point temperature.
BUBT
or
TEMP TEMP is the outlet temperature for OVHD or BTMS
or product. Alternatively, DT is the temperature increase
DT measured from the combined feed temperature. A default
or value is calculated from the heat balance (see the
OPERATIONS statement described below).
DTBB The temperature increment below the bubble point
or temperature or above the dew point temperature,
DTAD respectively.
Actual rate:
ROVHD (basis, unit) i, j, value/ ...
RBTMS (basis, unit) i, j, value/ ...
The actual flowing rate of component “i” through “j” in the overhead and bottom products,
respectively. Allowable bases are M (mole, default), W (weight), LV (standard liquid
volume), and GV (standard vapor volume).
Actual composition:
XOVHD(basis) i, j, value/ ...
XBTMS(basis) i, j, value/ ...
The fractional composition of components “i” through “j” in the overhead and bottom
products, respectively. Allowable bases are M (mole, default), W (weight), LV (standard
liquid volume), and GV (standard vapor volume).
{TEMP(unit)=value or DT(unit)=value or
DEWT or BUBT or
DTAD(unit)=value or DTBB(unit)=value},
{TEST(unit)=value}
When a single synthesized product is desired, the PROD statement is required. This
statement identifies the synthesized product stream and defines its thermodynamic state.
Each product may be a single stream or may be flashed into its constituent vapor, liquid,
water and/or solid phases. Product splitting and product synthesis may both occur in the
same STCALC module.
V, L These keywords define the phase of each product stream:
or V for vapor, L for liquid, or M for mixed phase. If only one
M product is specified, the correct phase is determined and
overrides the phase implied by V, L, or M.
W For water-hydrocarbon systems only, W may designate a
decanted water stream. If not specified, decant water is
included in the liquid product. The VLLE thermodynamic
option is not valid for the STCALC module.
S For systems with solids, the solids may be separated into
a stream designated by S. If S is not given, all solids will
leave the separator with the liquid phase stream.
PRES PRES is the outlet pressure for the product stream.
or Alternatively, DP is the pressure drop measured from the
DP feed with the lowest pressure. When no FEED statement
is present, the PRES entry is required. When the feed
statement is present, the default DP is 0.0.
TEST An estimated temperature for the product. In a few cases,
this entry may reduce the computation time. It is not
allowed when specifying entries TEMP or DT.
DEWT These entries set the product to the dew point or bubble
or point temperature. When no FEED statement is present,
BUBT one of the TEMP, DEWT, BUBT, DTAD, or DTBB entries
or is required. In this case, DT is invalid.
TEMP TEMP is the outlet temperature for the product stream.
or Alternatively, DT is the temperature increase measured
DT from the combined feed temperature. When the FEED
or statement is present, the default DT is 0.0.
DTBB These entries specify the temperature increment below
or the bubble point or above the dew point temperature,
DTAD respectively, for the product.
Examples
1: Component separation with net duty.
Split feed stream 5 into streams 6 and 7. Stream 6 has a pressure drop of 5 input
pressure units and a temperature drop of 10 degrees. Stream 7 has an increase of 5 input
pressure units and a temperature determined by enthalpy balance with a heat gain of 0.5
million input duty units. Specify a split such that 95% of component 1, 93% of component
2, and 70% of each of components 3 and 4 go to the overhead. Components 5 through 9
each contribute 24 (120 divided by 5 components) standard liquid volume units to the
bottoms, while 100 input weight units of component 10 exit in the overhead product.
STCALC UID=M1, NAME=SYN-FEED
FEED 5
OVHD M=6, DP=5, DT=-10
BTMS M=7, DP=-5
FOVHD 0.95 / .93 / 3, 4, .7
RBTMS(LV) 5, 9, 120
ROVHD(WT) 10, 100
OPERATION DUTY=0.5
COOLING CURVES
Keyword Summary
Unit Identification (required)
HCURVE UID=uid, {NAME=text} {PLOT}
ADIABATIC STREAM=sid,
DT(unit)=0.0 or TEMP(unit)=value, value,
DUTY(unit)=value,
DP(unit)=0.0 or PRES(unit)=value, value,
or
HX=uid, HOT or COLD,
or
HXRIG=uid, SHELL or TUBE,
or
LNGHX=uid, CELL=i,
or
{PRES(unit)=value,value},
or
FLASH=uid,
General Information
The HCURVE module generates heating or cooling curves for any process stream in the
flowsheet, including internal unit operation streams that undergo heating or cooling.
Optionally, HCURVE generates additional curves including physical, critical,
thermodynamic, transport, and petroleum properties.
The generated curves represent a composite of equilibrium flash calculations. If the first
and last points are not defined by the user, they are taken from the stream or unit
operation data.
Flash curves are selected by using the ISO and ADIA statements. ISO curves generate
points using equal temperature and pressure increments, while ADIA curves use equal
enthalpy and pressure increments. ISO curves require less computer time, but ADIA
Input Description
Unit Identification (required)
HCURVE UID=uid, {NAME=text}, {PLOT}
All entries on the HCURVE statement are general to all unit operations. Refer to Section
10.2 for a description of their use. The PLOT entry may be used to request a plot for a
phase diagram. Only one pair of bubble point (BUBT or BUBP) and dew point (DEWT or
DEWP) curves will be plotted per HCURVE unit. Points which fail during calculations will
be omitted from plots.
When COLUMN or SIDE is active, DUTY does not refer to the duty id of the
column. Use the HEAT/COOL keyword instead.
PRES=a,b Argument “a” is the beginning pressure and “b” is the ending
pressure for the heating/cooling curve. The PRES keyword is not
valid with any of the following unit operation entries HX, HXRIG,
LNGHX or FLASH, since pressure conditions are defined by the
unit operations. The PRES keyword is valid with the COLUMN
and SIDE unit operations, enabling modeling of pumped reboiler
circuits.
PRES also is not valid with the DP keyword. If “b” is not given, it
The “SUMMARY” option is a special summary printout. When selected by itself, the
default printout is suppressed. When any other print option is selected, the default printout
is included.
Examples
1: Use a single HCURVE module to perform the following calculations:
Use isothermal increments to flash stream 1 over the range (P,T) = (200,100) to (P,T) =
(300,400). Use a temperature increment of 15 degrees and a pressure increment of 5
pressure units to generate 21 points.
Perform adiabatic flashes on stream 2 using a pressure increment of 0.5 pressure units.
Divide the overall flowing enthalpy increase of 5 million energy units into 10 equal
increments, which requires 11 points.
Flash stream 3 eleven times in the range from 100 to 200 pressure units to obtain the
bubble point temperature at each point.
Flash stream 4 eleven times to obtain a dew point pressure curve. Starting at its feed
conditions, and increase temperature in increments of 20 degrees.
Flash heater/cooler number 1 (usually the condenser) of distillation column C1 eleven
times using constant enthalpy increments.
Request reports of thermodynamic and petroleum properties.
HCURVE UID=HC1, NAME=HCURVE 1
ISOTHERMAL STREAM=1,TEMP=100, 400, PRES=200, 300,
POINTS=21
ADIA STREAM=2, DP=0.5, DUTY=5
BUBT STREAM=3, PRES=100, 200
DEWP STREAM=4, DT=20
ADIA COLUMN=C1, HEAT=1
PROPERTY THERMO, PETROLEUM
2: Generate an isothermal HCURVE for a stream created by a unit operation:
FLASH UID=FL1
FEED 1,2
PROD M=MIX
ISO TEMP=80, PRES=14.696
HCURVE UID=HC1
ISO FLASH=FL
ENVELOPE
Keyword Summary
Unit Identification (required)
PHASE UID=uid, {NAME=text} {PLOT}
VERSION=V5 or V4 U U
PSTART(unit)= value
(Default for V5 PSTART(ATM)=1,
V4 PSTART(ATM)=10)
General Information
The PHASE module generates phase envelopes for multi-component streams using the
Peng-Robinson (PR) or Soave-Redlich-Kwong (SRK) equations of state and their
derivatives (i.e., PRm, PRP, PRS, SRKM, SRKP, SRKS). Supplying a value for the
optional LFRAC entry generates a curve of constant liquid mole fraction (L/F). Each
EVALUATE statement calculates a separate phase envelope or liquid fraction curve. A
maximum of five EVALUATE statements may appear in each PHASE module.
The true critical point, cricondentherm, cricondenbar, and other points on the envelope are
determined with the Michelsen method. The PHASE module always treats water as a
regular component, regardless of the declared state of water immiscibility. Note that
systems containing more than one mole percent hydrogen usually are not totally
condensable, so bubble points may not be possible. Among others, helium and nitrogen
often cause the same problem. Results of bubble point calculations for streams containing
high percentages of these components should be reviewed carefully.
An optional report of the results of each curve is available by supplying the POINTS, DP,
and IPRES entries. These points are supplemental to the normal phase diagram.
VERSION=V5 or V4 U U
PSTART(unit)= value
(Default for V5 PSTART(ATM)=1,
V4 PSTART(ATM)=10)
Each EVALUATE statement defines a single curve. A minimum of one and a maximum of
five EVALUATE statements are permitted in one PHASE module.
STREAM This entry identifies the stream for which the curve is
generated.
LFRAC LFRAC requests the generation of a curve of constant liquid
mole fraction. The value of the entry must be between 0.0 and
1.0.
POINTS Supplying values for both the POINTS and DP entries requests
and generation of a supplemental report with that number of
DP POINTS spaced DP pressure units apart.
and IPRES is the initial pressure value for the supplemental report
IPRES generated when both the POINTS and DP entries are supplied.
IPLOT This keyword specifies an individual plot containing the phase
diagram for the stream specified on the EVALUATE statement.
ON This option specifies that the individual plot be generated.
This is the default.
OFF This option turns off the individual plot feature.
CPLOT This keyword specifies that a combination plot be generated for
all the streams provided on the EVALUATE statement(s). An
optional number “n” (any number from 1 to 9) may be provided
for labeling each curve. If a number is not provided, PRO/II
provides a default numbering scheme when the comparison
plot is produced.
Examples
1: Phase Envelope of a Natural Gas Stream
Calculate the phase envelope of a natural gas stream, and evaluate the curves of
constant liquid fraction for L/F=0.01 and L/F=0.025.
PHASE
EVALUATE STREAM=1,
EVALUATE STREAM=1, LFRAC=0.01
EVALUATE STREAM=1, LFRAC=0.025
Keyword Summary
Unit Identification (required)
HYDRATE UID=uid, {NAME=text}
IPRESSURE(ATM)=0.1, MAXPRES(ATM)=400.0
{DP(unit)=value, PESTIMATE=value}
or
ITEMP(unit)=value, {DT=value},
{MAXTEMP(unit)=value}, {TESTIMATE(unit)=value}
General Information
Hydrates are solid mixtures of water and other small molecules. Under certain process
conditions, particularly in the gas processing industry, hydrate formation may clog lines
and foul process equipment. The HYDRATE unit operation predicts the pressure and
temperature regime in which the process is vulnerable to hydrate formation. Calculations
performed assume the presence of free water for hydrates to form.
Possible hydrate formers include C1 through iC4, CO2, H2S, N2, ethylene, propylene, Ar,
Kr, Xe, cyclo-propane and sulfur hexafluoride. The effect of NaCl, methanol, EG, DEG
and TEG hydrate inhibitors can also be studied.
IPRESSURE(ATM)=0.1, MAXPRES(ATM)=400.0
{DP(unit)=value, PESTIMATE=value}
or
ITEMP(unit)=value, {DT=value},
{MAXTEMP(unit)=value}, {TESTIMATE(unit)=value}
Each EVALUATE statement generates a single curve which defines the incipient
formation of hydrates.
Example
1: Use a single HYDRATE module to perform the following evaluations. Stream A1
contains 6% propane and 94% carbon dioxide at 50 psia and 50 F. Stream A2 contains
8% propane and 92% carbon dioxide at 50 psia and 50 F. For stream A1, evaluate the
formation of hydrates in a regime with an initial pressure of 50 psia for a maximum of 20
points with a pressure step size of 5 psi. For stream A2, evaluate the formation of
hydrates in a pressure range of 50 to 175 psia with pressure step size of 5 psi. Note that
while water is not a specified component, hydrate calculations assume the presence of
free water for hydrates to form.
VLE/LLE DATA
Keyword Summary
Unit Identification (required)
BVLE UID=uid, {NAME=text}
General Information
The BVLE module is used to validate binary vapor-liquid or vapor-liquid-liquid equilibrium
data for any given pair of components. This unit operation generates tables and plots of K-
values and fugacity coefficients versus liquid and vapor composition at a specified
temperature or pressure. A number of plot options are available. Any thermodynamic VLE
or VLLE K-value method may be used to validate the VLE or VLLE data.
For liquid activity thermodynamic methods, the K-values, liquid activity coefficient, vapor
fugacity coefficient, vapor pressures, and Poynting correction are determined. For non-
liquid activity methods such as the SRK cubic equation of state, K-values, and liquid and
vapor fugacity coefficients are determined.
The binary VLE/VLLE unit operation does not affect flowsheet convergence. It is always
executed after the flowsheet has fully converged.
Examples
1: BVLE Data Using Defaults
Using the SRK VLE thermodynamic method, validate binary VLE data for the component
pair methane-ethane at 3 atmospheres. Use the default starting and terminal values of 0.0
and 1.0 for the liquid mole fractions, and the default number of calculation points of 21.
Generate a plot of K-values vs. temperature.
TITLE PROJECT=MANUAL, PROBLEM=BVLE
COMP DATA
LIBID 1,METHANE/2,ETHANE
THERMO DATA
METHODS SYSTEM=SRK
STREAM DATA
PROP STRM=1, TEMP=50, PRES=14.7, COMP=50/50
UNIT OPERATIONS
BVLE UID=BVLE1
EVAL COMP=1,2,PRES(ATM)=3,PLOT=KVALUE
PROPERTY DATA
GENERATOR
Keyword Summary
Unit Identification (required)
HEXTABLES UID=uid, {NAME=text}
NOPRINT, THERMO=hexno,
PETRO=hexno, DENSITY=hexno, TRANSPORT=hexno,
LCON=hexno, LVIS=hexno, LCP=hexno, LDENS=hexno,
VCON=hexno, VVIS=hexno, VCP=hexno, VDENS=hexno,
LATENT=hexno, SURFACE=hexno, CFRAC=hexno,
WFRAC=hexno, ENTHALPY=hexno, DUTY=hexno,
LAPI=hexno, VAPI=hexno, LWATSONK=hexno,
VWATSONK=hexno, LSPGR=hexno, VSPGR=hexno,
BUBBLE=hexno, DEW=hexno, DEWWATER=hexno}
General Information
The HEXTABLES unit operation generates property data tables
for use by the HEXTRAN program. Users of this utility should be familiar with the
Input Description
Unit Identification (required)
HEXTABLES UID=uid, {NAME=text}
NOPRINT, THERMO=hexno,
PETRO=hexno, DENSITY=hexno, TRANSPORT=hexno,
LCON=hexno, LVIS=hexno, LCP=hexno, LDENS=hexno,
VCON=hexno, VVIS=hexno, VCP=hexno, VDENS=hexno,
LATENT=hexno, SURFACE=hexno, CFRAC=hexno,
WFRAC=hexno, ENTHALPY=hexno, DUTY=hexno,
LAPI=hexno, VAPI=hexno, LWATSONK=hexno,
VWATSONK=hexno, LSPGR=hexno, VSPGR=hexno,
BUBBLE=hexno, DEW=hexno, DEWWATER=hexno}
All entries on the HEXTABLES statement are general to all unit operations. Refer to
Section 10.2, Unit Operation Input, for their usage description.
Any number of GENERATE statements may appear in each HEXTABLES unit operation.
“hexno” refers to the HEXTRAN set number (1-97).
STREAM This entry identifies the stream for which property tables are to be
generated.
PRES This entry defines the pressure for the property table. Upto 10
values are allowed. If PRES is not specified, then the current
stream pressure will be used to generate properties.
TEMP This entry defines the temperature for the property table. Upto 20
values are allowed. If no entries or one entry is supplied, then
values for DT and TPOINTS are also required. If no TEMP
entries are supplied, then the current stream temperature is
assumed to be the first point.
SETNO This entry gives the HEXTRAN set number (1-97) and applies
globally to all requested properties.
Example
1: Generate HEXTABLES Using Multiple Thermodynamic Methods
TITLE PROJECT=MANUAL, PROB=HEXTAB
COMP
LIBID 1, METHANOL/2,WATER/3,BENZENE/4,TOLUENE/5,PHENOL
THERMO
METHODS SETNO=1, SYSTEM=SRKKD, TRANSPORT=LIBRARY
METHODS SETNO=2, SYSTEM=BK10, TRANSPORT=LIBRARY
STREAM
PROP STREAM=STR1, TEMP=160, PRES=14, &
COMP=1, 420/2, 1010
PROP STREAM=STR2, TEMP=50, PRES=14.7, COMP=1, 0.0/2, &
720/3, 0.0/4, 1010
UNITS
HEXTABLES UID=HEX1
GENERATE STREAM=STR1, DT=10, TPOINTS=5, DP=2, &
PPOINTS=2, TXTRAPOLATE, PETRO=2, SETNO=11, LSPGR, &
VSPGR, BUBBLE=3, DEWWATER=4
FILENAME CALC2
METHOD SETNO=1
DIMENSION SI
HEXTABLES UID=HEX2
GENERATE STREAM=STR2, TEMP=160, DT=10, TPOINTS=7, &
PRES=14, DP=1, PPOINTS=3, SETNO=1, CFRA, WFRA, DEWW, &
DUTY, LWAT, VAPI
METHOD SETNO=2
DIMENSION METRIC
LUMPING
Keyword Summary
Unit Identification (required)
LUMP UID=uid, {NAME=text}
General Information
The Component Lumping unit allows you to reduce your flowsheet component slate by
clustering groups of library or assay components into “lumped” components. The unit
algorithm will determine the best lumped component and thermodynamic property data for
your selected component slate.
The Component Lumping unit generates a partial keyword input file that contains the
calculated properties for these lumped components (in the Component Data category of
input), along with the General, Thermodynamic, and Stream Data categories of input.
Other data categories (e.g., the Unit Operations data category) are not generated by
running the Component Lumping unit. You must edit the file created by the Component
Lumping unit to add your unit operation and miscellaneous flowsheet data.
The Component Lumping unit operation does not affect flowsheet convergence. It always
executes after the flowsheet has fully converged.
CONTROLLER
Keyword Summary
Unit Identification (required)
CONTROLLER UID=uid, {NAME=text}
WET or DRY,
U U
{RETURNUNIT=uid}
General Information
The CONTROLLER is analogous to a feedback process controller. It adjusts an upstream
parameter in the flowsheet to reach a specified objective on a process stream, unit, or
thermodynamic parameter operation. A specification may be made on a stream property
or rate, a unit operating condition, or a CALCULATOR result. The control variable may be
a stream or unit operation condition, or a CALCULATOR result. There must be one
specification and one variable.
The PRO/II Reference Manual may be consulted for a description of the CONTROLLER
computational algorithm.
Input Description
Unit Identification (required)
CONTROLLER UID=uid, {NAME=text}
This must be the first statement of a CONTROLLER unit. Section 10.2, Unit Operation
Input, describes all optional entries.
{RETURNUNIT=uid}
Examples
1: Weight Fraction Controller
CONTROLLER UID=CNT1,NAME=CONTROLLER 1
SPEC STREAM=1,COMP=3,4,FRAC(W),VALUE=0.01
VARY FLASH=F1,TEMP,MAXI=300,MINI=100, &
EST2=150,STEP=50
CPARAM ITER=20,NOPRINT,STOP
Use a CONTROLLER to make the weight fraction of components 3+4 in stream 1 equal to
0.01. The temperature of flash unit F1 may be varied between 100 and 300 degrees. If the
temperature reaches one of these limiting values, the flowsheet calculations stop. The
CONTROLLER algorithm uses 150 degrees as a second estimate of the temperature, and
a maximum iteration step size of 50 degrees. A maximum of 20 iterations is allowed for
the CONTROLLER loop calculations, and the iteration printout is suppressed.
3: Reflux Control
CONTROLLER UID=FBC
SPEC COLUMN=T100,TRAY=1,PHASE=L,RATE(W), &
DRY, DIVIDEBY,STREAM=OVHD,VALUE=3,MINI=2.5
VARY COLUMN=T101,DUTY(2)
For this CONTROLLER, the liquid weight rate from tray 1 of column T100 divided by the
weight rate of stream OVHD is specified between limits of 2.5 and 3. The CONTROLLER
varies the second duty in column T100 to reach this specification. Note that if OVHD is the
overhead product from column T100, the specification is on the reflux ratio for the column.
VARIABLE
CONTROLLER
Keyword Summary
Unit Identification (required)
MVC UID=uid, {NAME=text}, {PLOT}
WET or DRY,
{<operator>, <reference>, <property 2>},
VALUE=value, {ATOL=value or RTOL=value}
On a column internal stream:
SPEC COLUMN=uid or SIDESTRIPPER=uid, <property 1>,
PHASE=L or V, TRAY=value, WET or DRY,
U U U U
On a thermodynamic parameter:
VARY THERM=setid, <parameter>,
MINI=value, MAXI=value, STEPSIZE=value},
{EST2=value or PCT2=value},
{SFACTOR=a,b, NOSTOP}
General Information
The Multi-Variable Controller (MVC) is an expanded form of the CONTROLLER. While the
CONTROLLER handles only one specification and one variable, the MVC adjusts an
unlimited number of upstream variables to reach the same number of specified objectives.
Specifications may be made on stream properties and rates, unit operating conditions,
and CALCULATOR results. Variables may be stream and unit operation conditions and
thermodynamic parameters and CALCULATOR results. The number of variables must
equal the number of specifications.
Refer to the PRO/II Reference Manual for a description of the MVC computational
algorithm.
Input Description
Unit Identification (required)
MVC UID=uid, {NAME=text}, {PLOT}
This must be the first statement of a Multi-Variable Controller. Section 10.2, Unit
Operation Input, describes all optional entries. The plot option requests diagnostic plots of
the convergence history.
SFACTOR
This keyword allows the definition of two factors that are used to
scale the value of the <parameter> entry. The equation
X=a*<parameter>+b defines the scaled value, X, of <parameter>
for the convergence algorithm. If omitted, PRO/II scales
<parameter> so that its magnitude is defined by SVARIABLE on
the MVCPARAMETER statement.
Examples
1: Heat Exchanger Control
SPEC STREAM=12,RATE,VALUE=39650,ATOL=50
SPEC STREAM=5,RATE(W),VALUE=82.3
SPEC HX=HX1,LMTD,VALUE=25
VARY FLASH=F1,TEMP,MAXI=600, MINI=300
VARY COMPR=C1,PRESSURE,EST2=100
VARY STREAM=1,RATE,MAXI=10000,MINI=4000
MVCPARAM IPRINT=SUMMARY
Use a Multi-Variable Controller to get (1) a molar rate of 39650 plus-or-minus 50 moles for
stream 12, (2) a weight rate of 82.3 for stream 5, and (3) a log-mean temperature
difference of 25 F for heat exchanger HX1. (The heat exchanger has a UA specification.)
To reach these specifications, vary (1) the temperature of flash unit F1 over the range of
300 to 600 F, (2) the pressure of compressor C1, and (3) the flow rate of stream 1 over
the range of 4000 to 10000 moles per unit time. Print an intermediate summary at solution
time.
Use a Multi-Variable Controller to find the solution for a vacuum column. Vary the first
column specification to get the value of a CALCULATOR result of 65. (This value
represents a flash point that is calculated for one of the column products.) Note that
tolerances are included with the specifications to simplify the solution.
OPTIMIZER
Keyword Summary
Unit Identification (required)
OPTIMIZER UID=uid, {NAME=text}, {PLOT}
T T T T T T T T
WET or DRY,
U U T T
On a unit operation:
OBJECTIVE <unit type>=uid, <property 1>,
T T
{RTOLER=value},
T T
{RPERTURB=value or APERTURB=value}
T T T T
{RTOLER=value},
T T
{RPERTURB=value or APERTURB=value}
T T T T
On a thermodynamic parameter:
VARYTHERM=setid, < parameter>,
T T
{RTOLER=value},
T T
{RPERTURB=value or APERTURB=value}
T T T T
Constraints (optional)
The CONSTRAINT statement limits a flowsheet parameter (other than an optimization
variable) to a specified range of values.
On a stream:
CONSTRAINT
T STREAM=sid, <property 1>, T
{ATOL=value or RTOL=value}
T T T T
WET or DRY,
U U T T
{ATOL=value or RTOL=value}
T T T T
On a unit operation:
CONSTRAINT
T T <unit type>=uid, <property 1>,
{<operator>, <reference>, <property 2>},
MAXIMUM=value, MINIMUM=value,
T T T T
{ATOL=value or RTOL=value}
T T T T
WET or DRY,
U U T T
On a unit operation:
SPEC <unit type>=uid, <property 1>,
T T
{DPRINT=ALL, IPRINT=ALL }, T T U U T T U U
{OPRINT=HISTORY, SVERROR=value},
T T U U T T
{NOSCALE }, T T
{COPY or NOCOPY} T T U U
{BROYDEN=value}, T T
{FULL}, T T
{LMODE=0}, T T
{DERIVATIVE}, T T
{ELIM=value, or KEEP=value}, T T T T
General Information
The flowsheet OPTIMIZER either maximizes or minimizes an objective function by varying
a number of flowsheet variables subject to a number of constraints, while meeting a
number of specifications. The objective function may be expressed as an economic
criterion, such as maximum profit or minimum cost, or as an operational criterion, such as
maximum recovery or minimum loss. Optimization variables may be stream rates, unit
operation conditions, thermodynamic parameters and CALCULATOR results. Limitations
must be imposed on all optimization variables. Constraints and specifications may be
imposed on other flowsheet parameters.
Refer to the PRO/II Reference Manual for a description of the OPTIMIZER computational
algorithm.
This must be the first statement of an OPTIMIZER unit operation. Section 10.2, Unit
Operation Input, describes all optional entries. The plot option requests diagnostic plots of
the convergence history.
Objective Statement
Exactly one OBJECTIVE statement must be given.
OBJECTIVE <part 1>, <operator>, <part 2>,
T T
MAXIMIZE or MINIMIZE,{RTOLER=0.005}
T T T T T T
Table 10.3-2, Stream Cross-Reference Availability, lists the stream variables available to
the OBJECTIVE statement.
Table 10.3-3, Unit Operation Parameters Available for Cross-Referencing, lists the unit
operation variables available to the OBJECTIVE statement.
<part 1> These entries on the OBJECTIVE statement follow the same format
<operator> and structure as the entries described for the Generalized Specification
<part 2> statement. Refer to Section 10.4, Specs, Constraints and Objectives,
for a detailed description of these entries.
MAXIMIZE or Use one of these required keywords to define whether the objective
MINIMIZE function is to be maximized or minimized. Note that a negative value is
minimized when its absolute value is maximized.
RTOLER For the optimization problem to solve successfully, the relative change
in the value of the objective function from one calculational cycle to the
next must be less than the value given by this tolerance keyword. The
default value is 0.005, equivalent to 0.5 percent.
{RTOLER=value},
T T
{RPERTURB=value or APERTURB=value}
T T T T
On a thermodynamic parameter:
VARYTHERM=setid, < parameter>,
T T
{RTOLER=value},
T T
{RPERTURB=value or APERTURB=value}
T T T T
Section 10.6, Vary and Change Statements, provides more details about the general
format of the VARY statement. Instead of the keywords EST2 and PCT2 described in
Section 10.6, the OPTIMIZER allows three other keywords to be used on the statement:
RTOLER, RPERTURB, and APERTURB. They are described below.
The stream variables available to the VARY statement are TEMP, PRES, and RATE.
Table 10.3-3, Unit Operation Parameters Available for Cross-Referencing, lists the unit
operation variables available to the VARY statement.
Table 10.3-3I, Thermodynamic Parameters, lists the thermodynamic parameter variables
available to the VARY statement.
STEPSIZE By default, the variables are not allowed to move more than 30, 60
and 90 percent to their upper or lower limit during optimization cycles
1, 2 and 3, respectively. This is intended as a “safety feature”; it
prevents the optimizer from moving too far, particularly when the
derivatives are inaccurate. The STEPSIZE keyword is used to
override this default by providing an absolute limit for the maximum
change in a variable during one optimization cycle. Providing a value
for STEPSIZE, which is larger than MAXI-MINI for a particular
variable, allows that variable to move through its full range at every
optimization cycle.
If the OPTIMIZER contains more than one VARY statement, the changes in
the variables determined by the optimizer will all be reduced by the same factor until
all the variables are within the limits imposed by the individual STEPSIZEs. Hence,
the relative change in the variables is not affected by the STEPSIZE on each variable.
RTOLER To solve the optimization problem successfully, the relative change in
the value of <parameter> from one calculational cycle to the next
must be less than the value given by this tolerance keyword. The
default value is 0.001, equivalent to 0.1 percent.
Constraints (optional)
Constraints define the domain of acceptable solutions to the optimization problem; that is,
they define ranges into which certain flowsheet values must fall to represent an
acceptable solution to the optimization problem. Constraints may be placed on design or
performance values, including values defined by a CALCULATOR unit operation.
Note that a constraint defines a range of acceptable values for a flowsheet parameter that
is not an optimization variable.
CONSTRAINT Statement
Constraints define the optimization domain for the flowsheet. A CONSTRAINT statement
may be declared for process streams, internal column streams, or unit operations.
CONSTRAINT <part 1>, <operator>, <part 2>,
MAXIMUM=value, MINIMUM=value
{ATOL=value or RTOL=value}
Table 10.3-2, Stream Cross-Reference Availability, lists the stream variables available to
the CONSTRAINT statement.
Table 10.3-3, Unit Operation Parameters Available for Cross-Referencing, lists the unit
operation variables available to the CONSTRAINT statement.
Refer to Section 10.4, Specs, Constraints and Objectives, for a discussion on the
generalized constraints format.
{DPRINT=ALL, IPRINT=ALL },
T T U U T T U U
{OPRINT=HISTORY, SVERROR=value},
T T U U T T
{NOSCALE },T T
{COPY or NOCOPY}
T T U U
{BROYDEN=value},
T T
{FULL},
T T
{LMODE=0},
T T
{DERIVATIVE},
T T
{ELIM=value, or KEEP=value},
T T T T
RETURNUNIT This keyword specifies the “uid” of the unit that must be calculated
next after the OPTIMIZER has determined a new set of values for
the optimization. With one exception this is determined automatically
by PRO/II and need only be used as an override in special
circumstances. The one exception is when the OPTIMIZER is
varying thermodynamic parameters. In this case, a RETURNUNIT is
required, since PRO/II cannot determine which units are affected by
the change in the thermodynamic parameters.
CYCLES This keyword defines the maximum number of optimization cycles
allowed. The default value is 18 plus the number of variables to be
optimized.
DPRINT This keyword controls the intermediate printout level for derivatives in
the history and log files. Valid keyword arguments for the DPRINT
option are:
NONE When this keyword is used, PRO/II does not print
intermediate derivative values in the history file. This is
the default if the DPRINT keyword is not given.
FINAL FINAL causes PRO/II to print a history of derivatives at
the end of the final cycle only. This is useful when the
OPTIMIZER is embedded in an external recycle or
control loop.
ALL When ALL is used, PRO/II prints a summary of
derivatives after every cycle. This is the default if
DPRINT is used with a keyword entry.
IPRINT The IPRINT keyword controls the intermediate printout level for
optimization variables in the history and log files for the problem.
Valid keyword arguments for this option are:
NONE PRO/II does not print intermediate values, except for
the objective function, in the history file. This is the
default if the IPRINT keyword is not given.
FINAL This argument causes PRO/II to print a history of values
at the end of the final cycle only. This is useful when the
OPTIMIZER is embedded in an external recycle or
control loop.
ALL When the ALL argument is used, PRO/II prints a
summary after every cycle. This is the default if IPRINT
is used without a keyword entry.
OPRINT This keyword controls the printout level at final output time. Valid
keyword arguments for the OPRINT option are:
BRIEF The presence of this keyword argument suppresses
printing of the history output.
HISTORY This argument causes PRO/II to print a brief output plus
a history of optimization values. This is the default
value.
ALL The ALL keyword causes printing of the HISTORY level
of output plus a history of derivatives and shadow
prices.
NOSCALE The use of this keyword suppresses all scaling of the optimization
variables.
SVERROR A measure of the accuracy of the current scaled solution (Kuhn-
Tucker error). The default value is 1.E-7. Frequently, the
OPTIMIZER will satisfy one of the other convergence criteria before
achieving this accuracy.
COPY The COPY keyword is used to save the entire PRO/II database at
or each OPTIMIZER base cycle. This prevents hysteresis effects in the
NOCOPY derivatives for better accuracy. The default is NOCOPY.
Examples
1: Deethanizer Operating Profit Optimization
The following example shows the optimization of the flowsheet shown in Figure 17.3-1.
Only selected parts of the input data stream are shown.
Keyword Summary
Unit Identification (required)
RECYCLE DATA
General Information
PRO/II solves a flowsheet in a sequential fashion; that is, it calculates one unit operation
at a time. The calculational sequence is determined by the method selected on the
SEQUENCE statement in the General Data Category. Based on this sequence method,
the PRO/II loop analyzer will evaluate the flowsheet topology and determine all recycle
streams and the unit operations to be calculated in each loop. The recycle tolerances and
maximum recycle trials for each recycle are automatically set. In many recycle problems,
there are alternative recycle looping schemes that could be used, and in PRO/II the user
is allowed to impose his own loop scheme, employ acceleration techniques, and select the
convergence tolerance desired.
A rudimentary summary of recycle concepts in PRO/II is given below. Refer to the PRO/II
Reference Manual for an in-depth discussion of recycle handling considerations and
techniques.
Thermal Recycles
This form of recycle is illustrated below. In this case, only the convergence of stream
thermal conditions is involved, since the stream rate and the composition are known.
Trials
By default, Recycle loops are allowed 20 recycle iterations or “trials”. This value may be
set globally on the CALCULATIONS statement in the General Data category. It may also
be set for each defined recycle loop in the Recycle Data category, as documented in this
section.
Tolerances
Stream tolerances are defined in Section 5, General Data. Tolerances may be set
globally in the General Data category or individually for each recycle loop.
For nested recycles, always use tighter tolerances for inner loops. External calculational
loops (including controllers, optimizers, as well as recycles) usually have trouble
converging, unless internal loops solve with consistent response curves.
Acceleration
The default method of recycle convergence in PRO/II is direct substitution. In this case,
the assumed recycle stream composition, rate, and thermal conditions are directly
replaced with the newly calculated values on each trial through the loop. The method is
generally stable, but can sometimes be computationally slow and approach convergence
asymptotically. When a recycle loop with asymptotic characteristics does reach solution
within the given stream tolerances, it is sometimes a poor one because stream variables
can, with a large number of trials, still end up a considerable distance from the
“converged” solution.
The Wegstein acceleration technique permits rapid solution of recycles with asymptotic
convergence characteristics. The Wegstein has an acceleration factor, “q”, based on the
convergence characteristics shown by previous iterations. The factor “q” is calculated
based on stream values computed in previous iteration trials. A negative value of “q”
results in acceleration. The more negative, the faster the acceleration, but the more likely
TABLE 17.4-1
WEGSTEIN ACCELERATION
q Acceleration
1.0 Complete damping. Recycle streams never change.
0.0 < q < 1.0 Damping. This will help converge recycles with
oscillating convergence patterns.
TABLE 17.4-2
RECOMMENDED LOWER AND UPPER LIMITS FOR THE
WEGSTEIN ACCELERATION FACTOR
Lower Limit, Upper Limit, Description
ql B B quB B
result.
The user may change the upper and lower bounds globally for all recycle loops on the
ACCELERATION statement or individually for each loop on the LOOP statement.
The Broyden acceleration technique, based on the “Householder” method allows for rapid,
stable solution of recycle loops.
See the PRO/II Reference Manual for a more in-depth discussion on the Wegstein and
Broyden acceleration techniques.
TABLE 17.4-3
DEFAULT STREAM TOLERANCES
Entry Default Description
a 0.01 Relative component tolerance
b -1.00 Absolute temperature tolerance (F)
c 0.01 Threshold concentration
d 0.01 Relative pressure tolerance
Examples
1: Accelerate All Recycle Loops
RECYCLE DATA
ACCELERATION TYPE=WEGS
PRO/II automatically determines the recycle loop calculational sequence. After the first
trial, Wegstein acceleration is used on all tear streams for every subsequent trial. The
values for the lower and upper limits of the acceleration factor default to -5.0 and 0.0,
respectively.
Keyword Summary
Initial Input File Header (required)
TITLE NEWFILE=fileid, CASEID=BASECASE,
{SITE=text, PROBLEM=text},
{PROJECT=text, USER=text, DATE=text}
NEWCASE Option
Only one NEWCASE section may appear in an input file. If present, NEWCASE
must be the first section of RESTART data in the file.
RESUME Option
RESUME sections may appear multiple times and in any order relative to CASESTUDY
and REPORT sections.
{KVALUE, XYDATA}
CASESTUDY Option
CASESTUDY sections may appear multiple times and in any order relative to RESUME
and REPORT sections. CASESTUDY is described in Section 18.2.
{KVALUE, XYDATA}
CHANGE
REPORT Option
REPORT sections may appear multiple times and in any order relative to
CASESTUDY and RESUME sections.
{KVALUE, XYDATA}
General Information
RESTART is an executive level feature which allows access to any previously executed
case for a variety of purposes. RESTART allows simple reporting of results, perhaps in
different output formats. The user may interrupt program execution and later RESUME the
interrupted case calculations. The CASESTUDY feature (described separately in Section
18.2) allows parametric studies of problems, while NEWCASE allows replacing unit
operations in existing cases to create new cases. These features provide convenience
and can save significant amounts of user’s time.
Input Description
Input File Header
TITLE NEWFILE=fileid, CASEID=BASECASE,
or
OLDFILE=fileid,
{SITE=text, PROBLEM=text},
{PROJECT=text, USER=text, DATE=text}
This is the normal TITLE statement as described in Section 5, General Data. The
additional entries NEWFILE, CASEID, and OLDFILE instruct PRO/II to create, save, or
retrieve the database information.
NEWFILE Required on an initial run intended for restarting, NEWFILE
causes PRO/II to save the database files created by the
run. If NEWFILE is not specified, database files normally
are not saved, and cannot be used for restart. Using this
option deletes any existing file having the same name as
one generated from the specified ‘fileid’.
CASEID When an initial run contains the NEWFILE option to create
and save a database, this keyword identifies the first case
in the run. Its argument is a string of up to 12 alphanumeric
characters and may not include blanks. If not given, caseid
defaults to ‘BASECASE’.
OLDFILE This entry informs the program that a ‘RESTART’ run is
beginning. When OLDFILE is used, PRO/II searches for an
existing database file having a name based on the supplied
NEWCASE Option
NEWCASE OLDCASE=caseid, NEWCASE=caseid
NEWCASE is the first statement in a section of input that continues calculations of an
existing case. NEWCASE requires the replacement of the unit operations in the case
defined by the OLDCASE keyword. When used, ALL unit operations input data must be
replaced; at least one unit operation must be entered. Only one NEWCASE statement
may appear in an input file. If present, NEWCASE must be the first section of RESTART
data in the file.
OLDCASE All stream information from the old case is copied into the
new case. No unit operation data is copied. An error
results if the OLDCASE entry is missing, or if the caseid
argument is missing or invalid. Specifying a nonexistent
case generates an error message.
NEWCASE This entry identifies the new case to create and store. If
absent, an error results. An error also results if NEWCASE
specifies an existing case in the database.
caseid The case identifier.
RESUME Option
RESUME sections may appear multiple times and in any order relative to CASE-STUDY
and REPORT sections.
{MULTIPLE},
U U
{KVALUE, XYDATA}
This optional statement applies to a single distillation column. One COLUMN statement is
allowed for each distillation column in the case. It allows resetting the maximum number of
iterations allowed for the column to converge. It also allows changing the options used for
printing intermediate and final results for the column.
UID The COLUMN uid.
ITERATION This entry changes the number of iterations allowed to achieve
convergence.
INTERMEDIATE Refer to Section 12.1, Column Input, for a description of these
COMPOSITION keywords. The INTERMEDIATE entry is the same as the PRINT
MULTIPLE ITER entry in the COLUMN input.
PROPTABLES
KVALUE
XYDATA
CASESTUDY Option
CASESTUDY sections may appear multiple times and in any order relative to RESUME
and REPORT sections. CASE STUDY is described in Section 18.2.
REPORT Option
REPORT sections may appear multiple times, and in any order relative to CASESTUDY
and RESUME sections.
REPORT OLDCASE=caseid
This must be the first statement in a REPORT section of input. It must appear after any
NEWCASE sections. All reports are processed in the order of appearance in the input file
and are executed as they are encountered. Any number of REPORT sections may
appear in a run.
Examples
1: Initial Run with REPORT Restart
Initial PRO/II Run - The initial run in this example contains two case studies in addition to
U U
its base case. The base case is named HX1. The first case study uses the base case
HX1 as its starting point and creates a new case named HX2. The second case study
uses case HX2 as its starting point and creates a third case named HX3. The three cases
(HX1, HX2, and HX3) are saved as database file(s) DB2.
TITLE NEWFILE= DB2, CASEID= HX1, PROBLEM= EXAMPLE-2
COMPONENT DATA
LIBID 1, H20 / 2, CO2 / 3, N2 / 4, C1 / 5, C2
THERMO DATA
METHODS SYSTEM= SRK, DENS(L)= API
STREAM DATA
PROP STREAM= C1, RATE= 1000, TEMP= 52, &
PRES= 180.3, COMP= 2, 45 / 32 / 700 / 223
PROP STREAM= 2, RATE= 2110, TEMP= 190, &
PRES= 83, COMP= 1, 2110
UNIT DATA
FLASH UID= F1
FEED 2
PROD V= 10, L= H1
ADIA PRES= 75, DUTY=22.1
HX UID= H1
HOT FEED= H1, L= H2, DP=8
COLD FEED= C1, M= C2, DP= 15
CONFIG U= 125, TPASS= 4, SPASS= 2
OPERATION CTEMP= 100
CASESTUDY OLDCASE= HX1, NEWCASE= HX2
CHANGE FLASH= F1, PRES, VALUE= 60
CHANGE HX= H1, CTEMP, VALUE= 110
CASESTUDY OLDCASE= HX2, NEWCASE= HX3
CHANGE HX= H1, CTEMP, VALUE= 120
CHANGE HX= H1, HDP, VALUE= 10
CHANGE HX= H1, CDP, VALUE= 10
Restarted PRO/II Run - The restart run in this example prints three reports, one report for
U U
each of the three cases (HX1, HX2, and HX3) from the database file DB2.
TITLE OLDFILE= DB2, PROBLEM= R6, PROJECT= RESTART
REPORT OLDCASE= HX1
REPORT OLDCASE= HX2
REPORT OLDCASE= HX3
starting point and creates a new case, C01R. The two cases (C01 and C01R) are saved
as database file DB3.
TITLE OLDFILE= DB3
RESUME NEWCASE= C01R, OLDCASE= C01
COLUMN UID= C1, ITERATIONS= 10
the run as database file DB2. Note that the problem has two unit operations, a flash unit
and a heat exchanger.
TITLE NEWFILE= DB2, CASEID= HX1, PROBLEM= EXAMPLE-2
COMPONENT DATA
LIBID 1, H20 / 2, CO2 / 3, N2 / 4, C1 / 5, C2
THERMO DATA
METHODS SYSTEM= SRK, DENS(L)= API
STREAM DATA
PROP STREAM= 1, RATE= 1000, TEMP= 52, &
PRES= 180.3, COMP= 2, 45 / 32 / 700 / 223
PROP STREAM= 2, RATE= 2110, TEMP= 190, &
PRES= 83, COMP= 1, 2110
UNIT DATA
FLASH UID= F1
database file DB2 as its starting point. Note that since the NEWCASE statement is used,
unit operations input is included for the flash unit and heat exchanger in the original
problem. A new case, LNG1, is added to the database file. In addition, two case studies
(HX2 and LNG2) are added to the database file. Finally, the original base case (HX1) is
reprinted.
TITLE OLDFILE= DB2, PROBLEM= R1, PROJECT= RESTART
NEWCASE OLDCASE= HX1, NEWCASE= LNG1
UNIT OPS
LNGHX UID= LNG1
HOT FEED= 2, L= H2, DP= 8,
COLD FEED= 1, M= C2, DP= 15, NUMBER= 1, TOUT= 100
FLASH UID= F1
FEED H2
PROD V= 10, L= H1
ADIA PRES= 75
DEFINE DUTY, AS, LNGHX= LNG1, DUTY (1)
HX UID= HX1
HOT FEED= H1, L= H3, DP= 8
COLD FEED= 1, M= C3, DP= 15
CONFIG U= 125, TPASS= 4, SPASS= 2
OPERATION CTEMP= 100
CASESTUDY OLDCASE= HX1, NEWCASE= HX2
CHANGE FLASH= F1, PRES, VALUE= 60
CHANGE HX= HX1, CTEMP, VALUE= 110
CASESTUDY OLDCASE= LNG1, NEWCASE= LNG2
CHANGE FLASH= F1, PRES, VALUE= 60
CHANGE LNGHX= LNG1, TOUT(1), VALUE= 110
REPORT OLDCASE= HX1
Keyword Summary
Initial Input Case Header (required)
TITLECASEID=BASECASE, {SITE=text*12, PROBLEM=text*12},
{PROJECT=text*12, USER=text*12, DATE=text*12}
The TITLE statement must be the first statement in the input file. Follow with normal
PRO/II input statements that fully define the problem flowsheet. Include sections for
COMPONENT, STREAM, THERMODYNAMICS, and UNIT OPERATIONS categories of
input.
Optionally, you can include data for the RXDATA, PROCEDURE DATA, and RECYCLE
DATA categories of input. All case study data should appear last in the input file. Refer to
Table 3-1 for proper ordering of data in a normal input file. In addition, refer to the
Guidelines section later in this chapter, and section 18.1, Restart, for special
considerations when case study is included in a restart file.
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
On a thermodynamic parameter:
PARAMETER {ID=id*12}, THERM=setid*12, <parameter>,
STEPVALUE(ACTUAL, FRACTION, PERCENT)= value,
U U
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
{KVALUE}, {XYDATA}
TOLERANCE (optional, see Chapter 5, General Data)
DESCRIPTION (optional, see Chapter 5, General Data)
PRINT (optional, see Chapter 5, General Data)
DBASE (optional, see Chapter 5, General Data)
Case study does not allow replacing unit operations, streams, or thermodynamic
method sets in the flowsheet. All these are fully defined by the old case.
Each case study executes and solves the flowsheet at least once. Each execution of the
flowsheet is called a “cycle.” The initial state of each case study often is referred to as the
“base cycle” or “cycle zero”. When no CHANGE statements are present, the state of case
study base cycle is identical to the state of the old case. CHANGE statements accept a
single value that is applied to cycle zero and remains invariant for all parametric cycles in
the case study.
The user may employ PARAMETER statements to modify the values of flowsheet
parameters and perform parametric studies within each case study. PARAMETER
statements never modify the base cycle; they apply only to the parametric cycles. The
current limit on the number of cycles is 3000, although memory and disk storage
availability may impose a lower practical limit. By defining an incremental step value, an
optional starting value, and an optional starting and ending cycle number on each
PARAMETER statement, the user controls each flowsheet parameter individually in each
cycle.
Using RESULT statements, the user may retrieve, store, and display computed flowsheet
values of interest in every cycle. Usually, RESULTs are selected to reflect and
demonstrate the effect of PARAMETER statements. In general then, PARAMETER
statements allow the user to control and modify independent variables (supplied by the
user) that are invariant in the initial flowsheet. RESULT statements, on the other hand,
identify dependent flowsheet quantities that are calculated in the course of solving the
flowsheet. Chapter 10.3, Flowsheet Parameters, Table 10.3-2 A-B lists all stream
parameters and Table 10.3-3 A-H lists all unit operation parameters available on
PARAMETER statements. Table 10.3-3l lists all thermodynamic parameters available on
PARAMETER statements.
For each parametric cycle, only the PARAMETER and RESULT values are saved.
(CHANGE values also are reported but remain invariant.) These values are reported in the
Case Study Summary section of the output report. Except for the PARAMETER and
RESULT values, all flowsheet data for each cycle is discarded and permanently lost.
However, complete flowsheet data is saved and reported for the base cycle. The base
cycle represents the final state of the flowsheet after completion of all parametric cycle
Input Description
Initial Case Header (required)
TITLECASEID=BASECASE,
SITE=text*12, PROBLEM=text*12},
{PROJECT=text*12, USER=text*12, DATE=text*12}
Every PRO/II keyword input file requires a single TITLE statement as the first statement of
input data. Normally, a complete self-contained flowsheet definition, called the ‘’base
case,’’ must follow the TITLE statement. The base case is defined by following the normal
input conventions of PRO/II. Case study data may appear only after the end of all base
case data.
A ‘’RESTART’’ file does not include a base case. Refer to Chapter 18.1, Restart,
for a description of using case study in a restart file.
CASEID This entry assigns an identifier of up to 12 characters to the base
(required) case. The CASEID entry is required to identify the base case so it
can be used as the basis (old case) of a subsequent case study. If
CASEID appears alone with the identifier entry omitted, the base
case identifier defaults to ‘’BASECASE.’’
If no flowsheet parameters are modified, a case study would simply repeat the
calculations of the base cycle. Therefore, at least one PARAMETER or CHANGE
statement must be supplied.
Each PARAMETER statement assigns one or more new values to a single flowsheet
parameter. Only invariant flowsheet parameters may be controlled by PARAMETER
statements. Usually this means that, if the user supplied an input value for a parameter in
the flowsheet base case, that parameter is available to be controlled by a PARAMETER
statement; otherwise it is not. If the value of a PARAMETER is changed during flowsheet
calculations, a diagnostic error message is issued, but execution is not interrupted.
On a stream:
PARAMETER {ID=id*12}, STREAM=sid*12, <parameter>,
STEPVALUE(ACTUAL, FRACTION, PERCENT)= value,
U U
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
On a unit operation:
PARAMETER {ID=id*12}, <unit type>=uid*12, <parameter>,
STEPVALUE(ACTUAL, FRACTION, PERCENT)= value,
U U
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
On a thermodynamic parameter:
PARAMETER {ID=id*12}, THERM=setid*12, <parameter>,
STEPVALUE(ACTUAL, FRACTION, PERCENT)= value,
U U
RELATIVE)= value},
{CYCLES= 1, 1}, {NAME=text*40}
There is no limit to the number of PARAMETER statements allowed in each case study.
Refer to the Guidelines and the Examples sections later in this section.
{KVALUE}, {XYDATA}
UID The COLUMN unit operation identifier (assigned in the
base case).
ITERATION This entry changes the number of iterations allowed to
achieve convergence.
INTERMEDIATE Refer to Section 12.1, Column Input, for a description of
COMPOSITION these keywords. The INTERMEDIATE entry is the same as
MULTIPLE the PRINT ITER entry in the COLUMN input.
PROPTABLES
KVALUE
XYDATA
Guidelines
PRO/II supports case studies in both normal and restart runs. All Case Study categories
appear at the end of the PRO/II input file following all unit operations and recycle data.
Case Studies execute in the order of their appearance in the input file. Refer to Table 3.1
for information about properly ordering data in an input file.
A case in PRO/II is a data set that defines one state of a flowsheet for a fixed set of
operating conditions. All cases in the database share these attributes:
A fixed slate of components.
A fixed slate of thermodynamic methods.
A fixed slate of unit operations and associated streams
All cases reside in a single set of database files.
A case study in PRO/II operates on a single case by permutating flowsheet variables
according to the instructions supplied on PARAMETER statements. Typically, the case
study, ‘’cycles’’ to obtain a series of solutions to the flowsheet. The total number of cycles
in a case study is determined from the number of cycles supplied on the PARAMETER
statements. The overall sequence of events in a case study is:
Make a copy of the declared ‘’old case.’’ One complete copy of the flowsheet is created
within the database files for each case study. After the copy operation, any CHANGE
The first case study must refer to the base case on its OLDCASE entry, since
the base case is the only preexisting case. A second subsequent case study then
could refer to either the base case or the first case study in its OLDCASE entry.
4. Any number of case studies may appear in an input file, even in ‘’restart’’ runs.
When case studies appear in a restart file, the TITLE statement must include an
OLDFILE entry as described in section 18.1, Restart.
5. Within each case study, use CHANGE statements to make one-time
modifications that are applied in the base cycle. These values remain invariant
through all subsequent parametric cycles of the case study.
6. Use PARAMETER statements to perform parametric studies. Each
PARAMETER statement permutates a single flowsheet parameter.
7. Retrieve and report any desired flowsheet data by using RESULT statements.
Table 18.2-1:
Examples of Using STARTVALUE
Base Supplied Actual Starting Value (Pstart) B B
(Pn,0)
B B
27 30 30
27 -3 -3
27 25 25
PERCENT Pn,sv = Pn,0 + (Pn,0 * Pn*/ 100.0)
B B B B B B B B
(Pn,sv)
B B (Vns)
B B
(default) -5 5
15 -5
15
PERCENT 10 5 Vnstep = Pn,sv * Vns / 100.0)
B B B B B B
-5 0.5 = 10 * 5 / 100.0
150 -0.5 = 10 * -5 / 100.0
15.0 = 10 * 150 / 100.0
FRACTION 10 0.5 Vnstep = Pn,sv * Vns
B B B B B B
Table 18.2-3
Examples of Using Cycles
Cycle Supplied Actual Step Start End Cycle Parameter Actual
Zero START Starting Value Cycle Cycle (Ci)
B B Value in
Value VALUE Value (Vs)
B B (Cs)
B B (CE)
B B i= each cycle i
(P0) (Pstart)
B B (Pi ) B B
10 missing 10 5 0 10 = P0B B
1 1 1 10 = P1 = Pstart
B B B B
2 10 = P2 = P0
B B
10 15 15 5 0 10 = P0B B
1 1 1 15 = P1 = Pstart
B B B B
2 10 = P2 = P0
B B B B
10 missing 10 5 0 10 = P0B B
1 1 10 = P1 = Pstart = P0
B B B B B B
2 15 = P2 = Pstart + Vs
B B B B B B
3 3 20 = P3 = P2 + Vs
B B B B B B
4 10 = P4 = P0
B B B B
10 15 15 5 0 10 = P0B B
1 1 15 = P1 = Pstart
B B B B
2 20 = P2 = Pstart + Vs
B B B B B B
3 3 25 = P3 = P2 + Vs
B B B B B B
4 10 = P4 = P0
B B B B
10 15 15 5 0 10 = P0B B
1 10 = P1 = P0
B B B B
2 2 15 = P2 = Pstart
B B B B
3 20 = P3 = Pstart + Vs
B B B B B B
4 4 25 = P4 = P3 + Vs
B B B B B B
5 10 = P5 = P0
B B B B
15 20 20 -10 0 15 = P0B B
1 1 20 = P1 = Pstart
B B B B
2 2 10 = P2 = Pstart + Vs
B B B B B B
3 15 = P3 = P0
B B B B
Example
1: Flash Case Study Example
This problem illustrates the flexibility of the PARAMETER and RESULT statements. It
consists of a base case and one case study. The base case has two unit operations, both
flash units. Because no CASEID entry appears on the TITLE statement, the case ID
defaults to ‘’BASECASE.’
TITLE PROBLEM=CASE, PROJECT=CSFLSH, USER=SIMSCI,
DIME LIQV=GAL, PRESSURE=PSIG
PRINT INPUT=ALL, STREAMS=PART
COMPONENT DATA
LIBID 1, WATER / 2, ETOH / 3, METHANE / 4, ETHANE / &
5, PROPANE / 6, IBUTANE / 7, BUTANE / 8, IPENTANE / &
9, PENTANE / 10, HEXANE / 11, HEPTANE
THERMO DATA
METH SYSTEM=PR, DENS(L)=LK, TRANS=LIBR
STREAM DATA
PROP STRM=3, TEMP=20.0000, PRES= 600.0000, &
COMP= 1, 2000.0000 / 2, 211.9103 / 3, 1957.0222 / &
4, 205.7485 / 5, 152.43610 / 6, 26.5223 / &
7, 65.3680 / 8, 18.4852 / 9, 21.9679 / &
10, 11.2519 / 11, 8.3050
UNIT OPERATIONS DATA
FLASH UID=F1
FEED 3
PROD V=V1, L=L1
ADIA TEMP=20
FLASH UID=F2
FEED 3
PROD V=V2, L=L2
ADIA PRES=600
CASESTUDY OLDCASE=BASECASE, NEWCASE=NC1
PARAM ID=F1Temp, FLASH=F1, TEMP, STARTVAL(RELATIVE)=-3, &
STEP=1.0, CYCLES=1,6 &
NAME= Temperature-of-Flash-Drum-F1
PARAM ID=F2PRES, FLASH=F2, PRES, STARTVAL=610, STEP=-5, &
Output Results
Results of this case study appear in a Case Study summary, as shown below:
EXECUTION
Interactive execution enables the user to actively control the calculation of a flowsheet
even while executing from keywords as opposed to the Provision GUI. The user can view
results, change key process variables, recalculate selected units or redirect the calculation
flow interactively.
Once an input is created, two modes of execution are available: batch (default) or
interactive. Under batch execution, calculations proceed uninterrupted to the completion of
the defined flowsheet or until a unit or recycle loop fails to converge. At this time
calculations are terminated and the program is exited. Under this mode, the user has no
control over calculations during program execution.
The interactive execution mode is menu driven, and operates similarly on mainframe
computers, workstations and microcomputers.
The menu system is entirely self-explanatory. Once interactive execution has been
activated and the menu system turned on, this documentation should only be required for
occasional reference.
Interactive execution may be requested by including an INTERACTIVE statement in the
General Data Section (Section 5), or activated during a run initiated under batch execution
by pressing the interrupt key after the calculation phase of the program execution has
been entered. The interrupt key is ignored if pressed during input processing or output
generation.
The interrupt key is different for different computer versions of PRO/II. Table 18.3-1
tabulates the interrupt key for some computer installations. If your computer is not listed
here, call your SimSci representative for more information.
Table 18.3-1
Interrupt Key for Different Computers
Intel (MS-DOS) <Esc>
VAX (VMS) ^C
Most workstations (UNIX‰) <Esc>
Note that, as of this writing, the interactive feature is not accessible through interrupt keys
on IBM mainframe installations. Instead, invoke the interactive feature through the
command file.
Interactive execution does not begin until input checking is complete. If input errors are detected,
the interactive mode will not be entered and PRO/II will be exited. If no input errors are found,
program execution will pause and the program will prompt the user for an interactive command.
At this point the user may issue any command from Table 18.3-2.
PRIME and PRIMOS are registered trademarks of Prime Computers. IBM is a registered trademark
of international Business Machines. VAX and VMS are trademarks of Digital Equipment
Corporation UNIX is a registered trademark
The interrupt key. (see Pressing the interrupt key causes PRO/II to enter
Table 18.3-1) the interactive mode after completion of the
current unit or column iteration. This function is
active only during the calculation phase of the
program (i.e., it is ignored during the input and
output phase).
SEt BReak FAilure Sets and clears breakpoints. Break- points are
SEt BReak UNit uid the points in the flowsheet where the interactive
SEt BReak LOop id mode is entered. UNIT and LOOP breakpoints
SEt BReak AFter UNit uid are taken as before the defined unit or loop
SEt BReak AFter LOop id executes, unless AFTER is specified. FAILURE
CLear BReak FAilure CLear defines the breakpoint at a unit or loop which
BReak UNit uid CLear fails to converge.
BReak LOop id
CLear BReak AFter UNit uid
CLear BReak AFter LOop id
CLear BReak All
SEt DEfault STream id Defines the stream or unit used in the VIEW and
SEt DEfault UNit uid CHANGE commands when a stream id or unit
CLear Default uid is not explicitly defined on the command line.
View
All stream parameters that may be viewed are given as <references> in Table
10.3-2 A-B. All unit operation parameters that may be viewed are given as
<references> in Table 10.3-3 A-H.
VIew UNit uid HElp List the items that may be viewed for defined unit
uid.
VIew item View specific items for the default unit or the
VIew UNit uid item defined unit uid.
CHange
All stream parameters that may be changed are listed in Table 10.3-2 A-B. All
unit operation parameters that may be changed are listed in Table 10.3-3 A-H.
CHange STream id HElp List the items that may be changed for the
CHange UNit uid HElp defined unit uid or stream id.
CHange item value Change the value of one or more items for the
CHange STream id item value default unit or stream, or for the defined unit uid
CHange UNit uiditem value or stream id.
GOto
GOto UNit uid Sets execution pointer at this unit or loop. When
GOto LOop id the next RUN or STEP command is issued,
execution will begin at the unit uid or at the
beginning of the defined loop id.
Execution Commands
WHere Displays the current location in the execution
sequence.
RUn Continue execution until the next breakpoint, or
until the interrupt key is pressed.
STep Execute next unit, loop begin or loop end.
STep n Execute next ‘n’ units. A loop begin or loop end
counts as one unit.
stream will be flashed at P1, T2 and the results displayed automatically. If, instead of
B B B B
temperature, the pressure is changed to P2, the stream will be flashed at P2, T1 and the
B B B B B B
Change Specifications
Column specifications may be supplied in the keyword file as active (on a SPEC
statement) or inactive (on a SPEC(CHANGE) statement). To interactively view the current
list of active and inactive specifications on column T101 enter:
ENTER COMMAND
} VIEW UNIT T101 SPECS
To change a value on third specification listed, enter:
ENTER COMMAND
} CHANGE UNIT T101 SPEC 3 VALUE 105
or
} CHANGE UNIT T101 SPEC 3 105 (VALUE is default)
To swap an active specification with an inactive one, use the ‘TO’ entry. For example, to
make specification 3 inactive and specification 1 active:
ENTER COMMAND
} CHANGE UNIT T101 SPEC 3 TO 1
To change a duty, it is necessary to include the duty ‘idno’ before the actual value. For
example:
ENTER COMMAND
} CHANGE UNIT T101 DUTY 1 -5.3
To adjust the current column pressure profile, or temperature, vapor or liquid profile
estimates, the tray number must be given with each data point. Trays not given will be
determined through linear interpolation. In the following example, the pressure profile is
changed, and the temperature and vapor profile estimates are changed.
DEPRESSURING UNIT
Keyword Summary
Unit Identification (required)
DEPRESSURE UID=uid, {NAME=text}
Feeds (required)
FEED sid, {sid, . . .}
MAKEUP sid
Products (optional)
PRODUCT sid, {sid, . . .}
Configuration (required)
Choose one of the following forms:
Vessel volume specified, initial holdup computed by default.
VESSEL VOLUME(unit)=value,
{WEIGHT(unit)=value and CP(unit)=value}
Vessel volume and initial liquid holdup specified.
VESSEL VOLUME(unit)=value, {HOLDUP}(basis,unit)=value,
{WEIGHT(unit)=value and CP(unit)=value}
Spherical vessel specified.
VESSEL SPHERICAL, DIAMETER(unit)=value,
{VOLFACTOR= 1.0},
{LIQHEIGHT(unit)=value},
{WEIGHT (unit)=value and CP(unit)=value}
Horizontal vessel specified.
VESSEL HORIZONTAL(unit)=value,
DIAMETER(unit)=value, {VOLFACTOR=1.0},
{LIQHEIGHT(unit)=value},
{WEIGHT(unit)=value and CP(unit)=value}
VAPOR or CHOOSE,
CSIZE=0.04}
RELIEFVALVE MODEL=SUPERSONIC, CONSTANT=value,
or
MODEL=SUBSONIC, PBACK(unit)=value,
CONSTANT=value,
or
MODEL=CONSTANT, CONC=value,
or
MODEL=USER, PBACK(unit)=value,
CV =value, CF=1.0,
HEAT MODEL=USER, DATA=C1 , C2 , C3 , C4 , C5 , B B B B B B B B B B
{QFAC=1.0},
or
MODEL=API2000 or APISCALE or RP520 or
RPSCALE,
{QFAC=1.0}, IWAREA(unit)=value, {AFAC=1.0}
or
MODEL=ISOTHERMAL,
or
MODEL=BLOWDOWN, HTAREA(unit)=value,
{HTCFAC=1.0, DATA= C1 , C2 , C3 , C4 , C5 ,
B B B B B B B B B B
or
MODEL=BLOWDOWN, HTC(unit)=value,
HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 , },
B B B B B B B B B B
or
MODEL=BLOWDOWN, HTCVAP(unit)=value,
HTCLIQ(unit)=value, HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 ,, }
B B B B B B B B B B
or
MODEL=FIRERELIEF, DATA= C1 , C2 , C3 , B B B B B B
{RELIEF or DELPRES(unit)=value or
DELTIME(unit)=value}
PLOT {TEMP, PRES, COMB}
General Information
The DEPRESSURING unit determines the time-pressure-temperature relationships when
depressuring a vessel through a relief or control valve. The phase of the contents may be
vapor or a liquid-vapor mixture.
Calculation options include procedures from API standard 2000, API recommended
practice 520, and others. Refer to the PRO/II Reference Manual for a detailed description
of these methods. The model employs an incremental approach using discrete time steps.
Calculations occur during normal flowsheet convergence. The user can specify product
streams from the unit. These product streams correspond to the vent gas stream at the
specified output steps. The first product is already the initial vent gas; the second product
is the relief condition vent gas if a relief condition is specified or the first output time step.
The output time steps are determined by the PRINT DELPRES or PRINT DELTIME
entries or default to each time step if no print option is entered.
The user may furnish valve flow characteristics for use by one of several models provided.
Options allow definition of a makeup flow rate and an external heat flow. Models of
horizontal, vertical, or spherical vessels are allowed. Results include component flow
rates for the total vessel mixture, residual liquid, vapor, vent gas, and cumulative vent gas.
Vent rate, heat input, temperature, and pressure for each incremental time step also
appear.
The combined feed streams are mixed adiabatically and are used to initialize the
depressuring unit. Because the liquid holdup in a vessel is usually different from the liquid
fraction in the feed stream, the user should specify the initial liquid holdup. If the HOLDUP
or LIQHEIGHT is specified, the composition of the liquid phase will be set to the
composition of the the liquid phase of the feed and the composition of the vapor phase will
be set to the feed vapor composition.
If the feed is all liquid, and a HOLDUP or LIQHEIGHT is specified, the initial temperature
will be set to the bubble temperature of the feed stream at the feed stream pressure; the
vapor composition will be calculated from the bubble point equilibrium composition.
Input Description
Unit Identification (required)
DEPRESSURE UID=uid, {NAME=text}
This must be the first statement of each DEPRESSURING unit.
Feeds (required)
FEED sid, {sid, . . .}
MAKEUP sid
FEED The combined feed streams define the initial composition of the
vessel contents. It may be vapor or mixed liquid and vapor. Some
vapor must be present before depressuring begins.
MAKEUP Optionally allows specification of a stream that serves as a
constant-rate makeup feed. Flow always begins at time zero,
regardless of when depressuring begins.
Products (optional)
PRODUCT sid, {sid, . . .}
PRODUCT The vent gas product at the specified DELPRES or DELTIME time
steps. The unit will create as many products as are entered or are
calculated, whichever is the lesser of the two.
Configuration (required)
VESSEL VOLUME(unit)=value,
{HOLDUP(basis, unit)=value},
{WEIGHT(unit)=value and CP(unit)=value}
or
VESSEL SPHERICAL, DIAMETER(unit)=value,
or
HORIZONTAL(unit)=value, DIAMETER(unit)=value,
The VESSEL statement defines the configuration of the depressuring unit. It is required.
VAPOR or CHOOSE,
CSIZE=0.04}
This statement requires PFINAL, DEPRESTIME, or FINALTIME to define final
depressured conditions. DEPRESTIME and FINALTIME are mutually exclusive. All other
entries are optional.
or
MODEL=SUBSONIC, PBACK(unit)=value,
CONSTANT=value,
or
MODEL=CONSTANT, CONC=value,
or
MODEL=USER, PBACK(unit)=value,
CV =value, CF=1.0,
{QFAC=1.0},
or
MODEL=API2000 or APISCALE or RP520 or
RPSCALE,
{QFAC=1.0}, IWAREA(unit)=value, {AFAC=1.0}
or
MODEL=ISOTHERMAL,
or
MODEL=BLOWDOWN, HTAREA(unit)=value,
{HTCFAC=1.0, DATA= C1 , C2 , C3 , C4 , C5 , B B B B B B B B B B
or
MODEL=BLOWDOWN, HTC(unit)=value,
HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 , },
B B B B B B B B B B
or
MODEL=BLOWDOWN, HTCVAP(unit)=value,
HTCLIQ(unit)=value, HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 ,, }
B B B B B B B B B B
or
MODEL=FIRERELIEF, DATA= C1 , C2 , C3 , B B B B B B
0.5
SUBSONIC CONSTANT * ((P-PBACK) * ρv) B B P P
CONSTANT CONC
USER A * Cr * Cv * Yf * (P * ρv)
B B B B B B B B
0.5
P P
where:
P = Absolute (upstream) pressure in the vessel
ρv =
B Vapor density, in units of weight/volume.
B
2
PBACK>0.5 * CF * P. Typical value range between 0.8 and 0.9.
B PB P
QFAC=1.0
or
MODEL=BLOWDOWN, HTC(unit)=value,
HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 , },
B B B B B B B B B B
or
MODEL=BLOWDOWN, HTCVAP(unit)=value,
HTCLIQ(unit)=value, HTAREA(unit)=value,
{DATA= C1 , C2 , C3 , C4 , C5 ,, }
B B B B B B B B B B
or
MODEL=FIRERELIEF, DATA= C1 , C2 , C3 , B B B B B B
The HEAT statement defines heat flow into the vessel between the vessel and an external
source or sink. Positive heat values represent heat flow into the vessel. Table 19.1-2 lists
the available models. When vapor is present at initial conditions, depressuring may
proceed without application of heat or use of the HEAT statement. MODEL= USER is the
default. Refer to the PRO/II Reference Manual for a more detailed discussion.
MODEL Required to select the model for heat input. Table 19.1-2 lists the
various models. Refer to the PRO/II Reference Manual for a
description of these methods.
DATA When MODEL=USER, BLOWDOWN, or FIRERELIEF, the DATA
entry allows input of required constants for the equations in Table
19.1-2. Missing values default to zero. If MODEL= USER or
BLOWDOWN, C1 through C5 may be entered. The FIRERELIEF
model allows only C1, C2 , and C3. The dimensional units of these
constants must result in a computed heat with dimensions of millions
of energy units per time, in problem units.
IWAREA The initial wetted area as required for the API 2000, APISCALE,
RP520, RPSCALE, or fire relief methods. The default requires
dimensions of ft2 for English units and m2 for metric or SI units.
IWAREA is invalid when LIQHEIGHT appears on the VESSEL
statement.
QFAC A dimensionless factor for scaling vessel heat input. The calculated
heat input is multiplied by this factor. Any value greater than zero is
allowed. By default, QFAC = 1.0.
HTAREA The heat transfer area required by the gas blowdown model. The
area is calculated if the vessel geometry is input.
B
API2000 The API 2000 method, defined by: Q(BTU/hr) = A (CWAREA) , P P where:
A CWAREA (FT2 ) B
20000 20 - 200 1.000
199200 201 - 1000 0.566
963400 1001 - 2800 0.338
21000 > 2800 0.820
B
APISCALE The API2000 method, but with scaling: Q(Btu/hr) = A (CWAREA) * (Vs / Vi) P P
0.82
RP520 The API RP520 method, defined by: Q(Btu/hr) = 21000 (CWAREA) P P
0.82
RPSCALE The API RP520, but with scaling: Q(Btu/hr) = 21000 (CWAREA) P *(Vs / Vi)
P
ISOTHERMAL Hold temperature constant at its initial value, and use feed pressure as relief
pressure.
The internal heat transfer from the vessel to the fluid is defined by
where DT = Tv - Tfluid
Tv
B The vessel temperature in the current time step.
B
Tfluid
B The fluid temperature in the current time step.
B
{RELIEF or DELPRES(unit)=value or
DELTIME(unit)=value}
The PRINT statement is optional. It allows control of intermediate and final printed results.
Table 19.1-3
Entries Allowed On Define Statements
INPUT Valid <param> Entries
STATEMENT
OPERATION PFINAL, PRELIEF, FINALTIME, RELIEFTIME, DTIME,
TSTEP, ISENTROPIC
RELIEFVALVE CONSTANT, PBACK, CV, CF
HEAT IWAREA, HTAREA, HTC, HTCFAC, HTCVAP, HTCLIQ,
DATA(C1-C5), QFAC, AFAC
VESSEL HOLDUP, VOLFAC, LIQHEIGHT, VOLUME, DIAM,
WEIGHT, CP, HORIZONTAL, VERTICAL
Examples
1: Set the initial charge volume at 10.02 cubic meters of stream 20 in a vessel having a
volume of 64.52 cubic meters. Start depressuring at a 98 psia, and continue for 0.4 hours
using a calculation step of 1.0 minute. Model the heat input using the API RP520
equation with an initial wetted area of 16.98 square feet. Model the relief valve with the
default supersonic flow correlation with a constant of 669.2. Report intermediate results
every 0.05 hours, including plots of vessel fluid temperature and pressure profiles on a
single, combined plot.
DEPRESSURE UID=1, NAME=V-230
FEED 20
VESSEL VOLUME(M3)=64.52, CHARGE(LV,M3)=10.02
OPER FINALTIME(HR)=0.4, PRELIEF(PSIA)=98 &
STEPTIME(MIN)=1
RELIEFVALVE CONSTANT=669.
HEAT MODEL=RP520, IWAREA(FT2)=16.98
PRINT DELTIME(HR)=0.05
PLOT COMB
2: A routine blowdown requires depressuring a vessel to 5 psig. Since no holdup is
specified, assume a sufficient volume of feed to fill the vessel at the feed temperature and
pressure, which correspond to the relief conditions. Use the default time interval for
calculations, printouts, and plots. Report the vent quantity of each component in weight
units and moles. Print separate plots of vessel fluid temperature and pressure, as well as
a combined plot.
DEPRESSURE UID=2, NAME=BLOWDOWN
FEED 1
VESSEL VOLUME(M3)=597
OPERATION PFINAL(PSIG)=5
RELIEFVALVE MODEL=SUPERSONIC, CONSTANT=2900
PRINT WTOPT
PLOT TEMP, PRES, COMB
UNIT OPERATION
Keyword Summary
Unit Identification (required)
UPSTREAM UID=uid, {NAME=text}
Feeds (required)
FEED sid, {sid, . . .}
Product
The PRODUCT statement is required for the SELECTOR option, optional for the GOR
option, and not used for the DROPOUT, RELVOLUME, or CVD options.
PRODUCT V=sid, or L=sid, or W=sid, or M=sid
{RFPV(unit)=value}, {RFTV(unit)=value}
GOR temperature, pressure / temperature, pressure/ ...
Liquid Dropout
OPERATION DROPOUT, {REFPRESSURE(unit)=value},
{REFTEMPERATURE(unit)=value}, PEND(unit)=value,
[POINTS=value or DP(unit)=value]
DROPOUT pressure, dropout, {weighting factor} / &
pressure, dropout, {weighting factor} / ...
Relative Volume
OPERATION RELVOLUME, {REFPRESSURE(unit)=value},
{REFTEMPERATURE(unit)=value}, PSTART(unit)=value,
PEND(UNIT)=value, [POINTS=value or DP(unit)=value]
General Information
The UPSTREAM unit operation allows the user to perform a certain number of tasks that
are typical in oil and gas exploration and production activities. However, some of these
operations are useful in other types of flowsheets. The features covered by the
UPSTREAM unit are:
Stream Selector (SELECTOR): Allows the user to run the same flowsheet repeatedly
with changing inlet stream characteristics (temperature, flowrate, and composition). The
user declares all the possible feed streams and selects one to feed the UPSTREAM unit.
Combining this unit with the CASESTUDY option facilitates the comparison of flowsheet
feed stocks.
Gas Oil Ratio (GOR): Allows the user to calculate the Gas Oil Ratio on the basis of a
series of isothermal flashes.
Liquid Dropout (DROPOUT): Allows the user to calculate the liquid dropout curve for a
gas condensate reservoir fluid as a function of pressure at constant temperature.
Relative Volume (RELVOL): Allows the user to calculate the volume as a function of
pressure at constant temperature.
Constant Volume Depletion (CVD): Allows the user to simulate the emptying of a
vessel at constant temperature and constant volume.
Input Description
Unit Identification (required)
UPSTREAM UID=uid, {NAME=text}
This must be the first statement of each UPSTREAM unit.
Feeds (required)
FEED sid, {sid, . . .}
FEED A list of all possible streams which are allowed feed streams
to the UPSTREAM unit when the Stream Selector operation
is used. Recycle streams are not permitted as feed streams.
FEED The combined feed streams define the initial composition fed
to the unit.
Product
The PRODUCT statement is required for the STREAM SELECTOR, optional for the GOR
option, and not used for the DROPOUT, RELVOLUME, or CVD options.
PRODUCT V=sid, or L=sid, or W=sid, or M=sid
{RFPV(unit)=value}, {RFTV(unit)=value}
or
GOR(unit,unit) temperature, pressure / temperature, pressure/ ...
or
The OPERATION statement specifies the desired calculation option for the UPSTREAM
unit. Only one operational specification is allowed in each UPSTREAM module.
SELECTOR This calculation mode allows the user to isolate one feed stream
from a user-defined list for use in later calculations. This is a
very useful when the user must run a flowsheet repeatedly with
different feeds.
GOR This calculation mode allows the user to compute the Gas Oil
Ratio (GOR) as defined through a process of user-defined
flashes specified on the GOR statement.
DROPOUT This calculation mode allows the user to compute the liquid
dropout curve for a gas condensate reservoir fluid at a specified
temperature. PRO/II produces tabular results and a printer plot
of pressure versus the percentage of liquid volume produced by
the flash with respect to the volume occupied by the vapor at its
upper dew point saturation pressure or at any higher pressure
(e.g., reservoir pressure).
RELVOLUME This calculation mode allows the user to compute the relative
volume of a fluid over a specified pressure range at a specified
temperature. PRO/II produces tabular results and a printer plot
of pressure versus the relative volume of the fluid with respect
to a reference pressure.
PEND(unit) Specifies the lowest pressure for the DROPOUT, RELVOL, and
CVD calculations.
POINTS Specifies which pressure values PRO/II will use for the
or computation. The user may define either the number of
DP(unit) POINTS=N (where N <100) or a specific step size between
U U
Examples
1. STREAM SELECTOR. Use one input file to run five different feed stocks through a
propane/propylene splitter (see Application Brief P1 for column details).
The STREAM SELECTOR operation can be used with CASE STUDY, to vary feed
streams while limiting the simulation to one input file.
TITLE CASE=CASE1, PROBLEM=P1MOD
COMPONENT DATA
LIBID 1, C2 / 2, PROPENE / 3, C3 / 4, NC4
THERMODYNAMIC
METHOD SYSTEM=PR, DENSITY(L)=LK
KVALUE
KIJ 2,3,0.00663
DISTILLATION
Unit Identification (required)
T BATDISTILL UID = uid, {NAME = text}
or
FT=value(Real value)
Reboiler Specification
REBOILER HMETHOD= methodID (Heating MediaThermo)
U=value (Real value)
AREA=value (Real value)
or FRACTION or
U U
EITHER or
U U
PLOTDATA STARTTIME(units)=time,
ENDTIME(units)=time
FREQUENCY(units)=time
Each set of the following statements (START, CHARGE, DRAW, DISTILL, SPEC, VARY,
RUNUNTIL, ENDCUT, GOTO) must immediately follow the corresponding POLICYSEG
statement. START is optional. At least one of CHARGE, DRAW, DISTILL, ENDCUT, or
GOTO is required.
Multiple START statements are allowed within a POLICYSEG set.
START SEQUENTIAL, *
U U
or WITH = pseg
or {PENDED = pseg {and conditions below}}
or TIME(unit) = value, *
AMOUNT(basis, unit) = {cnoi, cnoj,} value/...,*
B B B B
or FRACTION or
U U
PPM
or PURITY(PERCENT or ,basis)
PPM
VALUE = value
STAGE = stgno, {stgno}, *
COMP = cnoi{cnoj/cnok/cnom},*
B B B B B B B B
RUNUNTIL STEADYSTATE
or TlME(unit) = value
or DTIME(unit) = value
or AMOUNT(basis, unit) = {cnoi, cnoj,} value/...,* B B B B
PPM
or TEMPERATURE(unit) = value,*
(the following apply to AMOUNT, PURITY and TEMPERATURE}
ACCUM or
POT or
IN = INSTDIST or /...
TOPV
EITHER or
U U
PRESSURE(unit) stgno,value/...
DPTIME(unit) = value
or
Snapshots: OVERALL(basis)
U U
COLUMN(basis)
U U
Conventions
Stage numbers
Stages are numbered from the top down. In the column itself, a stage
corresponds to an ideal (theoretical) tray. The condenser, or reflux splitter. is
counted as the first stage (stgno = 1) and the stillpot as the last.
INPUT DESCRIPTION
Unit Identification (required)
BATDISTILL UID=uid, {NAME=text}
The UID and NAME keywords are common to all unit operation headers and are
documented in Section 42.
Feeds (required)
FEED sid,sid, ...
A separate feed must be defined for all material entering the process with either
different compositions or different flash conditions (T,P, for example). The feeds
are input streams to the PRO/II unit operation which serve as sources from which
the actual charges, defined in the Operation Policy, will be taken. An unlimited
number of feeds are allowed.
Composition and flash conditions for each feed are defined before the feed
enters the batch distillation unit. If the unit is in a flowsheet, any feed that is also
an output from another unit will have a meaningful flowrate. This flowrate will be
reconciled with the use of that feed in charges during the batch cycle.
TPASS,
SPASS TPASS is the number of tube passes, and SPASS
defines the number of shell passes. When both
TPASS and SPASS are missing, the default is
TPASS=2 and SPASS= 1. There are always two
tube passes for each shell pass except where
overridden by the user. If only SPASS is given,
TPASS is set to twice the number of shell passes
for calculation of LMTD correction factors. If only
TPASS is given, SPASS is set to half of TPASS
(or to one, if TPASS=1). Except when TPASS =
SPASS = 1, whenever TPASS is not twice
SPASS, TPASS is reset to twice SPASS and a
warning is issued.
or
FT This is the LMTD correction factor used in a two-
sided exchanger. It should not be entered when
supplying either TPASS or SPASS. If missing, the
exchanger module calculates FT based on the
shell and tube passes.
U
AREA U supplies the value of the overall heat transfer
coefficient, and AREA defines the effective heat
transfer area of the exchanger. Either entry may
be used in any two-sided heat exchanger.
Supplying values for both U and AREA defines a
’UA’ performance specification.
or FRACTION or
U U
PPM
or TEMPERATURE(unit) = value,*
ACCUM or
POT or
IN = INSTDIST or /...
TOPV
EITHER or
U U
MAXTIME The maximum simulation time to be allowed. On reaching this time the
simulation will terminate normally, regardless of the state of any of the
policy segments. Only one MAXTIME specification is allowed.
CHGFRAC Switch to true if the contents of the stillpot reach the amount
corresponding to the specified traction of the initial charge to the still pot.
GOTO Subsequent charges during the simulation do not affect this amount. Only
one CHGFRAC specification is allowed.
AMOUNT IN Switch to true when the contents of either accumulator or stillpot for
APPROACH GOTO components cnoi through cnoj, or for the total contents if no component
B B B B
number is given, reach the specified value. Only ACCUM and POT are
allowed as locations with IN. Multiple AMOUNT specifications are
allowed.
PURITY Switch to true when the summed (mole, weight or volume) fractions,
percents or ppm's of components cnoi through cnoj in the specified
B B
IN location reach the specified value, arriving from above, below, or either as
APPROACH GOTO specified. Only POT, INSTDIST and ACCUM are allowed as locations.
The INSTDIST specification refers to the instantaneous distillate liquid
arriving at the accumulator. ACCUM refers to the perfectly mixed
accumulator contents. If ABOVE is specified, the criterion switches to true
only if the specified value is approached from above. Thc BELOW option
corresponds to an approach from below. Multiple PURITY specifications
are allowed.
The operation policy comprises one or more policy segments, each of which is entered
with a POLICYSEG statement followed by one or more statements from the subgroup
START, CHARGE, DRAW, DISTILL, SPEC, VARY, RUNUNTIL, ENDCUT or GOTO. The
policy segments will be initiated in sequential order of entry of the policy segments in the
input file, or according to criteria given on the START statement, except for jumps as
specified with GOTO. GOTO may be an independent action or may be specified in
connection with a given RUNUNTIL or STOP criterion. Several policy segments may be
simultaneously in play.
An unlimited number of policy segments is allowed. Each policy segment requires a
unique identifier. A segment may be prevented from or allowed to execute mote than once
in case of a return to the potential start conditions.
ID A unique identifier for the policy segment, of one
to twelve alphanumeric characters,
Each set of the following statements (START, CHARGE, DRAW, DISTILL, SPEC, VARY,
RUNUNTIL, ENDCUT, GOTO) must immediately follow the corresponding POLICYSEG
statement. At least one of CHARGE, DRAW, DISTILL, ENDCUT, or GOTO is required.
or WITH = pseg
or {PENDED = pseg {and conditions below}}
or TIME(unit) = value, *
AMOUNT(basis,unit) = {cnoi, cnoj,} value/...,*
B B B B
or FRACTION or
U U
PPM
or TEMPERATURE(unit) = value,*
ACCUM or
POT or
IN = INSTDIST or /...
TOPV
EITHER or
U U
TEMPERATURE
IN
APPROACH
Multiple CHARGE statements are allowed within a POLICYSEG set. The CHARGE action
is used for the initial charge to the stillpot, and any subsequent instantaneous or
continuous charges. Instantaneous charges are allowed only to the pot. Continuous
charges may be to any stage.
CHARGE FEED = sid {CHGID = chgid,} *
{STAGE = stgno}
AMOUNT(basis,unit) = value, (instantaneous)
or RATE(basis,unit) = value, (continuous)
{DTIME(unit) = value}
or AMOUNT(basis,unit) = value, * (continuous)
{DTIME(unit) = value or RATE(basis, unit) = value}
An initial charge to the stillpot must be included in the first sequential policy segment. An
initial charge must correspond to a fixed amount (no RATE without DTIME or AMOUNT).
All initial charges will be completed before distillation (DISTILL) is started.
If intended initial charges are specified partly as instantaneous charges and partly as
continuous charges with specified or implied duration (RATE with DTIME or AMOUNT),
only the instantaneous charges will be taken as initial charges.
If all initial charge(s) are specified as continuous with specified or implied duration, then
they must be in the first sequential policy segment (see above) and that segment cannot
include a DISTILL specification (see below). The charge(s) will be treated as
instantaneous: only the amount(s) will be used, and the distillation clock will not be started
until the total initial charge is complete.
Any instantaneous charge in the same policy segment with a DISTILL action, or in a policy
segment starting simultaneously with a DISTILL policy segment, will be carried out before
starting the DISTILL action.
Except for the initial charge as discussed above DISTILL action must be active in order for
continuous charging to occur.
TOPVAPOR The vapor rate at the top of the column entering the /
condenser. This is the primary setting for column loading. It
directly affects boil-up, stillpot heat duty and condenser duty.
This rate can now be given in normal ‘Rate’ units such as Mol
rate, Wt rate or Gas Volume rate.
and
L2RATE The heavier liquid (L2) distillate molar flowrate.
Liquid distillate is fed to the accumulator. Can be
given in any Rate units such as – Mol rate, Wt
rate or Liquid Volume rate. This must be given
ONLY with VLLE thermo at the condenser to
avoid errors. This specification will be overridden
by a subsequent L2RATIO specification.
or
HEATMEDIA The option needs to be given in Distill Spec for
considering HX parameters HX parameters when
reboiler Duty calculations are carried out. Default is
OFF.
HSTREAM Steam name that is given by Distill specification for
considering the rate, temperature and pressure
drop. Each policy can have a separate stream
name as long as the stream is defined under
STREAM section. The Thermo to be used by this
stream is defined under REBOILER card
specification.
or
SPEC refers to me set point of the controlled variable - the variable for which a value is to
be specified.
TEMPERATURE The temperature on the single stage specified with STAGE is
specified at the given value.
VALUE
STAGE
DTEMP The temperature drop between the first and second 'stgno's
VALUE given with STAGE is specified at the value given. The first, 'stgno'
must be greater than the second.
STAGE
COMP
Multiple RUNUNTIL statements are allowed within a POLICYSEG set. RUNUNTIL criteria
are reasons for stopping an individual policy segment, as opposed to the general stop
criteria, which remain in effect during the whole batch distillation.
RUNUNTIL STEADYSTATE
or TIME(unit) = value
or DTIME(unit) =value
or AMOUNT(basis,unit)= {cnoi,cnoj,} value/..., *
B B B B
or FRACTION or
U U
PPM
or TEMPERATURE(unit) =value, .
ACCUM or
POT or
IN = INSTDIST or /...
TOPV
Associated with the criteria STEADYSTATE, TIME, DTIME, AMOUNT. PURITY and
TEMPERATURE are logical switches which are initialized to false. If more than one
criterion from this group must be entered, for example, if both DTIME and PURITY are
needed, multiple START statements will be required.
Satisfaction of any one of the logical criteria on the one or more RUNUNTIL statements
within a policy segment is sufficient to terminate a DISTILL action. If the present policy
segment is sequential, operation will then move to the next sequential step (input file
order) unless redirected by GOTO (see below).
STEADYSTATE Switch to true when process conditions have
reached steady state. Allowed only for operation at
zero liquid distillate rate.
TIME Switch to true when the cumulative process time,
since the start of the simulation, reaches the
specified value.
DTIME Switch to true when the incremental time within
the present policy segment reaches the specified
value.
If any one of the remaining criteria is satisfied, GOTO may be used, if the present policy
segment is sequential, to transfer operation to another sequential policy segment.
AMOUNT For AMOUNT, PURITY and TEMPERATURE, refer to the keyword
descriptions for the various combinations given for the STOP
IN statement above.
APPROACH
GOTO
PURITY
IN
APPROACH
GOTO
TEMPERATURE
IN
APPROACH
GOTO
The ENDCUT action is used to dump the accumulator into a product. This action will not
be executed until a RUNUNTIL has terminated a DISTILL policy segment , ENDCUT is
allowed only in a sequential policy segment. ENDCUT is aliased to DUMPACCUM.
Snapshots: OVERALL(basis)
U U
COLUMN(basis)
U U
TRAYCOMP(basis)
(default is no profile output)
Profiles: LRATE(basis)
VRATE(basis)
TEMPERATURE
FRACTION (L or V, basis) (STAGEspec. required)
MBALANCE (default: no components)
CONTROLLER
(if not specified, default is to print all components on all stages)
Output COMP=coni{,conj/conk/conm/...}, *
B B B B B B B B
Modifiers: STAGE=stgnoi{,stgnoj}/.. . B B B B
If no PRINT statement is present, the printed output will consist of HISTORY at the
EVENTS level and a series of OVERALL and COLUMN snapshot reports, at the start and
end times of each policy segment.
The PRINT statement specifies additions and changes to these default reports. Both
snapshot and profile reports have default selections of output modifiers and print times.
The set of output modifiers and print times specified on & given PRINT statement applies
to all reports specified on that statement. Different selections of output modifiers and print
times for different reports can be specified through multiple PAINT statements.
HISTORY Governs the level of detail in reporting the
progress of the batch distillation. EVENTS reports
the times for initiating and terminating each action
of the policy, as well as the reasons for stopping
each policy segment. ALL adds in information
concerning the integration process.
The snapshot specifications print out tables for a given time, and repeat this for the series
of times as specified with the Print times options.
OVERALL Produces the Pot, Condenser and Accumulator
Summary, containing temperatures, pressures,
heat duties and fractional compositions for these
three locations, as well as distillate, top vapor and
reflux flows. This summary will include fractional
compositions for all components, regardless of
any COMP specification present.
COMUMN produces a stage summary table, containing
temperature, pressure,
STAGE liquid flowrate, vapor flowrate, and (continuous)
charge and draw rates for each stage in the
column. A column with 40 trays will generate
approximately one page of output for each print
time. The stages included may be modified
through the STAGE specification.
TRAYCOMP produces a table of fractional compositions for
selected stages. The
COMP defaults of all components and all stages may be
modified through
STAGE COMP and STAGE specifications.
Multiple PRINT statements may be used to specify tables for both weight and molar
bases.
Keywords LRATE, VRATE, TEMPERATURE, FRACTION, MBALANCE and
CONTROLLER all produce profiles in time; tables in which the columns correspond to the
LRATE LRATE, VRATE and TEMP generate tables of stage liquid rates, stage
vapor rates and stage temperatures, respectively. The basis qualifier
VRATE allows choice of molar, weight or volumetric flow rates. The default, print
TEMPERATURE for all stages, may be modified with STAGE.
STAGE
MBALANCE Produces a mass balance table, in mass units. The columns of the table
give the cumulative sums of all charges and products as well as the
COMP holdups in the pot, trays and reflux splitter, and the contents of the
accumulator, The relative error is reported as the last entry.
Keywords COMP and STAGE supply the selection of compo"ents and stages for
reporting, overriding the default selections.
COMP If specified, report for only the specified
components which are cnoi through cnoj, inclusive,
B B B B
This statement is optional and is used to specify the type of integration method to be used
in calculations. If not specified, the SIT, or semi-implicit trapezoidal method, is used, This
method is applicable to most batch distillation problems. The SIT method is quick and
generally robust.
The system of ordinary differential equations describing batch distillation is inherently stiff
because the time constant of the still pot is much greater than that of the column trays.
Both of the methods offered are appropriate for stiff systems.
TOLERANCE defines the error tolerance for each integration step as a percentage for
both methods.
Liquid Density Calculation (optional)
DENSCALC RIGOROUS
U
ALGORITHM
Keyword Summary
Unit Identification ( Required)
BATFRAC UID=uid, {NAME = text}
1. The use of the keyword TRAYS/COLTRAYS indicates the number of actual trays
present in the column. Hence the number of theoretical stages used in
calculation would be “i+2”. The keyword STAGES refers to the number of
theoretical stages.
2. The Maximum Policy Run Time (MAXTIME) has a default value of 10.0 hours.
3. Batch Cycle Time (CYCLETIME) has a default value of 1.0 hours. The flow rates
of all the Dump streams would be calculated using this Batch Cycle Time.
®
import a BATCHFRAC unit with more than 20 cards of any of the above cards then it is
P P
necessary to use the POLPARAM card to increase the limit. Suppose there is a problem
in which there are 23 dump cards. The corresponding input file should have the following
card:
POLPARAM MDUM=23
Feeds (required )
FEED sid, sid…
Products ( Optional)
PRODUCT ACCUM = prodsid, accumname {/prodsid, accumname /…,}
COLCONTENTS / HEEL = prodsid,
{OVHD = prodsid,}
{DUMP = prodsid / prodsid …}
1. For a three phase (VLLE) problem it is necessary to specify VLLE thermo on the
condenser.
2. For a VLE problem it is necessary that all the stages are specified a VLE thermo
only. VLLE problems can have VLE thermo assigned to stages without
decanters.
3. While specifying thermodynamic methods stage wise, the un-specified stages
are assigned the first available VLE or VLLE thermodynamic method based on
the BATCHFRAC® unit.P P
®
Chapter 19.4 BATCHFRAC ALGORITHM 885
Pressure (required)
PRESSURE (unit) stgno, value/….
For stiff problems a value of 1800 sec or lesser would help coverge many of the
problems. It may degrade the performance of the simulator, i.e. it would take
more time to solve.
MAXTRF = value, (Max no. of total reflux iterations default = 100)
TOLTRF = value, (Total reflux algorithm tolerance default = 1e-4)
TOLERANCE = value, (Integration Tolerance default = 1e-4)
MBROY = value, (Maximum number of variables converged by the Broyden
method in the outside loop default = 200)
MAXIL = value, (Maximum number of inside loop iterations, default = 25)
MAXOL = value, (Maximum number of outside loop iterations, default = 100)
TOLIL = value, (inside loop tolerance, default = 1e-6)
(Note: The inside loop tolerance can not be specified greater than 1e-6. Else it
will reset to 1.0e-6 during runtime with a message saying so).
TOLOL = value, (outside loop tolerance, default = 1e-5)
The inside loop tolerance can not be specified greater than 1e-6 or else it will
reset to 1.0e-6 during runtime with a relevant message .
If estimates are provided, it is mandatory to provide estimates for the first stage.
1. When the global condenser is of Partial or Mixed type, for the first Total Reflux
policy (or the Total Reflux part of a first BOTH type of policy), the condenser is
treated as a Bubble point condenser as the calc internally sets the total distillate
flowrate to zero.
2. For VLLE problems the allowed CONDENSER types are BUBB & MIXED only.
3. For VLLE problems, the allowed basis for Vapor Fraction (with MIXED type
condenser) is mole only.
®
Chapter 19.4 BATCHFRAC ALGORITHM 887
Stage Liquid Holdup Specification (required)
HOLDUP (basis, unit) stgno, value/….
HCOND (basis, unit) =value (M, Wt, LV basis)
U U
(Alias LHOLD)
1. Specifying holdup of first stage (condenser), second stage (first tray) and the
penultimate stage (tray above the stillpot) is mandatory.
2. Holdup is not linearly interpolated. For the stages where holdup is not specified,
the holdup of the preceding specified stage is used. For example, the holdup of
stage 2 is used for the succeeding stages until specified again. If holdup of stage
7 is specified, then holdup of stage 7 and the ones below it have the same
holdup until specified again.
or
HLDSPEC HCOND (basis, unit) =value,
HTRAY (basis, unit) =value
Heaters/Coolers (optional)
DUTY (unit) stgno, value/ …..
Decanters (optional)
DECANTER stgno, accumname / …..
Snapshots Reports:
OVERALL
U U
TRAYCOMP
ACSUMMARY
ACCOMPOSITION
Time Profile Reports:
TEMPERATURE
LRATE
VRATE
LFRAC
®
Chapter 19.4 BATCHFRAC ALGORITHM 889
VFRAC
Modifiers:
COMP = cno i {cno j /cno k /cno m /...}
B B B B B B B B
PSEG = pseg{,freq}/...
FREQ (tunit) = freq (default: 15 minutes)
TIME (tunit) = timeI {,timej, freq}/... B B B B
DLTIME = value
(Delay Time specified in seconds – default is 1.5 sec, range is >1.5 sec)
DPTIME = value
(Ramp Time specified in seconds – default is 100 sec, range is >5 sec)
or
PSPEC
DLTIME = value
(Delay Time specified in seconds – default is 1.5 sec, range is >1.5 sec)
DPTIME = value
(Ramp Time specified in seconds – default is 100 sec, range is >5 sec)
Note: Policy pressure specification is not allowed for first policy.
®
Chapter 19.4 BATCHFRAC ALGORITHM 891
Condenser Type Specification (optional for policies)
CONDENSER TYPE =BUBB or MIXED or PART or TFIX,
U U
Charge
CHARGE FEED = sid, CHGID = chgid
DTIME = value
AMOUNT (basis, unit) = value
RATE (basis, unit) = value
STILLPOT (alias POT)
or
STAGE = stgno, SEPARATE/NOTSEPARATE
U U
®
Chapter 19.4 BATCHFRAC ALGORITHM 893
Distill Specifications
DISTILL
1) Total Reflux Specification (valid for TOTAL REFLUX & BOTH kind of
policies):
TRFBOILUP (basis, rate) = value, (M, WT, GV basis)
U U
or
QREB (unit) = value
or
RRATIO / LRRATIO = value (not applicable for VLLE case)
or
DISTRATE / LRATE (basis, unit) = value, (M, Wt, LV basis)
or
QCOND (unit) = value
or
RERATE (basis, unit) = values (applicable for VLLE case only)
1. For the Distill spec of the first policy the “Total Reflux” specification is defaulted to
10% of still pot contents per hour.
2. Only one DISTILL card is allowed per policy.
3. For any TOTAL REFLUX type of policy, only Total Reflux Boilup rate is
necessary.
4. For STANDARD type policy, only Distillate Specifications are necessary.
5. For BOTH type of policy, both types of specifications necessary.
6. For VLE problems two Distillate Specifications are necessary whereas for VLLE
problems only one Distillate Specification is necessary.
7. The following table details the valid pairs of Distillate Specifications for VLE
cases:
D X X X X
RR X X X X
BR X X
QC X X
QR X X
RunUntil Criterion
RUNUNTIL TlME (unit) = value
or
AMOUNT (basis, unit) = value
or
PURITY (fraction/percent/ppm/ppb, basis) = cnoi, {cnoj,} value,
U U B
B
B
B
or
TEMPERATURE (unit) = value,
Evaluated at
ACCUMNAME=accumname,
or
POT
or
STAGE = stgno,
With
APPROACH = ABOVE, or BELOW (Required field)
®
Chapter 19.4 BATCHFRAC ALGORITHM 895
1. Only one RUNUNTIL specification allowed for per policy.
2. Rununtil criterion AMOUNT can be specified for any accumulator or still pot.
APPROACH can not be specified with AMOUNT run until criterion.
3. Rununtil criterion TEMPERATURE can be specified on a stage or still pot. The
APPROACH needs to be defined.
4. Rununtil criterion PURITY can be specified for accumulator, still pot or stage. The
APPROACH needs to be defined.
Draw
DRAW STAGE=stgno, PHASE =L / V, ACCUM=accumname,
U U
1. From any stage only 2 draws, one for each phase is allowed.
2. Draw from the first stage (condenser) is not allowed.
3. For VLLE type of problems, DRAW cards are not allowed on any stage.
Spec
SPEC TEMPERATURE (unit)
or
PURITY (fraction/percent/ppm/ppb, basis)
U U
VALUE = value
STAGE = stgno
COMP = cnoi, {cnoj,}
B
B
B
B
Vary
VARY RRATIO, MINI = value, MAXI = value,
or
DISTRATE (unit), MINI = value, MAXI = value,
or
QCOND (unit), MINI = value, MAXI = value,
or
QREB (unit), MINI = value, MAXI = value,
or
Decant
DECANT STAGE=stgno, LHLDP (basis) = value, (Basis = M or WT or
U U
LV)
L1RFRAC=value L2RFRAC=value
DTBB (unit) = value (default value = 0.0)
or
TEMP (unit) = value
{L1RSTG=stgno, L2RSTG=stgno
PRES (unit) = value}
®
Chapter 19.4 BATCHFRAC ALGORITHM 897
1. Return stages for liquid 1 & liquid 2(L1RSTG & L2RSTG) are defaulted to the
next stage.
2. The decanter temperature is defaulted to zero degrees sub-cooling, i.e. DTBB =
0.0.
3. If decanter PRES is not specified then the decant stage pressure is used.
4. Return fractions (L1RFRAC & L2RFRAC) are in mole basis.
Dump
DUMP PROD = prodsid, ACCUM = accumname,
Recycle
RECYCLE accumname, accumfrac, ppsegid/ ……
1. This card is used to recycle material from an Accumulator to the reboiler. The
Accumulator must have been dumped in a prior policy.
2. The argument “ppsegid” is the id of the policy segment in which the accumulator
has been dumped.
and material balance equations that accounts for the behavior of batch distillation
processes. Rigorous heat balances, material balances, and phase equilibrium
relationships are applied at each stage.
BATCHFRAC® can handle a wide variety of batch distillation problems, including these
P P
systems:
• Narrow-boiling
• Wide-boiling
• Highly non-ideal
• Three-phase
• Reactive
®
BATCHFRAC can observe the presence of a free-water phase in the condenser, or of
P P
®
any second liquid phase anywhere in the column.BATCHFRAC has complete flexibility in
P P
controlled reactions or rate-controlled reactions. These reactions can occur on any stage,
including the reboiler and condenser.
®
BATCHFRAC assumes the following conditions:
P P
®
Chapter 19.4 BATCHFRAC ALGORITHM 899
Specifying BATCHFRAC® P P
®
BATCHFRAC numbers stages from the top down, commencing with the condenser. The
P P
step.
®
BATCHFRAC has two types of data specifications:
P P
• Column setup
• Column operation
Conventions
Stage numbers
Stages are numbered from the top down. In the column itself, a stage corresponds to an
ideal (theoretical) tray. The condenser and the reflux splitter constitutes the first stage
(stgno = 1) and the stillpot as the last.
Input Description
Unit Identification (required)
BATFRAC UID=uid, {NAME = text}
The UID and NAME keywords are common to all unit operation headers and are
documented in Section 42.
The PARAMETER statement sets the number of trays in the column or the total number
Of stages, and the time interval for updating the energy balance during active policy
segments.
import a BATCHFRAC® unit with more than 20 cards of any of the above cards then it
P P
is necessary to use the POLPARAM card to increase the limit. Suppose there is a
problem in which there are 23 dump cards. The corresponding input file should have
the following card:
POLPARAM MDUM=23
®
Chapter 19.4 BATCHFRAC ALGORITHM 901
Feeds (required)
FEED sid, sid, ...
®
The feeds are input streams to the BATCHFRAC unit operation which serve as sources
P P
from which the actual charges, defined in the Operation Policy, will be taken. An unlimited
number of feeds are allowed.
®
The composition of all charges to the BATCHFRAC unit are determined from the
P P
specified stream composition. The thermal state of all the instantaneous charges (even if
®
specified as ‘rate over a time period’) to the BATCHFRAC unit are set to the bubble
P P
point condition at the still pot pressure. However for continuous charges the specified
stream thermal conditions are utilized.
Products (optional)
PRODUCT ACCUM = prodsid, accumname {/prodsid, accumname /…,}
COLCONTENTS / HEEL = prodsid,
{OVHD = prodsid,}
{DUMP = prodsid/prodsid/ …}
The PRODUCT statement identifies all of the real products from the batch process. Any
product referred to in the operation policy must be declared with the PRODUCT
statement.
The ‘PRODUCT’ is optional. If the PRODUCT card is not specified, then default streams
for the main accumulator and the column contents / heel are attached. The HEEL stream,
at the end of the simulation, would contain the holdups from the condenser & column trays
and the un-distilled contents of the still pot. At the end of the simulation the MAIN
ACCUMULATOR stream would contain the final contents of the main accumulator,
provided it is not dumped before the simulation is completed.
prodsid Stream identifiers are defined on the PRODUCT
statement. The user is free to specify from one to
twelve alphanumeric characters as a product ID.
OVHD If a MIXED condenser is specified, the vapor
overhead from the condenser will be collected in this
product during active policy segments.
HEEL At the end of the simulation, the heel in the pot and
column tray holdups will be combined into this
product.
1. For a three phase (VLLE) problem it is necessary to specify VLLE thermo on the
condenser and stages connected to Decanters.
2. For a VLE problem it is necessary that all the stages are specified a VLE thermo
only. VLLE problems can have VLE thermo assigned to stages without
decanters.
3. While specifying thermodynamic methods stage wise, the un-specified stages
are assigned the Pro/II default thermodynamic method.
®
Chapter 19.4 BATCHFRAC ALGORITHM 903
Pressure Profile (required)
PRESSURE(unit) stgno,value/...
or
PSPEC PCON(unit) = value, {PTOP(unit) =value,} *
PPOT(unit) = value or DPCOL(unit) =value or
DPSTAGE(unit) = value
The column pressure profile must be defined on either a PRESSURE or PSPEC
statement. Stage pressures may not be varied by the batch distillation algorithm, but may
be changed external to the unit by CONTROLLERS, MVCs and OPTIMIZER unit
operations, and CASESTUDIES and INTERACTIVE features.
Estimates (optional)
TEMPERATURE stgno, value/…………..
CESTIMATE(L) stgno, x1, x2, …. / ………….
CESTIMATE(V) stgno, y1, y2, …./ ……
If estimates are provided it is mandatory to provide estimates for the first stage.
®
Chapter 19.4 BATCHFRAC ALGORITHM 905
TEMPERATURE This statement provides temperature estimates for
individual trays
Stgno The stage number
Value Value of Temperature
CESTIMATE(L) The CEST(L) statement supplies liquid composition
estimates for individual trays (or stages). The purpose
is to provide a closer starting point for algorithms for
highly non-ideal and difficult to solve distillation
problems. Very few problems require this level of
estimation to achieve solution.
CESTIMATE(V) The CEST(V) statement supplies vapor composition
estimates for individual trays (or stages). The purpose
is to provide a closer starting point for algorithms for
highly non-ideal and difficult to solve distillation
problems. Very few problems require this level of
estimation to achieve solution.
x1, y1 The mole fraction of component i on a stage in the
liquid phase (x) or vapor phase(y).
A condenser is always present. By default it will yield condensate at its bubble point. At
present the condenser is limited to a single liquid phase.
TYPE Defines the condenser type. BUBBLE type of
condenser is the default condenser where all the
vapor coming from 2nd stage is condensed to liquid at
P P
(Alias LHOLD)
or
HLDSPEC HCOND (basis, unit) =value,
HTRAY (basis, unit) =value
The amount of liquid contained on the column trays and in the reflux splitter must be
defined on either a HOLDUP or HLDSPEC statement. Usually the most realistic basis for
these definitions will be the volume basis.
®
Chapter 19.4 BATCHFRAC ALGORITHM 907
HCOND The holdup in the condenser (actually in the reflux
splitter). It can take any volume units basis such as
Moles, Wt, Liquid Volume.
HTRAY A constant value for the holdup of each column tray.
Holdup is not linearly interpolated like pressure. The holdup of stage 2 is used for
the succeeding stages until specified again. If holdup of stage 7 is specified, then holdup
of stage 7 and the ones below it have the same holdup until specified again.
The behavior of the Differential Accumulator in relation to the Rununtil criterion specified in
a policy is as follows:
a) Rununtil criterion is specified in terms of purity
evaluated as Main Accumulator contents – the policy
is run until the main accumulator holdup is equal to
that specified differential accumulator holdup – at this
point if the run-until criterion is met or crossed the
simulation is said to have converged else the
simulation will terminate.
b) For any other Rununtil criteria – the simulation is
solved if the main accumulator holdup does not
exceed the specified differential accumulator holdup
when the rununtil criterion is met. Else the simulation
will terminate.
HOLDUP HOLDUP should be specified only when the
accumulator is of DIFFERENTIAL type. It can take
any volume units basis such as Moles, Wt, Liquid
Volume.
Heaters & Coolers are not applicable to TOTAL REFLUX kind of policies.
Decanters (optional)
DECANTER stgno, accumname / …..
®
Chapter 19.4 BATCHFRAC ALGORITHM 909
Output Options (optional)
PRINT BASIS = M / WT / V
U U
Snapshots Reports:
OVERALL
U U
TRAYCOMP
ACSUMMARY
ACCOMPOSITION
PSEG = pseg{,freq}/...
TIME (tunit) = timeBIB {,timeBjB, freq}/...
FREQ (tunit) = freq (default: 15 minutes)
The snapshot specifications print out tables for a given time, and repeat this for the series
of times as specified with the Print times options. By default only OVERALL & STAGE
SUMMARY snapshots at the beginning and end of policy are printed for all policies.
OVERALL Produces the Pot, Condenser and Accumulator
Summary, containing temperatures, pressures, heat
duties and fractional compositions for these three
locations, as well as distillate, top vapor and reflux
flows. This summary will include fractional
compositions for all components, regardless of any
COMP specification present.
STAGESUM Produces a stage summary table, containing
temperature, pressure, liquid flowrate, vapor flowrate,
and (continuous) charge and draw rates for all stages
in the column.
LRATE LRATE, VRATE and TEMP generate tables of stage liquid rates, stage
vapor rates and stage temperatures, respectively. The basis qualifier
VRATE allows choice of molar, weight or volumetric flow rates. The default, print
TEMPERATURE for all stages, may be modified with STAGE.
STAGE
MBALANCE Produces a mass balance table, in mass units. The columns of the table
give the cumulative sums of all charges and products as well as the
COMP holdups in the pot, trays and reflux splitter, and the contents of the
accumulator, The relative error is reported as the last entry.
If there is no COMP specification on the same PRINT statement with
MBALANCE, only the overall mass balance is reported. If COMP is
present, individual component mass balances for the specified
components are reported as well.
Keywords COMP and STAGE supply the selection of compo"ents and stages for
reporting, overriding the default selections.
®
Chapter 19.4 BATCHFRAC ALGORITHM 911
COMP If specified, report for only the specified components
which are cnoi through cnoj, inclusive, cnok through
B B B B B B
The operation policy comprises one or more policy segments, each of which is entered
with a POLICYSEG statement followed by one or more statements from the subgroup
START, CHARGE, DRAW, DISTILL, SPEC, VARY, RUNUNTIL, ENDCUT or GOTO. The
policy segments will be initiated in sequential order of entry of the policy segments in the
input file, or according to criteria given on the START statement, except for jumps as
specified with GOTO. GOTO may be an independent action or may be specified in
connection with a given RUNUNTIL or STOP criterion. Several policy segments may be
simultaneously in play.
Each set of the following statements (CHARGE, DRAW, DISTILL, SPEC, VARY,
RUNUNTIL, DUMP, DECANT, RECYCLE) must immediately follow the corresponding
POLICYSEG statement. At least a DISTILL is required.
A single policy segment may include several actions (CHARGE, DRAW, DISTILL etc.) if
stopping conditions are compatible. Otherwise, separate segments can be used. The first
policy segment must always include the initial charge to the stillpot, using the CHARGE
action. DISTILL is the only action type during which the integration over time (the actual
distillation simulation) is active.
DLTIME (unit) = value, (Delay Time – default is 1.5 sec, range is >1.5 sec)
DPTIME (unit) = value, (Ramp Time – default is 100 sec, range is > 5 sec)
or
®
Chapter 19.4 BATCHFRAC ALGORITHM 913
PSPEC
PCON(unit) = value, {PTOP(unit) =value,}
DPSTAGE (unit) = 0.0 or DPCOL (unit) =value
U U
or
PPOT (unit) = value
DLTIME (unit) = value (Delay Time – default is 1.5 sec, range
is >1.5 sec)
DPTIME (unit) = value (Ramp Time – default is 100 sec, range
is >5 sec)
®
Chapter 19.4 BATCHFRAC ALGORITHM 915
Heaters / Coolers (optional for policies)
DUTY stgno, value/ ….. (Stgno range: 2 to N-1)
NODUTY
All the keywords are defined above and have the same meaning. Additionally,
Reactions (optional)
NORXTRAY
®
Reactions can be defined for VLE systems in BATCHFRAC . Only reactions defined
P PB B
globally can be used in the unit. The reactions parameters cannot be modified locally.
Charge
Multiple CHARGE statements are allowed within a POLICYSEG set. The CHARGE action
is used for the initial charge to the stillpot, and any subsequent instantaneous or
continuous charges. Instantaneous charges are allowed only to the pot. Continuous
charges may be to any stage.
CHARGE FEED = sid, CHGID = chgid
DTIME = value
AMOUNT (basis, unit) = value
RATE (basis, unit) = value
STILLPOT (alias POT)
or
STAGE = stgno,
SEPARATE/NOTSEPARATE
U U
An initial charge to the stillpot must be included in the first sequential policy segment. An
initial charge must correspond to a fixed amount (no RATE without DTIME or AMOUNT).
All initial charges will be completed before distillation (DISTILL) is started.
If all initial charge(s) are specified as continuous with specified or implied duration, then
they must be in the first policy segment. The charge(s) will be treated as
instantaneous: only the amount(s) will be used, and the distillation clock will not be started
until the total initial charge is complete.
Any instantaneous charge in the same policy segment with a DISTILL action, will be
carried out before starting the DISTILL action.
Except for the initial charge as discussed above DISTILL action must be active in order for
continuous charging to occur.
®
Chapter 19.4 BATCHFRAC ALGORITHM 917
When RATE is given without TIME for any charges, then it is considered to be a
continuous charge.
Distill Specifications
DISTILL
A) Total Reflux Specification (valid for TOTAL REFLUX & BOTH kind of policies):
TRFBOILUP (basis, unit) = value, (M, WT, GV basis)
U U
or
QREB (unit) = value
or
RRATIO / LRRATIO = value (not applicable for VLLE case)
or
DISTRATE / LRATE (basis, unit) = value, (M, Wt, LV basis)
or
QCOND (unit) = value
or
RRATE (basis, unit) = value (applicable for VLLE case only)
®
Chapter 19.4 BATCHFRAC ALGORITHM 919
1. For the Distill spec of the first policy the Total Reflux molar boilup rate
specification is defaulted to 10% of still pot contents per unit time.
2. Only one DISTILL card is allowed per policy.
3. For any TOTAL REFLUX type of policy, only Total Reflux Boilup rate is
necessary.
4. For STANDARD type policy, only Distillate Specifications are necessary.
5. For BOTH type of policy, both types of specifications necessary.
6. For VLE problems two Distillate Specifications are necessary whereas for VLLE
problems only one Distillate Specification is necessary.
7. The following table details the valid pairs of Distillate Specifications:
TABLE 19.4-2
VALID PAIRS OF DISTILLATE SPECIFICATIONS
D RR BR QC QR
D X X X X
RR X X X X
BR X X
QC X X
QR X X
RunUntil Criterion
Only one RUNUNTIL statement is allowed within a POLICYSEG set. RUNUNTIL criteria
are reasons for stopping an individual policy segment, as opposed to the general stop
criteria, which remain in effect during the whole batch distillation.
or
TEMPERATURE (unit) = value,
evaluated at
ACCUMNAME=accumname,
or
POT
or
STAGE = stgno,
with
APPROACH = ABOVE, or BELOW (Required field)
®
Chapter 19.4 BATCHFRAC ALGORITHM 921
1. Only one RUNUNTIL specification allowed for per policy.
2. For rununtil criterion TIME no other specification is required.
3. Rununtil criterion AMOUNT can be specified for any accumulator or still pot.
APPROACH cannot be specified with AMOUNT run until criterion.
4. Rununtil criterion TEMPERATURE can be specified on a stage or still pot. The
APPROACH needs to be defined.
5. Rununtil criterion PURITY can be specified for accumulator, still pot or stage. The
APPROACH needs to be defined.
Associated with the criteria TIME, AMOUNT, PURITY and TEMPERATURE are logical
switches which are initialized to false. Any one of the criterion can be given in any one
policy. Satisfaction of any one of the logical criteria on the one or more RUNUNTIL
statements within a policy segment is sufficient to terminate a DISTILL action.
Multiple DRAW statements are allowed within a POLICYSEG set. The DRAW action is
used for continuous withdrawals from any stage into the accumulator.
DRAW STAGE=stgno, PHASE =L / V, ACCUM=accumname,
U U
1. From any stage only 2 draws, one for each phase is allowed.
2. Draw from the first stage (condenser) is not allowed.
3. For VLLE type of problems, DRAW cards are not allowed on any stage.
Control Specifications
SPEC and VARY are used to specify a dynamic controller. They must be used together.
Only the proportional controller is available at present.
SPEC refers to me set point of the controlled variable - the variable for which a value is to
be specified
SPEC TEMPERATURE (unit)
or
PURITY (fraction/percent/ppm/ppb, basis)
U U
VALUE = value
STAGE = stgno
COMP = cnoi, {cnoj,}
B
B
B
B
®
Chapter 19.4 BATCHFRAC ALGORITHM 923
BOILUP (unit), MINI = value, MAXI = value,
{CONTRGAIN = value (Default = 1.0)
INTEGRALTIME = value (Default = 1.0e+6)
DERIVTIME = value (Default = 0.0)
MANVARLAG = value (Default = 0.0)
MEASURELAG = value (Default = 0.0)}
+ x 6 + (x 8 + x 9 + x 10 )”.
B B B B B B B B
Decant Specifications
1. Return stages for liquid 1 & liquid 2(L1RSTG & L2RSTG) are defaulted to the
next stage.
2. The decanter temperature is defaulted to zero degrees sub-cooling, i.e. DTBB =
0.0
3. The decanter PRES is defaulted to the decant stage pressure.
4. Return fractions (L1RFRAC & L2RFRAC) are in mole basis only.
®
Chapter 19.4 BATCHFRAC ALGORITHM 925
DECANT Give decant specifications for VLLE columns to
separate the two liquid phases from any stage. You
can also specify the fraction of L1 and L2 phases to
be returned the next stage. One needs to specify the
temperature or temperature drop and holdup of the
decanter so that liquid from the stage is collected and
separated at a different temperature.
STAGE Give stage number from which a liquid for decant and
separation of phases to be made.
LHLDP Holdup of the decanter for which a temperature and
pressure is applied to separate the two phases. This
is a required keyword.
L1FRAC/L2RFAC Fractions of L1/L2 phases that should be returned
back to the column.
L1RSTG/L2RSTG Stage numbers in the column for L1/L2 fractions to be
returned. By default, these are the next stage from
which the decant liquid is drawn.
TEMP Temperature at which the phase should be separated.
Either TEMP or DTBB must be given for the decanter.
DTBB Temperature below bubble point at which the phase
separation should take place. Either DTBB or TEMP
must be given for the decanter.
PRES Pressure of decanter at which phases should be
separated. If not given, this pressure is taken same as
the stage pressure.
Dump Specifications
DUMP PROD = prodsid, ACCUM = accumname,
®
Chapter 19.4 BATCHFRAC ALGORITHM 927
20 – PIPEPHASE UNIT
U
OPERATION (PPUOP)
Keyword Summary
General Information
The PPUOP (generally referred to as the PIPEPHASE unit operation) is similar to other
PRO/II unit operation and it allows PIPEPHASE simulations to be sequenced by PRO/II.
This will also allow you to define many of PIPEPHASE parameters as
SPEC/VARY/DEFINE in PRO/II.
Keyword Description
In the keyword file, the integer after INT or TEX implies that the input begins from
that parameter number. For example, if the first INT parameter is being used (which is
optional in the case of PPUOP) the keyword would be INT(1) where 1 is the entry for the
first INT parameter.
If value1 is ‘ n’ then n values need to be supplied in the TXT vector starting from the
B B
INT Values
There is one INT entry for the PPUOP unit operation.
Table 20 -1
Integer Parameters
Valuen B B ID Description
Value1 B B Numberofdatamaps Total number of SVD data links. The
Maximum limit is 20.
Value2 B B Component mapindex PRO/II-PIPEPHASE components mapping
method.
0 = Based on Names (Default)
1 = Based on Index
TXT Values
Following are the TXT values permitted and their description.
Table 20 - 2
Text Parameters
Index ID Description
1 InpFilename PIPEPHASE input/ppzip file name.
2 PPfeedstrmid List of PIPEPHASE sources. Maximum limit is 10.
3 PPprodstrmid List of PIPEPHASE sinks. Maximum limit is 10.
4 VersionID PIPEPHASE version ID.
10 Define1 1st data link definition. It includes four parameters
P P
th
13 Define4 4 data link definition.
P P
th
15 Define6 6 data link definition.
P P
th
16 Define7 7 data link definition.
P P
th
17 Define8 8 data link definition.
P P
th
19 Define10 10 data link definition.
P P
th
20 Define11 11 data link definition.
P P
th
21 Define12 12 data link definition.
P P
th
22 Define13 13 P P data link definition.
th
23 Define14 14 data link definition.
P P
th
24 Define15 15 data link definition.
P P
th
25 Define16 16 data link definition.
P P
th
26 Define17 17 data link definition.
P P
th
27 Define18 18 data link definition.
P P
th
29 Define20 20 data link definition.
P P
TXT(2) indicates the PIPEPHASE Source list for the PPUOP. Hence, the number
of entries on this list should match the number and order of streams on the FEED card.
Identifiers on the Source list should be unique.
TXT(3) indicates the PIPEPHASE Sink list for the PPUOP. Hence, the number of entries
on this list should match the number and order of streams on the PRODUCT card.
Attribute Value
Number of datalink defines 2
Components mapping By Name
method
PIPEPHASE Input file name Pp_t5.inp
PIPEPHASE sources KA, KB
PIPEPHASE sinks SNK, SNK1
PIPEPHASE Version 9.0
st
1 data link
P P Outlet pressure of PIPEPHASE Pump
P001
nd
2 P P data link Inside diameter of PIPEPHASE Pipe P002
PPUOP UID=PP1
SIDE(1) FEED=SNKLIQ, SNKVAP, PROD=S1,S2
INT (1) 2,0
TEX (1) Pp_t5.inp
TEX (2) KA,KB
TEX (3) SNK,SNK1
TEX (4) 9.0
TEX (10) Pump, P001, OUTLET PRES, PRES
TEX (11) Pipe, P002, PIPE ID, FLEN
Example
For data recorded on August 2, 2001:
DATE 02082001
For data recorded on August 2, 2001 at 10:30 PM:
DATE 020820012230
Comments
There are other flexibilities built into the RAW data file such as comments and non-
standard entries. A comment can appear on any statement after a $ character. If the total
statement is meant to be a comment, then the $ should be the first character. If the
comment is to follow after the data described above, the only requirement is that the $ be
the first character. Blank lines are also allowed.
Another feature is a check to see if the second entry on a statement is a valid real
number. If it is not, then the entire statement is ignored.
TAGFILE This entry informs PRO/II that Tag Data is to be used. PRO/II
searches for and imports the file supplied by the ‘fileid’. The
filename must be complete including the extension since the
tag file can have numerous extensions (e.g., .RAW or .ADJ).
The user can provide the entire filespec path, if desired. If the
specified file cannot be found, a warning is given.
fileid This optional argument identifies the tag data
file to be used.
INPUT
REQUIREMENTS
Keyword Summary
Input File Header
TITLETAGFILE=fileid
Component Data
Component Definition
PETROLEUM i, name, MW or ##MWtag##, std liq density or
##stdliqdens##, NBP or ##NBPtag##/ ...
Stream Data
Streams Defined With Pure Components
PROPERTY STREAM=sid, {NAME=text},
(Temperature and pressure fixed)
TEMP(unit)=value or ##temptag##, PRES(unit)=value or
##prestag##
or
(Liquid Fraction fixed)
TEMP(unit)=value or ##temptag##, or
PRES(unit)=value or ##prestag##, and
LFRAC(basis)=value or ##lfractag##, or PHASE=L or V
Unit Operations
Enter Unit Operating parameters as Tags using the Define construct:
DEFINE <property> AS value or ##partag##
or
DEFINE <property> AS <unit type>=uid, <property 1>, <operator>, value or
##partag##
General Information
In the Keyword Input File, it is possible to mark numeric fields for substitution at run time.
The fields to be substituted should be marked by two pound signs “##” at the beginning
and end of a field tag name in the correct position. The number to written into the field is
supplied in the *.RAW file with the field tag name.
The substitution tag name must be no more than 12 characters and cannot include
imbedded blanks. However, there may be blanks between the delimiting ##’s and the field
tag name. The substitution tag and the ##’s on both sides of the tag must be on the same
line.
This chapter deals with issues pertaining to using tag data with the keyword input file.
Additional information about Petroleum Components, Streams with Defined Components,
Streams with Assay Data and Unit Operation Data is found in the appropriate section of
the Keyword Input Manual.
Input Description
Input File Header
TITLE TAGFILE=fileid
Component Data
Component Definition
PETROLEUM i, name, MW or ##MWtag##, std liq density or
(densunit, tunit) ##denstag##, NBP or ##NBPtag##/ ...
Components are defined in terms of petroleum fractions. Component properties are
calculated based on the characterization methods.
Stream Data
Streams Defined With Pure Components
PROPERTY STREAM=sid, {NAME=text},
(Temperature and pressure fixed)
TEMP(unit)=value or ##temptag##, PRES(unit)=value or ##prestag##
or
(Liquid Fraction fixed)
TEMP(unit)=value or ##temptag##, or
PRES(unit)=value or ##prestag##, and
LFRAC(basis)=value or ##lfractag##, or PHASE=L or V
COMPOSITION (basis)=i, value or ##compitag##/ ...,
{RATE(basis, unit}=value or ##ratetag##, NORMALIZE}
The PROPERTY statement must be the first statement in the definition of a stream with
assay data.
When RATE is not given, the values or tag data given here
are actual component flowing rates.
i Component number. When omitted, “i”
defaults to the next component number in
sequence. If none of the components have
“i” entries, the first value entry applies to
component 1.
value The rate or composition of component “i”.
compitag The composition measurement tag of
component “i”.
RATE The initial overall rate of the stream fluid fraction supplied as
a value or as a tag. It is allowed as an option only when the
COMPOSITION entry is present. If RATE is missing, values
entered on the COMPOSITION entry represent actual
component flowrates. Rate may be supplied on a mole (M -
default), weight (WT), liquid volume (LV), or gas volume (GV)
basis.
STREAM The “sid” supplies the identification label required by each stream in
the file.
TEMP The stream temperature supplied as a value or as a tag.
PRES The stream pressure supplied as a value or as a tag. If the stream is
a column fee, it defaults to the feed tray pressure.
PHASE This declares the initial phase condition of the stream. There is no
tag value associated with this property.
LFRAC The initial liquid fraction of the stream supplied as a value or as a
tag. Liquid fraction may be supplied on a mole (M - default), weight
(WT), or liquid volume (LV).
AVERAGE This entry defines the average value for the fluid portion of the
stream, including any lightends. This entry is required and be
supplied as either a value or through tag data.
DATA This option allows the entry of user-supplied data points that replace
the PRO/II generated gravity curve. If used at least three data points
must be provided. Each data point consists of two pieces of
information: (1) the mid-volume or mid-weight percent of the data
point, and (2) the gravity or Watson characterization value
associated with the mid-volume or mid-weight percent. The mid-
volume or mid-weight percent must be supplied as a numeric value,
whereas the gravity may be supplied as either a numeric value or
through tag data.
DATA This option allows the entry of user-supplied data points that
replace the PRO/II generated MW curve. If used at least three data
points in order of ascending weight percentages must be provided.
Each data point consists of two pieces of information: (1) the mid-
volume or mid-weight percent of the data point, and (2) the
molecular weight value associated with the mid-volume or mid-
weight percent. The mid-volume or mid-weight percent must be
supplied as a numeric value, whereas the MW may be supplied as
either a numeric value or through tag data.
AVERAGE Optionally, this entry defines the average molecular weight for the
fluid portion of the stream. This entry may be supplied as either a
value or through tag data. If the average value is provided, PRO/II
normalizes or extrapolates the MW curve as required to satisfy the
average MW of the stream. If omitted, PRO/II uses quadratic
extrapolation of the MW curve, as needed to compute an average
molecular weight.
COMPOSITION Required. This entry identifies the components that constitute the
lightends of the stream. The flow of each component in the
lightends may be supplied as an actual flow rate or as a fraction or
percentage of the total stream fluid rate.The basis may be mole (M
- default), weight (WT), or liquid volume (LV) basis, and needs not
match the basis on the RATE, FRACTION, or PERCENT entry.
Unit Operations
Enter Unit Operating parameters as Tags using the Define construct:
DEFINE <property> AS value or ##partag##
or
DEFINE <property> AS <unit type>=uid, <property 1>, <operator>, value or
##partag##
DEFINE <property> AS STREAM=sid, <property 1>, <operator>, value
or ##partag##
The DEFINE statement adjusts unit operation parameters directly within the desired unit
operation. Because of this ability, it is also the way PRO/II imports Tag Data into unit
operations.
<property> Any <property> shown in Tables 10.3-2 A-B and
10.3-3 A-H & J as accessible to DEFINE statements.
<unit type> and Any <reference> property shown in Table 10.3-3 A-
<property 1> H and J. (See update to Chapter 10.3 in this
manual.)
<stream id> and Any <reference> property shown in Table 10.3-2 A-
<property 1> B. (See update to Chapter 10.3 in this manual.)
<operator> Any <operator> shown in table below.
Value A numeric value
Partag Tag name as it appears in the Tag File to be
accessed.
Examples
1: Mix two feed streams and perform an isothermal flash to create the column feed stream
FD1.
TITLE TAGFILE=COLUMND2.RAW
DIME PRES=PSIG, LIQVOL=BBL, VAPVOL=MFT3
COMPONENT DATA
LIBID 1,NITROGEN/2,METHANE/3,ETHANE/4,ETHYLENE/5,PROPANE/ &
6, PROPYLEN/7,IBUTANE/8,NBUTANE/9,T2BUTENE/10,IBUTENE/ &
11,C2BUTNEN/12,IPENTANE/13,13BD/14,PENTANTE/15,2M2BUTEN
THERMODYNAMIC DATA
METHOD SYSTEM=GS
STREAM DATA
PROP STREAM=S1, TEMP=79, PRES=100, RATE(GV)=##RT1##, &
COMP=1,0.28/2,1.35/3,4.03/4,0.02/5,19.09/6,0.01/7,14.73/8,38.39/ &
9,0.01/10,1.02/12,9.82/14,10.17/15,0.4, NORMALIZE
PROP STREAM=P4, TEMP=##TIP4##, PRES=100, &
RATE(LV)=##RTP4##, ASSAY=LV
D86 STREAM=P4, DATA=0,##IP4##,/10,##10P4##/20,##20P4##/ &
50,##50P4##/90,##90P4##/100,##EP4##
API STREAM=P4, AVERAGE=76
LIGHTEND STREAM=P4, COMP=7,0.09/8,7.58/9,0.13/12,20.63/ &
14,25.63, PERCENT(LV)=10
UNIT OPERATIONS
FLASH UID=FL1
FEED S1, P4
PROD FD1
ISOTHERMAL
DEFINE TEMP AS ##TEMPFD1##
DEFINE PRES AS STREAM=S1, MINUS, ##DPFD1##
END
This example demonstrates the use of tag data for stream data, assay data and unit
operating data.
INDEX 945
examples, 358 invariant properties and constants,
homotopy analysis, 350, 358 54
limitations, 352 invariant special properties, 55
Naphtali-Sandholm algorithm, 351 temperature dependent
performance specifications, properties, 55
general, 356 Component property reporter
plotting results, 350 component data, 267
print options, 350 general information, 267
products, 353 composition damping factor, 329,
testing for VLLE, 356 462
thermodyanamic set selection, Compressor
351 aftercooler, 244
three-phase (VLLE) calculations, efficiency, adiabatic, 241, 243
352 efficiency, polytropic, 241, 243
tray efficiencies, 351, 356 examples, 245
chemicals distillation algorithm, 347 fan laws, 242
cial refinery properties general information, 240
kinematic viscosity, 101 parameter definition, DEFINES,
Column Feeds, 287 244
Column Heat, 296 performance curves, 243
Column hydraulics, 391 performance specifications, 241
Packed column hyraulics. See thermodynamic set selection, 245
Tray column hydraulics. also see work, 243
Column Merging, 327, 458, 460 Condenser, 284
Column Parameters, 286, 312 Condenser Type, 290
Column Products, 288 continuous stirred tank reactor, 601
Column Pseudo Products, 290 Conversion reactor
Component data Reactor, conversion and
component properties, 57 equilibrium. See
examples, 58 Countercurrent decanter
general information, 56 examples, 645
non-library components, 56 general information, 642
notes, 58 operating conditions, 644
petroleum components, 53, 57 parameter definition, DEFINES,
PRO/II component library, 56 641
solid components, 57 rating or design, 643
UNIFAC structural data, 57 thermodynamic set selection, 644
Component Lumping Creating Case Study, 801
examples, 737 Crystallizer
general information, 735 additional printout, 656
lumping conditions, 736 crystal characteristics, 656
thermodynamic set selection, 736 crystal growth, 657
Component properties, 54 crystal nucleation, 657
blend unit, 263, 269 examples, 659
checking, 40 general information, 654
operating conditions, 655
INDEX 947
thermodynamic set selection, 249 examples, 221
EXTRAN property data general information, 217
dimensional units, 732 isentropic, 217, 220
evaluation conditions, 730 isothermal, 217, 220
example, 733 parameter definition, DEFINES,
execution after flowsheet, 730 220
filename specification, 733 performance specifications
thermodynamic set selection, 733 (TPSPEC), 219, 220
Feedback controller, 739 thermodynamic set selection, 221
control parameters or options, 741 three phase (VLLE) calculations,
DEFINE and VARY. See 219
examples, 742 Flowsheet optimizer, 751
iteration level, 741 Broyden update, 760
performance specification, 740 constraints, 756
print options, 742 examples, 762
return unit, 742 general information, 753
stream variables, 741 iteration level (CYCLES), 758
unit variables, 741 line search mode method, 761
use with MIN/MAX constraints, object function, 753
741 objective function, 754
Feedback Controller optimization parameters or
general information, 740 options, 757
Feeds and Products, 331 optimization variables, 754
Filtering centrifuge performance specifications, 757
cake properties, 638 perturbation control, 756
examples, 639 plot, 754
general information, 636 print options, 758
operating conditions, 637 return unit, 758
parameter definition, DEFINES, scaling suppression, 759
638 solution tolerance, 754
rating or design, 636 use with MIN/MAX constraints,
thermodynamic set selection, 639 754
FINE flowsheet parameters variable streams, 755
examples, 180 variable units, 755
reference stream properties, 178 Flowsheets
reference unit operation topology, 139
parameters, 178 unit sequencing, 44
relation to specifications, 177 Flowsheetsrecycles, 140
Flash FZONE, 329
adiabatic, 217, 220 Gear method, 590
bubble, 220 Gibbs reactor, 567
bubble point, 218 adiabatic, 570
dewpoint, 217, 220 approach to equilibrium - overall,
dewpoint - hydrocarbon, 217, 220 575
dewpoint - water, 217, 220 conversion, 575
entrainment, 218 definition of atomic groups, 572
INDEX 949
parameter definition, DEFINES, limitations, 384
524 performance specifications, 379
Heat exchangers plotting results, 380
thermodynamic set selection, 525 thermosiphon reboilers, 383
Heat exchangers Inside-Out algorithm, 321, 454
examples, 525 Interactive execution, 809
Heating-Cooling curves change, 811, 812, 818
adiabatic curves, 712 commands, 810
bubble point curves, 712 set, 810
dew point curves, 712 view, 812
evaluation conditions, 711 internal stream property, 304
examples, 716 K-value data
isothermal curves, 712 data statement, 73
plot, 709, 711 Liquid-liquid extraction, 433
print options, 714 column parameters, 435, 443
thermodynamic set selection, 716 conventions, 435
with column, 712 examples, 444
with flash, 712 feeds and products, 436
Heating-Cooling curves. See heat loss/gain, 438
HCURVE initial estimate generator, IEG,
Heating-Cooling curves 439
general information, 710 performance specifications, 440
HETP, 405 plotting results, 442
HEXTRAN property data, 729 print options, 441
general information, 729 pseudo products, 437
Homotopy Analysis, 345 side heater/cooler, 437
HVARYFLAG, 309 specification variables, 441
Hydrates stage pressure, 438
calculation points specifications, thermodynamic set selection, 444
721 tolerances, 443
evaluation conditions, 721 user-supplied profile estimates,
example, 722 439
free water assumption, 721 LMTD, 479
general information, 721 LNGHX
hydrate inhibitors, 722 Heat exchangers. See
possible hydrate formers, 721 Mass balance, 48
Hydraulics Calculations Melter/Freezer
Tray and packing, 313 examples, 665
Individual dimensional unit general information, 662
qualifiers, 23 operating conditions, 663
Initial Estimate Generator, 299 parameter definition, DEFINES,
Initial Estimates, 327 665
Inside/out distillation algorithm, 377 thermodynamic set selection, 665
column merging, 383 Membrane separator
column parameters, 380, 384 RPARM inputs, 680
flash zone, 381 Membrane Separator
INDEX 951
Plugflow reactor restrictions, 363
general information, 583 tray volume definition, 361, 365
Procedure data. See two-phase reactors, 368
preexponential frequency factor, Reactor, conversion and equilibrium
604 general information, 558
Print Options, 309 Reactor, conversion and equilibrium
Procedure data, 187 adiabatic operation, 548
FORTRAN intrinsic functions, 194, conversion specification, 550
196 equilibrium specification, 550, 551
intrinsic functions, 196 examples, 553
predefined variables, 189 general information, 546
Process Tag/Raw Data Files, 933 generalized, shift, methanation,
comments, 933 545, 557
entering date, 933 isothermal operation, 547, 548
entering tags, 933 parameter definition, DEFINES,
example, 934 553
input file, 934 simultaneous conversion
tag file, 934 reactions, 546
Products, 344 suppression of heat balance, 548
Pump thermodynamic set selection, 553
efficiency, 226 three phase (VLLE) calculations,
examples, 227 547
general information, 225 Reactor, conversion and equilibrium
parameter definition, DEFINES, three phase (VLLE) calculations,
226 559
performance specifications, 226 Reactor, conversion and equilibrium
thermodynamic set selection, 227 adiabatic operation, 559
Pumparounds, 297 Reactor, conversion and equilibrium
Reaction data, 203 isothermal operation, 559
defining a reaction set, 205 Reactor, conversion and equilibrium
identifying a reaction, 206 error handling, 561
stoichiometry, 207 Reactor, conversion and equilibrium
Reactive distillation, 361 heat of reaction, 561
assigning reaction sets, 364 Reactor, conversion and equilibrium
boiling pot reactor, 368 conversion specification, 562
defining a local reaction, 369 Reactor, conversion and equilibrium
defining a local reaction set, 369 parameter definition, DEFINES,
defining conversion data, 371 563
examples, 372 Reactor, conversion and equilibrium
homotopy analysis, 367 thermodynamic set selection, 564
kinetic and equilibrium reaction Reactor, conversion and equilibrium
data, 371 examples, 564
polymer components, 367 Reboiler, 285, 293
reaction conversion data, 362 Recycle, 771
reaction parameters, 365, 366, acceleration, 773, 775
369
INDEX 953
examples, 628 Standard vapor conditions, 38
general information, 624 STCALC, 699
moisture content, 626 Stream
operating conditions, 623 assay, 79, 89, 103
parameter definition, DEFINES, comments, 135
624 component flowrates, 83
thermodynamic set selection, 624 distillation data, 80
Solids separator examples, 88, 103, 135
general information, 667 gravity data, 80, 95
operating conditions, 668 identification, 82
thermodynamic set selection, 668 lightend, 80
Solids unit operations, 621 molecular weight, 80
countercurrent decanter, 641 name, 81, 120
crystallizer, 653 notes, 120
dissolver, 647 number, 82, 121
filtering centrifuge, 635 output format, 82, 84, 119
melter/freezer, 661 particle size distribution, PSD, 81
rotary drum filter, 629 property, 79
solids dryer, 623, 624 reference stream, 81
solids separator, 667 special properties, 80
Special properties thermal data, 83
user-defined, SPROP, 81 with solids, 81
Special refinery properties Stream calculator
printing, 120 general information, 699
Specification Variables, 305 Stream calculator, STCALC
Specifications, 169 calculation options, 705
automatic referencing, 172 examples, 707
column property, 171 feed blending, 701
degrees of freedom, 170 parameter definition, DEFINES,
examples, 174 706
operator entry, 172 stream splitting products, 701
primary and reference entries, 171 stream splitting specifications, 702
stream property, 171 stream synthesis products, 703
tolerances, 43 stream synthesis specifications,
VALUE entry, 173 705
Speical properties thermodynamic set selection, 707
kinematic viscosity, 81 Stream documentation
Splitter Stream, output format. See
examples, 238 supercede, 287
general information, 236 SURE algorithm, 337
parameter definition, DEFINES, Tag data input requirements, 935
237 assay data, 940
performance specification, 237 component data, 937
performance specifications, 170 distillation data, 940
split specifications, 236 gravity data, 941
thermodynamic set selection, 238 lightends data, 942
INDEX 955