You are on page 1of 134

Aspen Plus Reformer

Users Guide
Version Number: V8.0
December 2012
Copyright (c) 2003-2012 by Aspen Technology, Inc. All rights reserved.

Aspen Plus ReformerTM, Aspen Plus CatCrackerTM, Aspen Plus HydrocrackerTM, Aspen Plus HydrotreaterTM, Aspen
Plus, Aspen PIMSTM, aspenONE, the aspen leaf logo and Plantelligence and Enterprise Optimization are
trademarks or registered trademarks of Aspen Technology, Inc., Burlington, MA.

All other brand and product names are trademarks or registered trademarks of their respective companies.

This document is intended as a guide to using AspenTech's software. This documentation contains AspenTech
proprietary and confidential information and may not be disclosed, used, or copied without the prior consent of
AspenTech or as set forth in the applicable license agreement. Users are solely responsible for the proper use of
the software and the application of the results obtained.

Although AspenTech has tested the software and reviewed the documentation, the sole warranty for the software
may be found in the applicable license agreement between AspenTech and the user. ASPENTECH MAKES NO
WARRANTY OR REPRESENTATION, EITHER EXPRESSED OR IMPLIED, WITH RESPECT TO THIS DOCUMENTATION,
ITS QUALITY, PERFORMANCE, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.

Aspen Technology, Inc.


200 Wheeler Road
Burlington, MA 01803-5501
USA
Phone: (781) 221-6400
Toll free: (888) 996-7100
Website: http://www.aspentech.com
Contents
About This Document ..............................................................................................1
Who Should Read This Guide .............................................................................1
Technical Support ............................................................................................1

1 Introduction to Aspen Plus Reformer ...................................................................3


Aspen Plus Reformer Overview ..........................................................................3
The Aspen Plus Reformer Engine ........................................................................4
Equation-Oriented Modeling...............................................................................5
Pressure Drop Model Example............................................................................5
Model Specifications and Degrees-of-Freedom .....................................................6
Modes and Multi-Mode Specifications ..................................................................7
Measurements and Parameters ..........................................................................7
Changing Specifications with ComboBoxes ..........................................................8
Optimization ....................................................................................................9

2 Using Aspen Plus Reformer ...............................................................................10


Starting Aspen Plus Reformer For the First Time ................................................ 10
Resetting the Aspen Plus Connection ................................................................ 12
Exiting Aspen Plus Reformer ............................................................................ 13
General Guidelines for Using the Excel Interface ................................................ 13
Navigating the Reformer Workbook .................................................................. 14
Saving and Loading Data Files ......................................................................... 14
Saving Data Files ................................................................................. 14
Loading Data Files ................................................................................ 15
Saving and Loading User Input Files ....................................................... 16

3 The Aspen Plus Reformer User Interface...........................................................17


Command Line Window................................................................................... 17
Abort Button........................................................................................ 17
No Creep Button .................................................................................. 18
Close Residuals Button.......................................................................... 18
Close Button ........................................................................................ 18
Execute Button .................................................................................... 18
Manually Accessing the Command Line ................................................... 18
Toolbar and Menu .......................................................................................... 19
Startup Aspen Plus Reformer Submenu ................................................... 19
File Submenu....................................................................................... 23
Setup Cases Submenu .......................................................................... 24

4 Introduction to the Aspen Plus Reformer workbook..........................................25


Overview....................................................................................................... 25
Worksheets in the Aspen Plus Reformer Workbook ............................................. 25

Contents iii
Standard Worksheets ........................................................................... 26
Hidden Worksheets .............................................................................. 27
Specification Buttons and ComboBoxes ............................................................. 28
Buttons on Worksheet "Flow Diagram" .................................................... 29
ComboBoxes on Worksheet "Feeds"........................................................ 30
Customizing with the Worksheets ..................................................................... 31
The SendVars Sheet ............................................................................. 32
The ReceiveVars Sheet ......................................................................... 33
The EB Scripts Sheet ............................................................................ 35
Receive Vars........................................................................................ 35
Send Vars ........................................................................................... 35
Check Receive Vars .............................................................................. 36
Check Send Vars .................................................................................. 36

5 Running Aspen Plus Reformer Cases .................................................................37


Overview....................................................................................................... 37
Running Cases from the Reformer Toolbar......................................................... 38
Running Cases from the Reformer Menu ........................................................... 38
Running Multiple Cases ................................................................................... 38
Solver Settings .............................................................................................. 40

6 Introduction to Simulation ................................................................................41


Overview....................................................................................................... 41
Simulation Sheets .......................................................................................... 41
Key Operating Data .............................................................................. 41
Severity Options .................................................................................. 41
Feed Data ........................................................................................... 42
Yields ................................................................................................. 43
Catalyst Data....................................................................................... 43
Stream Rates and Compositions Product Rates and Properties ................... 44
Running a Simulation Case .............................................................................. 45
Before You Start .................................................................................. 45
Feed Data Simulation Case .................................................................... 45
Specification Options ............................................................................ 47
Running a Simulation Case .................................................................... 49
Saving Solutions .................................................................................. 49
Error Recovery..................................................................................... 50

7 Running Multiple Cases .....................................................................................51


Overview Case Studies.................................................................................... 51
Before You Start ............................................................................................ 51
Setting Up a Case Study ................................................................................. 52
Running a Case Study..................................................................................... 53

8 LP Vectors .........................................................................................................55
Overview of LP Vector Generation .................................................................... 55
Objective of Running LP Vectors....................................................................... 55
LP Vector Generation ...................................................................................... 56
Generating a Sample PIMS Table...................................................................... 59

iv Contents
9 Optimization......................................................................................................60
Overview....................................................................................................... 60
Optimization Basics ........................................................................................ 60
Setting Up Objective Functions ........................................................................ 61
Setting Up Optimizations................................................................................. 65
Executing Optimization Cases .......................................................................... 68
Analyzing Optimization Solutions...................................................................... 71

10 Model Parameterization ..................................................................................72


Model Calibration Overview ............................................................................. 72
Calibration Steps............................................................................................ 72
Calibration Step 1 - Open Command Screen ............................................ 72
Calibration Step 2 - Switch to PAR mode ................................................. 73
Calibration Step 3 - Read Data from Starting File or Last Successful Run..... 73
Calibration Step 4 - Transfer Parameterization Data To The Solver Engine... 73
Calibration Step 5 - Initiate model solution.............................................. 74
Calibration Step 6 - Write results to a user specified file............................ 74
Calibration Step 7 - Close Command Screen or loop back to Step 4 ............ 75
Calibration Step 8 - Read New Model Data into the Excel Interface ............. 75
Recommended PARAMETIZATION Script File...................................................... 77
Detailed Explanation of the Calibration file xxx_PARAM.ebs ................................. 77
Overview............................................................................................. 77
Base Reactor Temperature Specifications ................................................ 77
Basic Unit Operation Specifications ......................................................... 78
Specification of Reactor Delta Temperatures, Catalyst Activity, Reactor
Loadings and Catalyst Data ................................................................... 79
System Pressure Specifications .............................................................. 81
Pinning Specifications ........................................................................... 81
Lightends Gravities............................................................................... 82
Coke Make Specification........................................................................ 82
Octane Calibration................................................................................ 83
C5+ Yield, Hydrogen and Bulk Napthenes Specification ............................. 83
C4, C5, A8 and Olefin Isomer Calibration ................................................ 85
C10 Yield Calibration ............................................................................ 85
C9 Yield Calibration .............................................................................. 86
C8 Yield Calibration .............................................................................. 86
C7 Yield Calibration .............................................................................. 87
C6 Yield Calibration .............................................................................. 87
Single Branched, Multi-Branched and Normal Paraffin Isomerization
Calibration .......................................................................................... 88
C1, C2 and C3 Yield Calibration.............................................................. 88
Stabilizer Tower Calibration ................................................................... 89
Feed Specifications............................................................................... 89
Tube Skin Temperature Input Data......................................................... 93
Error Recovery............................................................................................... 94
Error Recovery - Overview .................................................................... 94

11 Working With Equation Oriented Model Solver ................................................96


Introduction .................................................................................................. 96
Successive Quadratic Programming (SQP) ......................................................... 96
Changing EO Solver Parameters ....................................................................... 97

Contents v
Basic DMO Parameters.................................................................................... 98
DMO Solver Output to the Command Window .................................................... 98
DMO Solver Log Files ...................................................................................... 99
ATSLV File Problem Information ..................................................................... 100
Basic Iteration Information .................................................................. 100
Largest Unscaled Residuals.................................................................. 100
Constrained Variables ......................................................................... 101
General Iteration Information .............................................................. 102
Nonlinearity Ratios ............................................................................. 102
Troubleshooting ........................................................................................... 103
Usage Notes ...................................................................................... 103
Dealing With Infeasible Solutions ......................................................... 103
Scaling ............................................................................................. 105
Dealing with Singularities .................................................................... 105
Notes on Variable Bounding................................................................. 107
Run-Time Intervention ........................................................................ 107

12 Aspen Plus Reformer Application Model ........................................................108


Overview..................................................................................................... 108
General Model Overview................................................................................ 108
Reaction Kinetics.......................................................................................... 109
Reaction Paths ................................................................................... 109
Reaction Kinetic Expressions................................................................ 109
Catalyst Activity and Catalyst Calibration .............................................. 110
Aspen Plus Reformer Feed Definition and Product Definition .................... 111
Calculation Blocks .............................................................................. 112
System Pressure Control ..................................................................... 113
Catalyst Activity and Pressure Effects ................................................... 114
Coke Make ........................................................................................ 114
Coking Mechanism ............................................................................. 115
Reactor Temperature Control ............................................................... 118
Stabilizer Configuration ....................................................................... 118
Aspen Plus Reformer Block Definitions .................................................. 118

13 Troubleshooting ............................................................................................123
Aspen Plus Reformer Stops Responding .......................................................... 123
The Model Isn't Solving................................................................................. 123
License Errors .............................................................................................. 124

Index ..................................................................................................................125

vi Contents
About This Document

This chapter includes the following information:


Who Should Read This Guide
Technical Support

Who Should Read This Guide


This document is designed to be used by users of Aspen Plus Reformer,
formerly known as Aspen Plus CatRef, in conjunction with the Aspen RxFinery
family of products, including Aspen Plus CatCracker, formerly known as Aspen
FCC, Aspen Plus Hydrocracker, formerly known as Aspen Hydrocracker, and
Aspen Plus Hydrotreater, formerly known as Aspen Hydrotreater.

Technical Support
AspenTech customers with a valid license and software maintenance
agreement can register to access the online AspenTech Support Center at:
http://support.aspentech.com
This Web support site allows you to:
Access current product documentation
Search for tech tips, solutions, and frequently asked questions (FAQs)
Search for and download service packs and product updates
Submit and track technical issues
Send suggestions
Report product defects
Review lists of known deficiencies and defects
Registered users can also subscribe to our Technical Support e-Bulletins.
These are used to alert users to important technical support information such
as:
Technical advisories
Product updates and releases

About This Document 1


Customer support is also available by phone, fax, and email. The most up-to-
date contact information is available at the AspenTech Support Center at
http://support.aspentech.com.

2 About This Document


1 Introduction to Aspen Plus
Reformer

Aspen Plus Reformer Overview


Aspen Plus Reformer, formerly known as Aspen CatRef, is a member of the
AspenTech new generation of refinery reactor models. Aspen Plus Reformer
accurately predicts yields and properties resulting from different feedstocks
and operating conditions.
Aspen Plus Reformer rigorously simulates the reactors and hydrogen recycle
loop of the catalytic reformer process. As part of the Aspen Plus unit
operation model family, Aspen Plus Reformer can easily be incorporated into
an overall flowsheet, including fired heaters, stabilizer, and splitter models,
creating a fully-integrated model of the entire catalytic reformer operating
unit or complex. Aspen Plus Reformer can also be integrated into:
A model of multiple reformer operations.
A model of a full aromatics complex.
Any one of several processing scenarios.
Aspen Plus Reformer consists of a client and a server. The client, or user
interface, is built from Microsoft Excel spreadsheets customized with VBA
code and macros.
The client and server communicate through DCOM. This communication
should be transparent and you do not have to understand how it works in
order to use Aspen Plus Reformer. If the communication software fails, please
contact AspenTech.
While your primary interaction with Aspen Plus Reformer will be through the
user interface, you do need a basic understanding of how the server works in
order to effectively use and troubleshoot the model.
The server has several components:
The engine (also known as the kernel or command prompt).
The solver (DMO).
The model, which is built as a custom Aspen Plus model using the PML
(Process Model Library) system.

1 Introduction to Aspen Plus Reformer 3


This chapter introduces you to the basics of the engine and the equation-
oriented modeling concept of variable specifications.

The Aspen Plus Reformer


Engine
The Aspen Plus Reformer engine is Aspen Plus. You do not need to be an
Aspen Plus expert to use Aspen Plus Reformer. This section covers the most
important concepts of Aspen Plus.
The first time the engine is used during an Aspen Plus Reformer session is
when the user interface connects to the server. This brings up a command
prompt window in which you will see the invoke plant.ebs command, which
tells the engine to open several data files and build the model in the computer
memory. The command prompt disappears when the kernel finishes building
the model.
The engine is also used whenever you request a solution from the user
interface. Any changes you have made to data values or model specifications
(via comboboxes) are passed through DCOM from the client to the server.
The command prompt window appears and you will see a stream of kernel
commands going to the engine. These commands tell the engine:
What mode of solution is required.
What solver settings should be used.
There are different sequences of commands for different types of solutions
(parameter, simulation, optimization, case study, LP vector generation, etc.).
You can look at the default command sequences on the EB Script sheet on
the user interface. The default command sequences are all that is necessary
for running the model in any of the pre-configured solution modes, but
advanced users can modify them.
During a solve, you will see three buttons on the bottom of the command
prompt window. These are labeled:
Abort
Close Residuals
No Creep
They can be used to interrupt the solver.
The Abort button tells the solver to quit at the next opportunity.
The engine is also used whenever case data is stored or retrieved. The user
interface typically contains only the results of the most recent run of each
solution type. The save/load case data options let you save the results of
any number of previous runs to review or use later. This user interface option
is implemented using the kernel commands:
Read varfile from.
Write varfile to.
You can see these commands in the command prompt while it is active, or
you can recall the command prompt using the user interface menu option

4 1 Introduction to Aspen Plus Reformer


AspenPlusReformer | Tools | Display Command line to review the
previous commands.

Equation-Oriented Modeling
Aspen Plus Reformer is based on an equation-oriented (EO) formulation, so
you need to understand some EO concepts in order to use it effectively. The
EO approach is also known as open-form and can be contrasted with the
closed-form or sequential-modular (SM) technique. The equations in an EO
model are solved simultaneously using an external solver, which iteratively
manipulates the values of the model variables until all the equations are
satisfied within a convergence tolerance. The solver will work for any well-
posed set of variable specifications. A variables specification labels it as
known (fixed) or unknown (calculated) for a given solution mode. An SM
model is solved procedurally one equation at a time, and the solution
procedure depends on a given specification set. For a different grouping of
known and unknown variables the solution procedure will be different, since
the equations will be solved in a different order.

Pressure Drop Model Example


A simple example illustrates some important EO concepts. Consider this two-
equation model where the pressure drop is correlated with the square of the
mass flow of a fluid:
Pressure drop correlation: DELTAP = PRES_PARAM * MASS_FLOW^2
Define pressure drop: DELTAP = PRES_IN PRES_OUT
In an EO formulation, we rearrange these equations into residual format. The
value of the residual indicates how close that is to being solved at the
solution the value of every residual will be zero, or at least close enough to
zero to satisfy our numerical convergence tolerance.
f(1) = DELTAP - PRES_PARAM * MASS_FLOW^2 (= 0 at solution)
f(2) = PRES_IN - PRES_OUT - DELTAP (= 0 at solution)

Note: f is the name of the vector of residuals and it has length equal to the
number of equations...
The solver prefers to work with vectors and equation index numbers, while we
find it easier to use equation names. The model defines names for each
residual that can be used in reports and solver debugging output. In this
case, we choose the names:
f(1) = ESTIMATE_DELTAP
f(2) = DELTAP_DEFINITION
Similarly, the five variables in this model can also be addressed as elements
of a vector x having length 5:
x(1) = DELTAP
x(2) = PRES_IN
x(3) = PRES_OUT

1 Introduction to Aspen Plus Reformer 5


x(4) = PRES_PARAM
x(5) = MASS_FLOW

Model Specifications and


Degrees-of-Freedom
Once we tell the solver which variables are known (fixed) for a given solution
mode, it will manipulate the values of the unknown (free) variables to drive
the residuals to zero. For any system of independent equations, the degrees-
of-freedom (DOF) is equal to the number of variables minus the number of
equations minus the number of fixed variables:
DOF = #variables - #equations - #fixed variables
The number of degrees-of-freedom of a system classifies it into one of three
categories:
DOF > 0
Under
specified
DOF = 0
Square
DOF < 0
Over
specified
The optimization mode of Aspen Plus Reformer is under specified, while the
other modes (simulation, parameter, case study, LP Vectors) are square.
Over specified problems are not allowed in Aspen Plus Reformer.
The pressure drop example has five variables and two equations, so we must
fix three variables to create a square system. Furthermore, we cannot fix any
arbitrary set of three variables. If all variables within one equation are either
explicitly or implicitly fixed, the problem is not well posed, as the solver can
no longer manipulate any variable to reduce that equations residual. Such an
incorrect set of specifications will cause a structural singularity in the solver.
However, Aspen Plus Reformer is designed so that if you use the standard
specification options provided in the user interface you will not create a
structurally singular system.
Here are some specification attempts for the pressure drop example:
Fix DELTAP, PRES_OUT: under specified - only acceptable
for an optimization case with
proper selection of independent variables.
Fix DELTAP, PRES_OUT, PRES_IN, MASS_FLOW: over specified!
Fix DELTAP, PRES_OUT, PRES_IN:
f(1) = DELTAP - PRES_PARAM * MASS_FLOW^2
(fix) (free) (free)
f(2) = PRES_IN - PRES_OUT DELTAP
(fix) (fix) (fix)
Square, but not well posed (structurally singular) all variables in residual 2
are fixed! If you compare this to the over specified example, you can see
that over specification is not allowed since it always leads to a structurally
singular system.

6 1 Introduction to Aspen Plus Reformer


Fix PRES_IN, PRES_PARAM, MASS_FLOW:
f(1) = DELTAP - PRES_PARAM * MASS_FLOW^2
(free) (fix) (fix)
f(2) = PRES_IN - PRES_OUT DELTAP
(fix) (free) (free)
Square and well posed a valid specification set.

Note: There are other valid specification sets, such as PRES_IN,


PRES_OUT, and MASS_FLOW.

Modes and Multi-Mode


Specifications
In different situations we may want to use different sets of fixed and free
variable specifications. Each set of variable specifications is a solution mode.
One of the strengths of the EO approach is that the same model formulation
and solver are used for all the modes. Although there are many possible
modes, Aspen Plus Reformer is configured for three basic modes:
Simulation.
Parameterization.
Optimization.
The simulation, param, and optimize sheets in Aspen Plus Reformer
correspond to those three modes. Case study and LP vector generation
are also simulation modes. Case study is simply a series of simulations with
the same specifications, but different values for key fixed variables.
LP vector generation is a simulation run followed by a sensitivity analysis. The
independent and dependent variables you choose for vector generation must
correspond to fixed and free variables in the simulation mode.
The Aspen Plus Reformer user interface examines the current model
specifications and only allows you to choose proper independent and
dependent variables.
In order to label how each variable behaves in the various modes, multi-mode
specifications are assigned. A variable that is fixed in every mode is called a
CONST, while variables that are free in every mode are called CALC. For
example, in Aspen Plus Reformer the reactor vessel diameter is usually a
CONST because its value is not calculated in any mode.

Measurements and Parameters


While many variables have CONST or CALC specifications, there are other
variables whose behavior changes between modes.
A MEAS variable is fixed in the parameter-fitting (tuning) mode, but free in
the simulation and optimization (prediction) modes.

1 Introduction to Aspen Plus Reformer 7


Conversely, a PARAM variable is free in the parameter-fitting mode and fixed
in the simulation and optimization modes.
Usually a MEAS corresponds to a plant measurement, while a PARAM is a
model tuning parameter or a bias to a measurement. Since the MEAS and
PARAM variables always have opposite specifications in every mode, there
are always the same number of MEAS and PARAM variables so that every
mode is properly specified. Another rule of thumb is that it is possible to
"swap" the specifications on a pair of related CALC and CONST variables to
be MEAS and PARAM, since the number of DOF stays the same in every
mode.
The concepts of simulation and parameter-fitting mode and
CONST/CALC/MEAS/PARAM variables can be illustrated with the pressure
drop example. Assume the equipment across which the pressure drop is
measured has an inlet pressure gauge, a DP cell, and a mass flowmeter. We
can specify the DP measurement (variable DELTAP) to be type MEAS and
the pressure drop parameter (PRES_PARAM) to be type PARAM. We can
define inlet pressure (PRES_IN) and mass flowrate (MASS_FLOW) as
CONST variables. The outlet pressure (PRES_OUT) is always calculated from
the other variables, so it is type CALC.
f(1) = DELTAP - PRES_PARAM * MASS_FLOW^2
(MEAS) (PARAM) (CONST)

f(2) = PRES_IN - PRES_OUT DELTAP


(CONST) (CALC) (MEAS)
This is a valid multi-mode specification, because in the simulation mode
MASS_FLOW, PRES_IN and PRES_PARAM are fixed and PRES_OUT and
DELTAP can be calculated from those values. In the parameter-fitting mode,
DELTAP, MASS_FLOW and PRES_IN are fixed, and PRES_PARAM and
PRES_OUT can be computed.

Changing Specifications with


ComboBoxes
What if the plant we are modeling has both a DP cell and an outlet pressure
gauge? We have a choice as to which to use. From a mathematical
standpoint, it is just as valid to declare PRES_OUT a MEAS and DELTAP a
CALC as the other way around. Thus we have two possible variable
specifications affecting both our simulation and parameter-fitting modes. In
Aspen Plus Reformer this type of "spec swap" is made using a specification
box or a combobox. Specification boxes and comboboxes on the spreadsheet
presents alternate specification sets that are equally mathematically valid.
One of the sets may be more appropriate for a given unit based on its
configuration, control strategy, instrumentation, type of lab test, mass or
volume basis for flowmeters, or a variety of other reasons. In our pressure
drop example, on the param sheet we might see a combobox with the
following options:
Use outlet pressure measurement
Use pressure drop measurement

8 1 Introduction to Aspen Plus Reformer


These choices correspond to the following specifications:
Use outlet pressure measurement Use pressure drop
measurement
DELTAP spec CALC MEAS
PRES_OUT spec MEAS CALC
Aspen Plus Reformer comes preconfigured with many combo boxes that cover
all the options needed to model most Reformer units. However, there may be
some unusual configurations that require an additional option for a
specification box or an additional specification box. Aspen Plus Reformer has
the capability to modify, extend, or add specification boxes by making
changes to the USER Script sheet.

Optimization
Optimization is a prediction mode, so it is similar to simulation. The main
difference is that:
There are positive DOF in optimization mode.
The solver uses those DOF to maximize or minimize an objective function
within limits on certain variables.

To Create Optimization DOF:


Simply change the specifications of some CONST variables to OPTIM.
OPTIM variables are fixed in simulation and parameter-fitting modes and
free in optimization mode. OPTIM variables are also known as
independents. The other free variables (MEAS and CALC) are known as
dependents.
The solver requires that the number of OPTIM variables be equal to the
number of DOF, but that requirement is easy to satisfy by starting with a
well-posed square set of multi-mode specifications and changing only CONST
variables to OPTIM.
Essentially, you must do three things:
1 Define an objective function.
2 Specify the DOF (independents).
3 Put maximum and minimum limits on key independent and dependent
variables.
We wont discuss much about the objective function here, other than to say
that it is often a profit function, with revenue terms based on product or
export utility flowrates and prices, and cost terms based on feed or import
utility flowrates and prices. You specify the DOF by selecting independent
(OPTIM) variables from a pick list. Aspen Plus Reformer presents only
CONST variables in this pick list in order to ensure that whatever set you
choose will lead to a well-posed problem. You can put bounds on any of the
independents, as well as on whichever dependents you select from another
pick list that includes CALC and MEAS variables that you may wish to limit
during the optimization run.

1 Introduction to Aspen Plus Reformer 9


2 Using Aspen Plus Reformer

Starting Aspen Plus Reformer


For the First Time
1 From the Windows Start menu, click Programs | AspenTech | Process
Modeling <version> | Aspen Plus Based Refinery Reactors | Aspen
Plus Reformer to launch Excel and open the Aspen Plus Reformer GUI.
2 When prompted by Excel, click the Enable Macros button.

Note: Aspen Plus Reformer does not support having multiple versions of itself
or Aspen Plus installed at the same time.
When the Aspen Plus Reformer workbook is loaded, there is no active
connection to the Aspen Plus Reformer model, which is an Aspen Plus
flowsheet. The workbook consists of several spreadsheets where various
data can be entered and retrieved. The application also creates a new
menu item on the Excel menu bar called AspenPlusReformer. This menu
provides access to all of the GUIs primary functions including connecting
to the model. Through the Startup Aspen Plus Reformer menu
command, you can load the flowsheet, modify start-up options, or reset
the Aspen Plus connection. Most of the other menu commands will be
inactive until the flowsheet is loaded.

3 On the Excel menu bar select AspenPlusReformer | Startup Aspen


Plus Reformer | Load Reformer Flowsheet.
The Connect dialog box appears.

10 2 Using Aspen Plus Reformer


4 In the Host field, enter the computer name using all lower case letters. If
the correct computer name is entered, the Browse button will become
enabled.

Note: You can easily determine the computer name if it is not known:
Win2000: Right-click the My Computer icon on the computer desktop
and select Properties from the pop-up menu. Click the Network
Identification tab where the full computer name will be listed near the
top.
Windows XP: Right-click the My Computer icon on the computer
desktop and select Properties from the pop-up menu. Click the
Computer Name tab. The computer name will be listed in the Full
Computer Name field.
5 Click the Browse button.
6 Navigate into the Apinit directory, select the file catref.appdf; and then
click the Open button.
You should be returned to the Connect dialog box where the
catref.appdf file name and directory should now appear in the Problem
area in the Filename field.
7 At the bottom of the Connect dialog box, click the OK button.
On a 750 MHz Pentium III PC, a Dell Inspiron 8000, it requires
approximately 3.5 minutes to initialize the Reformer flowsheet and load
the data into the Excel GUI. During this time, the Excel cursor will become
the hour-glass symbol and the Excel status line will display the message
Loading Aspen Plus Reformer flowsheet. The cursor will return to the
normal cross shape and the status line will read Ready when the process
is complete.

2 Using Aspen Plus Reformer 11


Once connected to the flowsheet, the previously inactive
AspenPlusReformer menu items become active, and the Reformer
toolbar is created.
8 Save the workbook using File | Save to save the computer name and
Reformer appdf file location entered in the Connect dialog box.
You are now ready to begin using Aspen Plus Reformer.
When the Aspen Plus Reformer workbook is loaded, there is no active
connection to the Aspen Plus Reformer model, which is an Aspen Plus
flowsheet. The workbook consists of several spreadsheets where various data
can be entered and retrieved. The application also creates a new menu on the
Excel menu bar called AspenPlusReformer. This menu lets you access all of
the GUIs primary functions including connecting to the model.
Using the Startup Aspen Plus Reformer submenu, you can:
Load the flowsheet
Modify startup options
Reset the Aspen Plus connection
Most of the other menu commands will be inactive until the flowsheet is
loaded.

Resetting the Aspen Plus


Connection
Occasionally, problems can occur where the AspenPlusReformer menu
items and toolbar are still active, but the functions fail with various Visual
Basic errors. This can be the result of loading too many applications at once,
and thereby causing an application conflict.
If this happens:
1 On the main menu, select AspenPlusReformer | Startup Aspen Plus
Reformer | Reset ApMain to reset the connection to Aspen Plus
Reformer flowsheet, as shown below.

2 When warned on the Reset Aspen Plus dialog that resetting the
connection may terminate an active connection, click the OK button.

12 2 Using Aspen Plus Reformer


Exiting Aspen Plus Reformer
The best way to exit Aspen Plus Reformer is to use the menu command
AspenPlusReformer | Exit Aspen Plus Reformer, as shown below.

1 Click AspenPlusReformer | Exit Aspen Plus Reformer.


A dialog box appears, asking for confirmation.
2 Click the OK button to proceed with exiting.
You are asked whether or not to save the changes made to the Excel
workbook.
3 Click the Yes button to save your changes
-or-
Click the No button to abandon your changes.
Once you have made the desired selection, the workbook closes, the
AspenPlusReformer menu disappears, and the AspenPlusReformer
toolbar is hidden.

General Guidelines for Using


the Excel Interface
Most of the features of Excel are available in the Aspen Plus Reformer
workbook. However, you should only use these features with an
understanding about the overall functioning of the workbook. This topic
provides an overall description of the workbook and functioning. Other topics
provide more detail about the worksheets that you will normally use for
running the Aspen Plus Reformer model. Upon initially opening the
workbook, many functions are not available and appear in background as
shown below. Upon connection to the model these features become active.
Here are some things to consider as you use the workbook:
The only fields that you can make an entry in that the model will use are
those colored blue.
Entries into number fields that are not colored blue will be overwritten by
the workbook after a case is executed.

2 Using Aspen Plus Reformer 13


If you use a formula in a field that is colored blue, it will be overwritten
after a case is executed; therefore, enter only values in these fields.
If a case does not converge, the calculation engine will contain a starting
point that is not good for subsequent cases.
Use the file save commands to frequently save calculations. These
calculations will be needed to restore a case if the problem does not
converge.
The data you enter into the parameter and simulation worksheets is
automatically saved by the workbook when a case is run. You can retrieve
this data after you restore a case to create a good starting point for the
calculation engine.
The model is an equation based model and needs a good starting point to
converge. Therefore, be careful about large changes in the independent
variables (color coded blue).

Navigating the Reformer


Workbook
When Aspen Plus Reformer starts up, the default spreadsheet is the Flow
Diagram sheet. You can jump to any of the process data screens by clicking
the appropriate button.
You can return to the Flow Diagram from any Reformer worksheet by

clicking the Back to Controls ( ) button on the Reformer toolbar.


Worksheets for User Data, EB Script files, LP Vectors, Case Study,
Optimize, and Profit functions (as well as any worksheets available through
the Flow Diagram) can be accessed from the tabs at the bottom of the
workbook.
The LP Vectors, case study, optimization, and profit screens can also be
accessed from the AspenPlusReformer menu.

Saving and Loading Data Files


Saving Data Files
It is often desirable to save the data in the Reformer model, because the
default when the model is started is to load the base problem data. Once the
model has been tuned to your data, you can save data to use as the new
starting point.

To Save Reformer Model Data:


1 On the Aspen Plus Reformer toolbar, click the Save User Data button (

14 2 Using Aspen Plus Reformer


-or-
Click AspenPlusReformer | File | Save User Data to Var File.
The Save User Data to File dialog box appears.

2 In the File Name field, enter the name under which you want to save the
file.
3 Click the Browse button to select the path (and filename if you are
resaving a file) for the generated data file.
The Save As dialog box appears.
4 Enter the path and filename if they are not already correct; then click the
Save button to return to the Save User Data to File dialog box.
5 Click the Save button to save the model data.
The file is saved as a .var file.

Note: You can save all of the data currently in the model or just the input
data from the spreadsheet. Typically, you use the default option to save all of
the model data. The data is saved to an ASCII file, which can be greatly
compressed to save disk space.

Loading Data Files


To Load Data Saved To An ASCII File Using The Save Case
Data Command:

1 On the Aspen Plus Reformer toolbar, click the Load User Data ( )
button.
-or-
Click AspenPlusReformer | File | Load User Data from Var File.
The Load User Data from File dialog box appears.
2 Browse to the file you want to load.
-or-
Type in the file name and path directly in the filename and path text
boxes.
3 Click Load to load the values from the data file into the Reformer
flowsheet.

2 Using Aspen Plus Reformer 15


Saving and Loading User Input Files
At any time, you can save and load the parameter and simulation
worksheets only, and then retrieve them later.
Use this option if you think that your future Parameter or Simulation run
will be a big change and, therefore, the problem might fail. In this case,
before running your changed problem, you can save your input sheet and
load it again to start back from a good solution.

To Save Your Input Worksheets:


On the menu, click Aspen Plus Reformer | File | Save User Input
Sheet.

To Load Your Input Worksheets:


On the menu, click Aspen Plus Reformer | File | Load User Input
Sheet.
By default:
A Parameter case updates all worksheets.
A Simulation case updates Simulation worksheets only.

Note: A dialog box appears allowing you to change the defaults.

To Save Your Input Worksheets:


On the menu, click Aspen Plus Reformer | File | Save User Input
Sheet.

To Load Your Input Worksheets:


On the menu, click Aspen Plus Reformer | File | Load User Input
Sheet.
This command updates both the parameter and the simulation worksheets.

16 2 Using Aspen Plus Reformer


3 The Aspen Plus Reformer
User Interface

Command Line Window


The Aspen Plus Command Line window displays the output of commands
sent to the Aspen Plus Reformer model. It appears automatically when
loading Aspen Plus Reformer and when running cases. After connecting to the
Reformer flowsheet, you can also manually open this window by selecting
the AspenPlusReformer | Tools | Display Command Line menu
command.
The Command Line window contains several buttons:
Abort
No Creep
Close
Close Residuals
Execute
When Aspen Plus Reformer is loading, the Command Line window appears
briefly, letting you observe the commands that are being sent to the model
during the flowsheet instantiation. You will not be able to access any functions
on the command line at this time.
When a case is running, the Command Line window opens automatically and
lets you observe the commands that are being sent to the model and the
convergence path of a solution. When the command line opens automatically
in these instances, you can use only the Abort, No Creep, or Close
Residuals buttons.

Abort Button
If you click the Abort button while a case is running, you must wait until the
following messages appear in the command line window:
Error return due to an ABORT message from the user communications
file DMO.MSG
And then finally:

3 The Aspen Plus Reformer User Interface 17


Problem failed to converge
You can then click the Close button to close the command line window and
return to the model. You should then load a data file to ensure the next case
starts from a good converged solution. See Loading Data Files.

No Creep Button
When running a case, the default is to creep the solver (take small steps) for
a few iterations to provide robust behavior. Once you have gained experience
with the model and are confident that a particular case will solve well without
the default number of creep steps, you can manually turn the creep steps off
by clicking the No Creep button.
Clicking the No Creep button takes the DMO solver out of creep mode. You
can use this to expedite solving when the current run is close to the final
solution, in which case both the Residual Convergence Function and
Objective Convergence Function are small and close to convergence criteria

Close Residuals Button


Clicking the Close Residuals button causes the model to close the residuals
without minimizing the objective function convergence. The Close Residuals
button is useful in cases where the objective function very nearly reaches a
maximum value, but the convergence of the objective does not close.

Close Button
This Close button closes the Command Line window and return to the user
interface. Click the Close button only after a run has failed to converge or
you have aborted a case and the command line message run aborted by the
user appears, or if you opened the Command Line window manually and are
you are done using it.

Execute Button
Use the Execute button on the Command Line window to execute commands
manually.

Manually Accessing the Command Line


After connecting to the Reformer flowsheet, select the AspenPlusReformer
| Tools | Display Command Line. The Aspen Plus command line window
appears. When you open the command line in this fashion, you have
immediate access to the Close button. You can also enter valid commands on
the command line.

To Run A Command:
1 Select AspenPlusReformer | Tools | Display Command Line.
The Aspen Plus command line window appears.

18 3 The Aspen Plus Reformer User Interface


2 Enter the command.
3 Click the Execute button.
The Abort and Close Residuals buttons have no effect when the command line
has been opened manually unless the solve command is invoked to run
Aspen Plus. The Close button closes the command line window and returns
you to the Excel spreadsheet.
While the command line window is open, you cannot access the Excel
spreadsheet.
The command line window can be a very powerful tool in trouble-shooting
problems since the commands sent to the model and the solutions of the
model will be stored in the buffer. You can scroll through the buffer (the top
window of the command line) to see convergence paths and any error
messages generated when trying to solve a problem.

Toolbar and Menu


When the Aspen Plus Reformer workbook is selected, Microsoft Excel is
loaded and Aspen Plus Reformer adds a new menu to the Excel menu bar
labeled AspenPlusReformer. This menu contains commands that activate
VBA macros within Aspen Plus Reformer. There is also an Aspen Plus
Reformer toolbar which only appears once the workbook is connected to the
Aspen Plus Reformer flowsheet.
This section explains the features that are available from the Aspen Plus
Reformer menu and toolbar. Many of the commands are associated with the
cases for Reformer modeling.
When you select AspenPlusReformer on the Excel menu bar, the menu
appears as shown in the example below. Note that most of the commands are
on submenus.

Startup Aspen Plus Reformer Submenu


The Startup Aspen Plus Reformer submenu contains the commands you
typically use when you first activate the Aspen Plus Reformer workbook.

3 The Aspen Plus Reformer User Interface 19


When you click Startup Aspen Plus Reformer, the menu shown below
appears. The three commands on this submenu are described below.

Command Function

Load Reformer Connects the workbook and loads a problem file


Flowsheet
Startup Options Loads a problem file automatically or manually
Reset ApMain Resets the connection with the Aspen Plus server
The Load Reformer Flowsheet option is normally the first command you
use. This command displays the Connect dialog box
Startup Options. When the Aspen Plus Reformer workbook is opened,
there is by default no connection established with the Reformer flowsheet.
Furthermore, once the connection is established, the data loaded into the
spreadsheet will be the data that comes with the generic model. These
default settings can be changed to improve efficiency. By modifying the
Startup Options, you can automatically connect to Reformer spreadsheet
and load a specific User Data File immediately upon opening the Reformer
GUI.

At the top of the Startup Options dialog box are two options from which
you can choose to make a connection to the Reformer model either
manually or automatically. Select Automatic Startup to instruct the

20 3 The Aspen Plus Reformer User Interface


spreadsheet to automatically establish a connection to the model
whenever the spreadsheet is opened.
Select the Load User Data from File option if you want Aspen Plus
Reformer to load a set of data other than the default problem data. Enter
the name of the file (including the full path) in the File Name field.
Automatically loading data that matches your plant is more convenient.

Note: The Load User Data From File option is inactive unless the
Automatic Startup option is selected.
The Reset ApMain command causes the workbook to break the
connection with the server. This is necessary if you want to use the Excel
File menu. If you do not close the workbook at this point, you can use the
Load Reformer Flowsheet command to reconnect the workbook.

Connect Dialog Box


1 On the Excel menu bar, select AspenPlusReformer | Startup Aspen
Plus Reformer | Load Reformer Flowsheet.
The Connect dialog box appears.

2 In the Host box, enter the name of the host computer (normally your
computer) using all lower case letters.
If the correct computer name is entered, the Browse button in the
Problem area will become enabled.

Note: You can easily determine the computer name if it is not known:
Win2000: Right-click the My Computer icon on the computer desktop
and select Properties from the pop-up menu. Click the Network
Identification tab where the full computer name will be listed near the
top.

3 The Aspen Plus Reformer User Interface 21


Windows XP: Right-click the My Computer icon on the computer
desktop and select Properties from the pop-up menu. Click the
Computer Name tab. The computer name will be listed in the Full
Computer Name field.
3 Click the Browse button in the Problem area, navigate into the Apinit
directory, select the file catref.appdf, and then click Open.
4 At the bottom of the Connect dialog box click OK.
On a 750 MHz Pentium III PC, such as a Dell Inspiron 8000, it requires
approximately two minutes to initialize the Reformer flowsheet and load
the data into the Excel GUI. During this time, the Excel cursor will appear
as an hourglass symbol and the Excel status line will display the message
Loading Aspen Plus Reformer flowsheet. The cursor will return to the
normal cross shape and the status line will display Ready when the
process is complete.
Once the connected to the flowsheet is established, the previously inactive
AspenPlusReformer menu commands become active, and the Aspen
Plus Reformer toolbar is created.
5 Now save the workbook using the Excel File | Save command, to
preserve the computer name and catref.appdf file location entered in the
Connect dialog box.
You are now ready to begin using Aspen Plus Reformer.

Startup Options Dialog Box


The Startup Options dialog box is shown below. This dialog box lets you
specify a default problem solution to load into the workbook other than
catref.appdf (the base solution).

When the Aspen Plus Reformer workbook is opened, there is by default no


connection established with the Reformer flowsheet. Furthermore, once the
connection is established, the data loaded into the spreadsheet will be the
data that comes with the generic model.

22 3 The Aspen Plus Reformer User Interface


You can change these default settings to improve efficiency. By modifying the
startup options, you can automatically connect to the Reformer spreadsheet
and load a specific user data file immediately upon opening the Reformer GUI.
At the top of the Startup Options dialog box, you can choose to make a
connection to the Reformer model either manually or automatically. If you
select Automatic Startup, the spreadsheet will automatically establish a
connection to the model whenever it is opened.
The Startup Options dialog box also has an option to load in a set of data
other than the default problem data. Automatically loading data that matches
your plant is more convenient. For more information on saving and loading
data, see File Submenu.

To Set Startup Options:


1 On the Excel menu bar, select AspenPlusReformer | Startup Aspen
Plus Reformer | Startup Options.
The Startup Options dialog box appears.
2 Select Manual Startup or Automatic Startup. Your choice will
determine whether the connection to the Reformer model is made
manually or automatically.
3 If you chose the Automatic Startup option in Step 2, you can load a set
of data other than the default problem data in the catref.appdf file. To do
so, select the Load User Data from File? checkbox.
4 In the File Name box, enter the name of the data file to be loaded
(including the full path). Normally, this is a file that you have saved from
a previous execution of the program. Click OK.

File Submenu
The second submenu on the AspenPlusReformer menu is File. There are
four commands in this menu, which are summarized below.
The first two commands display dialog boxes that you can use to retrieve or
save a case file. You can use the last two commands to retrieve or save
information you have entered in the Param or Simulation worksheets.
Command Function

Load User Data from Var File Brings up a dialog box to load a case file
Save User Data to Var File Brings up a dialog box to save a case file
Load User Input Sheet Loads data you previously entered on a Parameter
or Simulation worksheet
Save User Input Sheet Saves data you previously entered on a Parameter
or Simulation worksheet

It is very important for you to be familiar with the Load User Data from Var
File and Save User Data to Var File commands.
The Reformer model is an equation-based model and can be moved from a
base solution to another base solution, if the move is not too large. Normally,
as a very general rule, too large means a move of about 20% to 30% on
values other than temperatures. Temperatures changes can be in the range
of 10 to 20 F.

3 The Aspen Plus Reformer User Interface 23


With experience, you will become more familiar with the magnitude of
changes that the model can accommodate. However, when a solution is not
achieved, the solver is left with a bad starting point. You will need to load in a
good starting point and this is done with the Load User Data from Var File
command. Therefore, it is good practice to save cases with the Save User
Data to Var File command for later retrieval.
The Load User Input Sheet and the Save User Input Sheet options are
workbook operations you can use to avoid retyping data if it is lost in a run
that doesnt converge. After you retrieve a case, the values in worksheets will
be updated. If you have entered data on the Parameter or Simulation
worksheet, this data will be overwritten. To retrieve this data, execute the
Load User Input Sheet command. If you need to save the data you have
entered, execute the Save User Input Sheet command. These can also be
activated by buttons on the toolbar:

Setup Cases Submenu


The third submenu on the AspenPlusReformer drop-down menu is Setup
Cases. This submenu will be dimmed until you successfully connect to the
workbook to the calculation engine as explained above.
The Setup Cases contains six commands, which are summarized below.
Command Function

Case Study Set up case studies


Optimization Set up optimization calculations
Vectors Set up LP vectors
PIMS Vectors Set up PIMS vectors
Profit 1 Set up profit function number 1 for optimization case
Profit 2 Set up profit function number 2 for optimization case
Profit 3 Set up profit function number 3 for optimization case

24 3 The Aspen Plus Reformer User Interface


4 Introduction to the Aspen
Plus Reformer workbook

Overview
A Microsoft Excel workbook, the Aspen Plus Reformer Workbook, is the
user interface to the Aspen Plus Reformer model. This workbook is
organized in worksheets that provide a guide to setting up various cases for
Reformer modeling:
Parameterization.
Simulation
Optimization
Case Studies
LP Vectors
There are also worksheets that provide reports for feed and catalyst blending.
In addition, an Analysis worksheet is provided that is used to verify the
validity of a calculation. Another worksheet provides a set of options that are
used in the case modes listed above.
The workbook communicates with the engine or equation solver through a
client-server architecture. DCOM is used as the basis for this client-server
connection. All cases culminate with a transmission through DCOM of data
from the workbook to the equation solver and the return of data to the
workbook of results from the equation solver.

Worksheets in the Aspen Plus


Reformer Workbook
There are two groups of worksheets in the Aspen Plus Reformer Excel
workbook.
The first group contains the standard worksheets that are typically used for
executing the Reformer model. They provide forms for the input of data and
also forms for reports of results obtained from the model. Within these
worksheets, the standard Excel functions still are available.

4 Introduction to the Aspen Plus Reformer workbook 25


Worksheets in the second group are hidden worksheets. They are normally
hidden and in some cases are password protected. These worksheets provide
behind the scenes functionality to the workbook. They can be used for some
advanced functions in the workbook, for example, designing forms for input
and output of data.

Standard Worksheets
The standard worksheets are by default visible in the Aspen Plus Reformer
workbook. They can be scanned by selecting or clicking on the normal Excel
tabs that appear at the bottom of the workbook. They are arranged in the
order of customary usage. However, you can change this order with the
normal Excel methods.
Worksheet Name Description

Flow Diagram Process flowsheet and perform guide buttons


ProcessOverView Sets global calculation options
RxSection Reactor data
Catalyst Catalyst data
Stabilizer Stabilizer data
Feeds Feed specification data
Yields Products data
Streams Prime stream data
User User customized data (empty as installed)
LP Vectors Entry and setup form for LP Vector calculations
PIMS Vectors LP Vectors set up to generate a PIMS Table
Cases Entry and setup form for case studies
PIMS Cases Entry and setup form for PIMS case studies
PIMS Table PIMS Table
Optimize Entry and setup form for optimization calculations
Profit 1 Entry and setup form for profit based objective
function no 1
Profit 1 Report Report form for objective function no 1
Profit 2 Entry and setup form for profit based objective
function no 2
Profit 2 Report Report form for objective function no 2
Profit 3 Entry and setup form for profit based objective
function no 3
Profit 3 Report Report form for objective function no 3

Besides displaying the logo for the workbook, the Introduction worksheet
provides version data about the workbook. This data is located below the
opening display and is displayed by moving the slide bar, or paging, down.
Located below the version information is a place for notes and/or comments.
Global calculation options are set in the Options worksheet.

26 4 Introduction to the Aspen Plus Reformer workbook


Hidden Worksheets
There are several worksheets in the Aspen Plus Reformer workbook that are
by default hidden. These are not needed for general use of the workbook, but
may be viewed for information content.

Viewing Hidden Worksheets

To View Hidden Worksheets:


On the Excel toolbar, click Format | Sheet | Unhide.
Some of these worksheets are password protected to prevent inadvertent
changes to their contents. Such changes can affect the functionality of the
workbook and cause a failure to occur in this functionality.
Worksheet Name Description

ProcessOverview IO Structures the layout for the ProcessOverview worksheet


ProcessOverview Links Direct cell links to the model variables available in the
workbook for the ProcessOverview worksheet
ProcessOverview Contains a copy of your input for the ProcessOverview
UserInput worksheet
RxSection IO Structures the layout for the RxSection worksheet
RxSection Links Direct cell links to the model variables available in the
workbook for the RxSection worksheet
RxSection UserInput Contains a copy of your input for the RxSection
worksheet
Catalyst IO Structures the layout for the RxSection worksheet
Catalyst Links Direct cell links to the model variables available in the
workbook for the Catalyst worksheet
Catalyst UserInput Contains a copy of your input for the Catalyst worksheet
Stabilizer IO Structures the layout for the Stabilizer worksheet
Stabilizer Links Direct cell links to the model variables available in the
workbook for the Stabilizer worksheet
Stabilizer UserInput Contains a copy of your input for the Stabilizer worksheet
Feeds IO Structures the layout for the Feeds worksheet
Feeds Links Direct cell links to the model variables available in the
workbook for the Feeds worksheet
Feeds UserInput Contains a copy of your input for the Feeds worksheet
Yields IO Structures the layout for the Yields worksheet
Yields Links Direct cell links to the model variables available in the
workbook for the Yields worksheet
Yields UserInput Contains a copy of your input for the Yields worksheet
Streams IO Structures the layout for the Streams worksheet
Streams Links Direct cell links to the model variables available in the
workbook for the Streams worksheet
Streams UserInput Contains a copy of your input for the Streams worksheet
Param1 IO Structures the layout for the Param1 worksheet

4 Introduction to the Aspen Plus Reformer workbook 27


Worksheet Name Description

Param1 Links Direct cell links to the model variables available in the
workbook for the Param1 worksheet
Param1 UserInput Contains a copy of your input for the Param1 worksheet
ParamPass1 IO Structures the layout for the ParamPass1 worksheet
ParamPass1 Links Direct cell links to the model variables available in the
workbook for the Streams worksheet
ParamPass1 UserInput Contains a copy of your input for the ParamPass1
worksheet
ParamPass2 IO Structures the layout for the Streams worksheet
ParamPass2 Links Direct cell links to the model variables available in the
workbook for the ParamPass2 worksheet
ParamPass2 UserInput Contains a copy of your input for the ParamPass2
worksheet
EB Scripts Contains script that for execution of the calculation
engine
EB Scripts Rx Contains script that for execution on RxSection
Worksheet
EB Scripts Catalyst Contains script that for execution on Catalyst Worksheet
EB Scripts Stab Contains script that for execution on Stab Worksheet
EB Scripts Feeds Contains script that for execution on Feeds Worksheet
EB Scripts User Contains script that for execution on User Worksheet
EB Scripts ParamPass1 Contains script that for execution on Parampass2
Worksheet
EB Scripts ParamPass2 Contains script that for execution on Parampass2
Worksheet
ReceiveVars Contains and manages variables that are sent from the
calculation engine to the workbook through DCOM
SendVars Contains and manages variables that are sent to the
calculation engine from the workbook through DCOM
Registry Contains a collection of data and parameters for the
Aspen Plus Reformer workbook

Specification Buttons and


ComboBoxes
Microsoft Excel Buttons and ComboBoxes are used to offer calculation options
in the Aspen Plus Reformer workbook.
The buttons are usually used to guide into a specific spreadsheet or area to
display the data and specifications. And, the comboboxes are contained in the
several worksheets.

28 4 Introduction to the Aspen Plus Reformer workbook


Buttons on Worksheet "Flow Diagram"

A number of buttons are designed to guide you to different data sheets and
areas to display information. The functions of these buttons are explained
below.
Process OverView. Guides you to the ProcessOverView sheet to see
the processes basic data.
Specification Options. Click this button to pop up the Select
Specification Options dialog. You can select an item and click the
Select button to reset a group of specifications properly. If you click the
Cancel button, the specification changes do not take place.

4 Introduction to the Aspen Plus Reformer workbook 29


Save to Prior. This button saves the current solution to the Prior column
on these worksheets:
o Process Details
o Process Overview
o Param Data
This lets you make quick comparisons between different runs. For
example, you can run a base case and save the values to the Prior
column. Then, for any simulate run, you can quickly compare the results
in the value column to the prior column to see how things changed.
Stabilizer, Yields, Streams, User, Reactor, and Param. These buttons
guide you to corresponding worksheets, on which the grouped data and
specification information are provided.
Net Hydrogen, Stab O/H Vapor, Stab O/H Liquid, Stab Bottoms.
These buttons bring you to the Stream worksheet and display a proper
section to show the data for hydrogen stream, stabilizer overhead vapor
and liquid streams, and bottoms streams data.

ComboBoxes on Worksheet "Feeds"


On the Feeds worksheet, the ComboBoxes are used to let you select a
specific item from a list to show stream variables on the display area.
Type of flow rate combo box. From this combo box list you can choose
to display either:
o Mass basis flow.
o Volume basis flow.

30 4 Introduction to the Aspen Plus Reformer workbook


Type of composition basis combo box. For all composition data
display, you can select from this combo box to show the data by:
o Weight percent
o Mole percent
o Volume percent

Combined feed specification combo box. You can specify the


combined feed flow as constant and let one of the three feed flows as
calculated.

Customizing with the


Worksheets
You can modify the three standard hidden worksheets provided in this
workbook to fit the specific needs of the problem.

4 Introduction to the Aspen Plus Reformer workbook 31


The SendVars Sheet
The SendVars sheet provides the list of variables and their attributes that
can be sent to the RT-Opt engine.
Some elements on the sheet are mandatory for the workbook to function
properly. These are:
Headings row. The headings for the columns in the sheet must be
located in Row 2.
Variables name column. The name column is mandatory and must be
located in Column B.
Column A. This column is used to keep status of variables existence. By
default Column A is hidden.
Attribute columns. The attribute columns must be located from Column
C on. There must be no empty columns among the attribute columns.
End of attributes. An empty column (or an empty heading) is used as a
way to indicate the end of the attribute column list (Column J in the above
figure). You can add or remove attribute columns.
The valid headings for the SendVars sheet are:
Column Heading Sub-Heading Description

A Variable valid Validity


B name Name
C value Value
D spec Specification
E Attributes upper Upper limit
F lower Lower limit
G step Step limit
H uom Unit of Measure
I Not used
J value Value
K spec Specification
L New values upper Upper limit
M lower Lower limit
N step Step limit
O uom Unit of Measure
P Not used
Q Flags LP LP flag
R Opt Optimization Flag
S Aliases Aliases
T Case Select Flag if used in case study
U LP Select Flag if used in LP
V Opt Select Flag if used in
optimization
W Not Used
X Links Sim SendVar Links Not used by USERS
Y Param SendVar Links Not used by USERS

32 4 Introduction to the Aspen Plus Reformer workbook


Column Heading Sub-Heading Description

Z Process OverView Not used by USERS


SendVar Links
AA RxSection SendVar Links Not used by USERS
AB Stabilizer SendVar Links Not used by USERS
AC Feeds SendVar Links Not used by USERS
AD Yields SendVar Links Not used by USERS
AE Streams SendVar Links Not used by USERS
AF Catalyst Sendvar Links Not used by USERS

The ReceiveVars Sheet


The ReceiveVars sheet provides a place for receiving attributes from the RT-
Opt engine for the list of variables specified.
The ReceiveVars sheet is very similar to the SendVars sheet. The main
difference is the type of attribute columns allowed. These attributes are:
Column Heading Sub-Heading Description

A valid Validity
B Variable name Name
C value Value
D spec Specification
E Attributes upper Upper limit
F lower Lower limit
G step Step limit
H uom Unit of Measure
I init Not used
J Not used
K Not used
L Not used
M Not used
N Not used
O Not used
P Not used
Q LP LP flag
R Opt Optimization Flag
S Obj1 Incremental Value 1 flag
T Obj2 Incremental Value 2 flag
U Aliases Aliases
V Titles Titles
W Case Select Flag if used in case study
X LP Select Flag if used in LP
Y Opt Select Flag if used in LP
Z Obj1 Select Flag if used in LP - incremental
value 1

4 Introduction to the Aspen Plus Reformer workbook 33


Column Heading Sub-Heading Description

AA Obj2 Select Flag if used in LP - incremental


value 2
AB Profit 1 Selected Profit 1 flag
AC Obj1 Label Profit 1 flag
AD Obj1 price Profit 1 flag
AE I1 Name Profit 1 flag
AF I1 Label Profit 1 flag
AG I1 Base Profit 1 flag
AH I1 Price Profit 1 flag
AI I2 Name Profit 1 flag
AJ I2 Label Profit 1 flag
AK I2 Base Profit 1 flag
AL I2 Price Profit 1 flag
AM I3 Name Profit 1 flag
AN I3 Label Profit 1 flag
AO I3 Base Profit 1 flag
AP I3 Price Profit 1 flag
AQ Profit 2 Selected Profit 2 flag
AR Obj1 Label Profit 2 flag
AS Obj1 price Profit 2 flag
AT I1 Name Profit 2 flag
AU I1 Label Profit 2 flag
AV I1 Base Profit 2 flag
AW I1 Price Profit 2 flag
AX I2 Name Profit 2 flag
AY I2 Label Profit 2 flag
AZ I2 Base Profit 2 flag
BA I2 Price Profit 2 flag
BB I3 Name Profit 2 flag
BC I3 Label Profit 2 flag
BD I3 Base Profit 2 flag
BE I3 Price Profit 2 flag
BF Profit 3 Selected Profit 3 flag
BG Obj1 Label Profit 3 flag
BH Obj1 price Profit 3 flag
BI I1 Name Profit 3 flag
BJ I1 Label Profit 3 flag
BK I1 Base Profit 3 flag
BL I1 Price Profit 3 flag
BM I2 Name Profit 3 flag
BN I2 Label Profit 3 flag
BO I2 Base Profit 3 flag
BP I2 Price Profit 3 flag

34 4 Introduction to the Aspen Plus Reformer workbook


Column Heading Sub-Heading Description

BQ I3 Name Profit 3 flag


BR I3 Label Profit 3 flag
BS I3 Base Profit 3 flag
BT I3 Price Profit 3 flag
BU EngIndex Engine Variable Index

The EB Scripts Sheet


The EB Scripts worksheet allows you to maintain a list of scripts that can be
executed by opening the Command line dialog and clicking the EB Scripts
button. The scripts can be edited or removed and new scripts can be added to
the sheet.
The mandatory elements for the scripts to function properly are:
A script is defined by a header, used as the script name, plus the list of
commands to be executed.
Valid commands are any commands supported by the RT-Opt command
line (RT-Opt kernel commands).
The script header must be on Row 1.
A script must occupy a single column.
An empty cell marks the end of the script.
Any commands following an empty cell will be ignored.

Adding New Scripts

To Add A New Script:


1 Select the top cell of the first empty column in the sheet.
2 Add the name of the script on this cell and the script commands in the
cells below, making sure there are no empty cells between commands.

Receive Vars
Receive Vars updates the valid selected variables located on the
ReceiveVars sheet with the variable information from the RT-Opt server. The
attributes updated depend on the mask selected under the Setup
Send/Receive Vars dialog, and the valid attribute columns found in the
sheet.
There is no need to verify the validity or existence of the variables on the
sheet. Receive Vars always executes a Check Receive Vars before issuing
the receive command itself.

Send Vars
Send Vars moves the attribute information from the valid selected variables
located in the SendVars sheet to the RT-Opt server. The attributes updated

4 Introduction to the Aspen Plus Reformer workbook 35


depend on the mask selected under the Setup Send/Receive Vars dialog,
and the valid attribute columns found in the sheet.
There is no need to verify the validity or existence of the variables on the
sheet. Send Vars always executes a Check Send Vars before moving any
information to the server.

Check Receive Vars


This menu verifies that the selected variables in the ReceiveVars sheet exist
in the RT-Opt problem loaded. All invalid variables are highlighted in red. The
highlighted variables are not updated during a Receive Vars operation.

Check Send Vars


This menu verifies that the selected variables in the SendVars sheet exist in
the RT-Opt problem loaded. All invalid variables are highlighted in red. The
highlighted variables will not be updated during a Send Vars operation.

36 4 Introduction to the Aspen Plus Reformer workbook


5 Running Aspen Plus
Reformer Cases

Overview
You can run five types of cases in the Aspen Plus Reformer model:
Simulation Case
Parameterization Case
Optimization Case
Case Studies
LP Vector Generation Case
The Simulation Case is a simple what-if study. What changes to dependent
variables result from a specified set of independent variables?
The Parameterization Case fits the models kinetic rate constants and base
operating data to match an observed process operation, feed properties, and
product yields. This case is often referred to generically as a calibration
case.
The Optimization Case varies a defined set of independent variables to
maximize (or minimize) a specified dependent variable, the Objective
Function.
The Case Studies are a user-specified series of Simulation Cases. You can
vary independent variable values between cases. Specifications can not be
varied between cases.
The LP Vector Generation Case generates a set of derivatives between
specified dependent and independent variables that can then be used in the
formulation of LP vectors.
You can run all case types from either the Reformer toolbar or the Aspen
Plus Reformer menu.

5 Running Aspen Plus Reformer Cases 37


Running Cases from the
Reformer Toolbar
To Run Cases From The Reformer Toolbar:
1 From the Reformer toolbar, select the type of case to be run from the
Case Type list (circled).
2 Click the Run Case or Play button beside it to begin execution of the
case.

Running Cases from the


Reformer Menu
You can also run cases using selections from the AspenPlusReformer menu
as shown below.
Click AspenPlusReformer | Run Cases | type of case to begin
execution of the case.

Running Multiple Cases


In addition to single cases, Aspen Plus Reformer lets you run multiple cases at
a time to retrieve the results into a single area that is easy to work with. This
can be useful if you want to see how the model responds to changes in one or
more variables. For instance, it may be desirable to see what the gasoline
yield looks like as a function of riser overhead temperature. To do this, you
would want to run multiple cases with different temperatures and have the

38 5 Running Aspen Plus Reformer Cases


results reported and graphed to determine where the over-cracking peak
occurs. This can easily be accomplished by running the case study option.
Before running a case study, you must first set up which variables will be
varied and which variables will be reported.

To Do This:
1 On the AspenPlusReformer menu, click Setup Cases | Case Study.
This activates the Case Study worksheet and opens displays the Setup
Case Study dialog box from which you can choose:
The independent variables that will be varied.
The variables that will be reported.

2 Select the appropriate variables.


3 Click the OK button to set up the worksheet.
A new dialog box opens at this point that lets you specify the first and last
case to run.
4 Click the OK button after this.
The worksheet will be updated.
o The independent variable names will appear on the Case Study page
in Column A starting with Row 9.
o The reported variables will appear on the Case Study page in Column
A starting with Row 111. Column B is reserved for optional user labels.

5 Running Aspen Plus Reformer Cases 39


If the desired variables are not available in the Case Study Dialog box,
the dependent variables must be flagged with LP in Column Q of the
ReceiveVars page. The independent variables are flagged with LP in
Column Q of SendVars.

Note: To avoid specifying a dependent variable as an independent variable,


common practice is to use the following logical on the SendVars page rather
than simply typing in LP as is done on the receive vars page.
=IF(OR(D3804="CONST"),"LP","").
5 Once the spreadsheet is set up, you should input values for the
independent variables for each case to be run.
The model is now ready to execute a case study.

Solver Settings
A script file embedded in the EB Scripts spreadsheet (hidden by default)
controls the execution of each case. For Aspen Plus Reformer, the following
solver settings are recommended for the simulation case type.
solver settings maxiter = 50
solver settings miniter = 0
solver settings creepflag = 1
solver settings creepiter = 10
solver settings creepsize = 0.1
solver settings searchmode = 3
solver settings factorspeed = 1
solver settings pivotsearch = 10
solver settings rescvg = 1.E10
solver settings objcvg = 1.E6
solver settings HESSIANUPDATES = 0
For most Simulation Cases, the Creepiter variable can be set to 3.
Key variables are:
Variable Meaning

Maxiter: the maximum number of iterations allowed for a solution


Miniter: the minimum number of iterations
Creepflag whether creep control is on:
0 = off
1 = on
Creepiter the number of creep iterations
Creepsize the magnitude of steps as a fraction of the step size that would be
taken if creep control was off
Rescvg the residual convergence tolerance

40 5 Running Aspen Plus Reformer Cases


6 Introduction to Simulation

Overview
Once the model is satisfactorily tuned to match plant data, it can be used to
predict how changes in the feed rates, feed types and composition, catalyst
type, and operational conditions affect yields and product properties.

Simulation Sheets
The simulation sheets are:
Flow Diagram
ProcessOverView
RxSection
Catalyst
Stabilizer Feeds
Yields
Streams
Typically, you enter data into the cells highlighted in blue for each section.

Key Operating Data


The KEY OPERATING DATA section contains key values which may be either
input to or output from the model. You can input changes to reactor
temperatures, octane, recycle rate, feed rates, feed compositions, and the
stabilizer operations.
If the model is being run at a specified reactor inlet temperature,
temperatures are specified.
If the model is converging on octane, the octane is specified.

Severity Options
The severity options are accessed via the Select Spec Options ComboBox.

6 Introduction to Simulation 41
1 Highlight the desired specification.
2 Activate it by clicking the Select button.

Feed Data
The FEEDS section contains inputs for up to three feeds. Each feed flow can
be specified on a mass or volume basis. All feeds must be specified on a
component basis. Feed 3 can alternately be specified on an N+2A or N+3A
basis in weight or volume percent.

42 6 Introduction to Simulation
Yields
The YIELDS section contains only model output and so you need not enter
any information in this section. Yields are reported on a weight and volume
basis. The H2, C1, C2 and O2 volumes are on a user-defined basis. This
allows user-defined FOE volumes or standard volumes to be used. If zero
values are given, the default values are used. These values should be set
during model calibration.
Variable Spec Default

NETCAL_USER_H2_SG 0.0000000 CONST 0.3413


NETCAL_USER_C1_SG 0.0000000 CONST 0.8237
NETCAL_USER_C2_SG 0.0000000 CONST 0.8649
NETCAL_USER_O2_SG 0.0000000 CONST 0.8736

Catalyst Data
The CATALYST DATA section lets you change catalyst coke loadings or
catalyst age depending on the mechanical configuration.

6 Introduction to Simulation 43
For CCR operations, the Coke on Catalyst or the Catalyst Circulation Rate
can be specified.
The coke on catalyst in each reactor is calculated as well as the regenerator
air requirement.

Stream Rates and Compositions Product


Rates and Properties
The stream rates and compositions are on the Streams sheet. Liquid stream
compositions are given on a mass, volume and mole basis. Vapor streams on
a mass and mole basis. An example of part of the hydrogen stream section
is shown below.

44 6 Introduction to Simulation
Running a Simulation Case
Before You Start
Once the model is satisfactorily tuned to match plant data, you may use the
model to predict how changes in feed rates, feed composition, and
operational conditions affect the yields. Typically, AspenTech would have
executed a project which included analyzing plant test run data and tuning
Aspen Plus Reformer to match the operating unit performance. The result of
this project is delivered as a data file containing a parameterized Aspen Plus
Reformer case.

Feed Data Simulation Case


The FEED DATA section contains input data for up to three feeds. Feed data
is entered from the Feeds sheet accessed from either the Feeds tab or the
Feeds button on the Flow Diagram Worksheet. For each feed, you can
select the feed flow measurement as well as the method of feed definition.
The individual feed rates can be specified on a mass or volume basis by
selecting the preferred option from the individual feed rate method menus.

The Feed composition type (weight, mole volume) can also be specified from
a menu for each individual feed.

Calculated feed values such as:

6 Introduction to Simulation 45
feed gravity
molecular weight
distillation
are reported on the same Feeds sheet. The combined feed rate, composition
and properties are reported along with the individual feed data. The combined feed
rate can be specified by allowing any one feed to vary.

Feed 3 has an optional specification of fixing the feed N+2A or N+3A and
allowing the model to vary the feed composition.

Note: C5+ only components are specified in the Feed 3 specification.

The carbon number distribution will remain constant. That is, if 5% of the
feed is specified as C6, the resulting composition will be 5% C6. Also, the
Paraffin, Naphthene, and Aromatic distribution will be proportional
through the Carbon number distribution. If 20% of the aromatics are specified
as C7, the resulting feed will have 20% of the aromatics as C7. The
naphthenes-to-aromatics ratio remains constant between the specified and
resultant feed.

46 6 Introduction to Simulation
Example: Dummy Feed 3 Specification
Component - % Specified Resultant Feed

C6 Par 2.00 1.81


C6 Nap 1.00 1.20
C6 Arom 2.00 2.41
C7 Par 37.00 33.45
C7 Nap 6.00 7.22
C7 Arom 12.00 14.44
C8 Par 29.00 26.22
C8 Nap 3.00 3.61
C8 Arom 8.00 9.63
Total Paraffins 68.00 61.48
Total Naphthelenes 10.00 12.04
Total Aromatics 22.00 26.48
N+2A Calculated 54.00 65.00
Specified N+2A 65.00 65.00

Specification Options
To Set Operating Specifications For The Reformer:
Click the Specifications Options button on the Flow Diagram sheet.
The Select Specification Options dialog box appears, with four tabs:
Rx-Section
Catalyst
Stabilizer
User Scripts
The Rx-Section tab lets you specify a combination of one of five severity
definitions:
Stabilizer Bottoms RON
C5+ RON
WAIT
Base Inlet Temperature
Aromatics Wt. Percent
You can also set up two recycle rate definitions:
rate
H2HC ratio

6 Introduction to Simulation 47
Once a specification pair has been selected, Aspen Plus Reformer displays the
Rx-Section sheet, switches the variable specifications as required, and
highlights those fields where you can enter data.
The Catalyst tab lets you specify catalyst activity. In the case of a CCR
operation, the catalyst circulation rate can be specified (then carbon on
catalyst is calculated) or carbon on catalyst is specified (then catalyst
circulation rate is calculated).

Again, once a selection is made, Aspen Plus Reformer:


Displays the Catalyst sheet.

48 6 Introduction to Simulation
Switches the variable specifications as needed.
Highlights the fields for data entry.

Running a Simulation Case


After you have input data, you can solve the model with the updated data.

To Run A Simulation Case:


1 On the Reformer toolbar, select Simulate.

2 Click the Play ( ) button.


The command line dialog box appears while the model is being solved. When
the solver has concluded (following convergence or failure) the Simulation
sheets are updated with data from the model.

Saving Solutions
There are two ways to save data after a successful model run. The two save
options have different consequences.
Option 1: Save the results to a new VAR file. Do this from the command
line or by using the Save Data button ( ). To review the results at a
later time the data can be read back into the workbook. Supplemental
cases can be run from this type of save.

6 Introduction to Simulation 49
Option 2: Save the EXCEL workbook. This type of save does not require
the Aspen Plus Reformer workbook to be re-connected to review the
data. Supplemental cases CANNOT be run from this type of save.

Error Recovery
You should check the convergence status shown at the top of the simulation
sheet after running the simulate case. The results on the simulation sheet are
only meaningful if the convergence status is converged. If the status is not
converged, then it is generally desirable to return the simulation sheet and
model to their pre-solution states.

To Return The Simulation Sheet And Model To Their Pre-


Solution States:
1 Restore the model to the "base" parameter case by clicking
AspenPlusReformer | File | Load User Data from Var File.
2 Browse for the .var file in which you saved the results of the base
parameter case.
3 Restore the simulation sheet user input by clicking AspenPlusReformer
| File | Load User Input Sheet.
4 Examine the input data as compared with the base parameter case.
Convergence failure for the simulation case typically has one of two basic
causes:
Poor or erroneous data were entered as input (blue-colored cells). For
example:
o Check that reasonable feed property data were entered for all feeds.
o Check that reasonable catalyst property data were entered for all
catalysts.
o Check that the cut points entered for light naphtha and LCO are
physically possible.
The solver parameters are too "aggressive" for the data entered. For
example, a large change in feed rate (greater than 15%) may require
more conservative solver parameters.

50 6 Introduction to Simulation
7 Running Multiple Cases

Overview Case Studies


In addition to single cases, Aspen Plus Reformer allows you to run multiple
cases at one time and retrieve the results into a single area that is easy to
work with. This can be useful if you want to see how the model responds to
changes in one or more variables. For instance, it may be desirable to see
how the C5+ yield varies with changes in reactor inlet temperature. To
perform this type of study, you would run multiple cases with different
temperatures and have the results reported. This can easily be accomplished
with the case study feature.

Before You Start


Before running a case study, you must first set up the case specifications
using the Select Specification Options dialog box. This determines which
variables are available for manipulation and which variables can only be
reported.
Changes you make to data sheets such as RxSection and Feeds will not be
used for the case study. For instance, to change the WAIT on the RxSection
page before running a case study where the WAIT is varied, you should first
change the WAIT and run a simulation case from the Aspen Plus Reformer
toolbar. See Simulation Cases.
You can then run the case study varying the WAIT.

Note: When a new case study is set up or run, the data that are currently in
the worksheet are not erased automatically.

To Remove Any Unwanted Data:


Manually select and delete the data.
Each step of the case study will typically require about one minute to solve
and update the spreadsheet.

7 Running Multiple Cases 51


Setting Up a Case Study
The next step is to specify which variables will be varied and which variables
will be reported.

To Specify Which Variables Will Be Varied And Which


Variables Will Be Reported:
1 On the main menu, click AspenPlusReformer | Setup Cases | Case
Study...
The Cases worksheet appears along with the Setup Case Study dialog
box from which you can choose:
The independent variables that will be varied.
The dependent variables that will be reported.

The dialog box consists of two listboxes, each of which contains a list of
variables that can be selected.
Use the upper listbox to select the independent variables that will be
varied. You can select as many variables as desired from the list using the
checkboxes beside the variable descriptions. You can deselect a variable
be by clearing the check-box.
Use the lower listbox to select the variables that will be reported on the
Cases page; it works exactly like the upper listbox.

52 7 Running Multiple Cases


2 Once you have selected all of the variables, click the OK button to set up
the worksheet.
-or-
Click the Cancel button to close the dialog box without making changes to
the Cases worksheet.
The independent variable names will appear on the Cases worksheet in
column A starting in Row 9. The reported variables will appear on the
Cases worksheet in Column A starting in Row 111. Column B is reserved
for optional user labels.
Once the spreadsheet is set up, enter values for the independent variables for
each case to be run. The model is now ready to execute a case study.

Running a Case Study


To Run A Case Study:
1 On the AspenPlusReformer toolbar, select the Case Study option from/

then click the Play ( ) button.

The Select Case Study Range dialog appears.

2 Enter the number of the first and last case number.


3 If you want LP Vectors calculated, leave the Calculate LP Vectors?
option checked. Otherwise, clear it.
4 Click the OK button.
The command line will open and the case study will start with the first
specified case.
After the first case is solved the command line will close while the data is
retrieved to the spreadsheet. The command line will re-open when each
subsequent case starts.
For case studies, neither the Reformer Summary page nor the Param Data
page is updated. After the independent variable data has been sent the cells
are highlighted in blue. Similarly, after the reported variables have been
retrieved, those cells are highlighted in blue.

7 Running Multiple Cases 53


In addition to reporting values for all of the specified report variables, a set of
LP vectors will be generated for each case. These LP vectors will correspond
to the LP vectors that have been set up on the LP Vector worksheet. These
will be reported in the LP Vector section of the case study page starting
with Row 1005. Column A lists the dependent variable and column B lists the
independent variable. The values that are returned for a case study will be
highlighted in blue.

Note: When a new case study is set up or run, the data that are currently in
the worksheet do not automatically get erased. To remove any unwanted
data, you must manually highlight and delete the data.
Each step of the case study will typically require about one minute to solve
and update the spreadsheet. A single case study will be somewhat faster
than a corresponding simulation because less data is sent to and retrieved
from the model.

54 7 Running Multiple Cases


8 LP Vectors

Overview of LP Vector
Generation
In addition to letting you determine yields, temperatures, product properties,
and so on., this model offers the capability of generating LP (Linear
Programming) vectors.

Objective of Running LP
Vectors
The main purpose of generating LP vectors is to provide shift factors for LP
planning and scheduling tools, such as Aspen PIMSTM.
In LP planning and scheduling tools for the refining industry, every processing
unit is represented by a simplified linear model. Like all linear models, a
catalytic reformer model can use fixed gains (base model and shift factors) to
represent the relationship between operating conditions and product flow
rates and properties.
The standard Aspen Plus Reformer model is a rigorous nonlinear model
with detailed kinetic description and it is well suited for providing accurate
shift factors. The Aspen Plus Reformer model has build-in function of
generating LP vectors, which are equal to the shift factors in a LP model.
The LP vectors can also act as the accuracy indicator of the Aspen Plus
Reformer model. The LP vectors can be compared to a gain matrix in APC
(Advanced Process Controller). The gain matrix in APC is obtained from plant
step tests and it should closely represent the real relationship between
independent variables and dependent variables in the process. By comparing
to gain matrix in APC model, you can observe how closely the model
simulates reality.

8 LP Vectors 55
LP Vector Generation
From the model point of view, LP vectors are the gains between a set of
independent variables and a set of dependent variables. LP vectors are
calculated by doing a sensitivity analysis on the model. In the Aspen Plus
Reformer model, LP vector generation is executed by:
Issuing a sensitivity analysis command to the command line.
Retrieving the results back to EXCEL interface.
LP vector generation is run in simulation mode. The independent and
dependent variables you choose for LP vector generation must correspond to
fixed and free variables in the simulation mode.
The fixed variables in simulation mode have the specification of CONST or
PARAM. However, the PARAM variables are normally internal to the model
and have no physical meaning. Therefore, they do not appear in the set of
independent variables in LP generation.
All independent variables have the specification of CONST.
The free variable in simulation mode has the specification of CALC or MEAS.
Therefore, a dependent variable has the specification of CALC or MEAS.
Aspen Plus Reformer provides a pick list of independent variables and a pick
list of dependent variables. Aspen Plus Reformer presents only CONST
variables in the pick list of independent variable and only CALC and MEAS
variables in the pick list of dependent variables in order to ensure that
whatever set you choose will lead to a well-posed problem.
The two lists that Aspen Plus Reformer model provide should be able to
satisfy most of cases. However, you can add variables to those two lists if
necessary. Any variable in the independent variable list is marked LP in
Column Q (with title LP) on the SendVars page. You can add variables to
this list by entering Yes in Column Q on the SendVars page for the desired
independent variables. Any variable in the dependent variable list is labeled
LP in Column Q (with the title LP) on the ReceiveVars page. You can add
variables to this list by entering Yes in Column Q on the ReceiveVars page
for the desired dependent variables.
Generating LP vectors is a two-step process.
1 Specify what the independent and the dependent variables are
2 Run the LP vector generation command

To Specify The LP Vectors:


1 On the main menu, click AspenPlusReformer | Setup Cases.
2 On the submenu click LP Vectors.
This sets up the LP Vectors spreadsheet.
The Setup LP Vectors dialog appears from which you can specify the
independent and dependent variables.

56 8 LP Vectors
The top list box is used to select the independent variables. You can select
any or all of the variables listed. To Select A Variable:
o Check the check box to the right of the variable name.
The lower list box is used to select the dependent variables and works
exactly the same as the independent variable list box.
3 When you have selected all the desired independent and dependent
variables, click the OK button.
-or-
Click the Cancel button to exit the Setup LP Vectors dialog without
saving your changes
If you clicked the OK button, the LP Vectors page is cleared. The
independent variables appear in the seventh row and the dependent variables
appear in Column C, as shown below
To save the changes made to the LP Vectors page, you must save the
worksheet.

8 LP Vectors 57
After the independent and dependent variables have been set up, you can
generate LP vectors.

To Generate LP Vectors:
1 On the Aspen Plus Reformer toolbar, selecting LP Vectors.

2 Click the play button ( ).


The model now calculates the Jacobian for the model and retrieves all of the
desired vectors into the LP Vectors page. The command line dialog box
opens for a short time while the Jacobian is being evaluated and while the LP
vectors are being calculated. You cannot issue any commands to the
command line dialog box at this time, however.
Typical execution time is about 20 seconds.
The figure below shows the LP Vectors worksheet after running a LP
Vectors case.

58 8 LP Vectors
Generating a Sample PIMS
Table
To Generate A Sample PIMS Table:
1 Select appropriate options (const C5+ RON and N+2A for Feed 3).
2 Make sure all feed is in Feed 3.
3 Set up appropriate PIMS vectors (N+2A is the independent variable,
yields).
4 Run a case study for the four different RON values. For each case, have
the LP vectors calculated for each step of the case study with N+2A as the
independent variable.
5 Make the appropriate transformations of the results to generate the PIMS
table.

8 LP Vectors 59
9 Optimization

Overview
Another key feature of the Aspen Plus Reformer model is the ability to
optimize yields, conversions, flow rates, and so on, by increasing the number
of degrees of freedom. The Excel interface lets you easily:
Set up objective (profit) functions.
Specify degrees of freedom.
Specify bounds.
Run optimization studies.
This section discusses the basics of the optimization and how to set up and
run optimization cases in Aspen Plus Reformer excel interface.

Optimization Basics
Optimization is to maximize or minimize a user-specified objective function by
manipulating independent variables (feed stream, block input, or other input
variables). The objective function is an equation that is used by the
optimization engine to determine the manner in which to manipulate the
degrees of freedom (independent variable) in a problem. You may have more
than one objective function in a problem, but only one is used by the engine
during the solution. Objective functions for Optimize cases in the Reformer
model are normally economic type (that is, maximize operating profit,
minimize operating cost, and so on.). Aspen Plus has three different kinds of
objective functions that can be defined:
Linear.
Sum of Squares.
Symbolic.
The Reformer model only uses objection functions that are in linear form.
Independent variables are those variables can be changed independently. For
instance, the feed rates in the Reformer unit. The optimizer then can vary the
values of independent variables to push the values of the object function in
the defined direction (maximize profit or minimize cost) until some bounds
are reached. Each independent variable accounts for a degree of freedom.
The number of degrees of freedom is equal to the number of independent

60 9 Optimization
variables in an optimization run if no independent variable is at its bound. You
may impose upper and lower bounds on independent variables to prevent the
final solution to deviate too far away from the starting point. You may also
impose step bound on independent variables.
Aspen Plus lets you bound every variable in the problem as shown below:
xl < x < xu
The step bound of an independent variable defines how much the value of the
variable can be changed in a single optimization run. The step bound is used
along with the initial value, lower bound and upper bound to compute the
actual bounds to be used in the run:
Xl = max(X - |Xstep|, Xlower )
Xu = min(X + |Xstep|, Xupper )
Upper and lower bounds should be defined from all independent variables.
You can also define the step bounds for independent variables.
Most of dependent variables in the Reformer model have very wide bound,
for instance, 1.E20 for upper bound and 1.E20 for lower bound. However,
some dependent variables have physical meaning. Appropriate bounds should
be set up for them to prevent the solution from getting into infeasible
operating conditions. For instance, there is metallurgic limit on regenerator
cyclone temperature. Hence, upper bound should be set for this variable. Only
those constrained dependent variables needs be defined in setting up
optimization case in Reformer model.
In general it is not recommended to heavily bind an optimization problem for
reasons that are both practical and algorithmic. Bounds on independent
variables are recommended in order to avoid unbounded problems. All other
bounds should be used only if they are absolutely necessary. The optimization
engine for Reformer model is DMO solver.

Setting Up Objective Functions


The first step to setting up an optimization case is to set up the objective
function(s). The objective function appears in the form of profit function in the
Aspen Plus Reformer model. Three different profit functions can be set up
in EXCEL interface. There are three pre-configured spreadsheet (Profit1,
Profit2, Profit3) contained in the interface that let you easily set up profit
functions of the following form:
Profit = F1 * (V1 + (IP1_1 BV1_1)*IV1_1 + (IP2_1 BV2_1)*IV2_1
+ (IP3_1 BV3_1)*IV3_1) + F2 * (V2 + (IP1_2 BV1_2)*IV2_1 +
(IP2_2 BV2_2)*IV2_2 + (IP3_2 BV3_2)*IV3_2) +

Where F1 and F2 represent some principal properties to which values (V1
and V2) are attached. For instance, let F1 represent the product gasoline flow
rate and V1 the value of the gasoline. Let F2 represent the reformate flow
rate and V2 the value of the reformate. IP1_1, IP1_2, and IP1_3 represent
incremental properties that can change the value of F1.

9 Optimization 61
Again, if F1 is considered to be the reformate flow rate, IP1_1 might be the
RON, IP1_2 might be the MON, and IP1_3 might be the RVP. BV1_1,
BV1_2, and BV1_3 are the base values of RON, MON and RVP.
The difference between the calculated value and base value for each
incremental property is the multiplied by the corresponding values (IV1_1,
IV2_1, and IV3_1). For instance, if the base value of RON (BV1_1) is 92, the
calculated value (IP1_1) is 93, and the value (IV1_1) is 0.25, the value of
reformate (V1) would be increased by 0.25.

To Set Up An Objective Function, For Instance Profit1:


1 From the AspenPlusReformer menu, select the Setup Cases option.
2 Select the Profit1 option from the sub-menu.
This will open the Add Variables to Objective Functions dialog that
contains a list of possible variables. Any variable in this list is marked Yes
in Column AB (with title Profit 1 Selected) on the ReceiveVars page.
The default list includes most of product streams and feed streams that
can be used in a profit function.

To Select Variables:
1 Check the check box to the right of the variable name.
Clearing the check box of a selected variable will deselect it.
You can specify as many principal properties as desired.
2 When you have selected the desired variables, click the OK button.
Clicking the Cancel button closes the dialog box without making any
changes to the Profit1 worksheet.

To Add Incremental Properties:


Click the Setup Property button.
The Add Properties to the Selected Product dialog appears, containing a
list of incremental properties from which to choose.

62 9 Optimization
Any variable in this list has a name in column AE (with title "I1 name") on
the ReceiveVars page. The label, base, and price of the incremental property
are list in Column AF to AH on the ReceiveVars page. The default list
includes most of important product properties. You can add variables to this
list by editing column AE through AH on the ReceiveVars page for the
desired variables.

To Select A Variable:
1 Check the checkbox to the right of the variable name.
Clicking on the checkbox of a selected variable deselect sit.
Any number of incremental properties (up to three) is valid for each
principal property. In the case described above where F2 represented the

9 Optimization 63
reformate flow rate, you may want to have only one incremental property
IP1_2, such as RON.
2 Check the desired variables; then click the OK button.
You are returned to the previous dialog box.
Clicking on the Cancel button will close the dialog box without making
any changes to the object function Profit1.
After selection, all of the principle properties and incremental properties that
compose the objective function appear on the Profit1 worksheet.
You must now enter values for each principal property and incremental
property.
For all principal property variables, the variable name, the units of the
variables, and the price unit will appear in Columns C, D and G, respectively,
of the Profit1 worksheet,. Each principal property occupies one row. Only
one value is needed for each principal property. You must enter the
appropriate price value in Column E. In the example shown, all flow rates
were in thousands of barrels per day and consequently the values were
entered as dollars per thousands of barrels. If you select a unitless variable
for the objective function such as conversion, the value will also be unitless.
If the principal property is a cost (such as feed value), the value would be
negative.

The incremental properties are listed to the right of principal properties on the
Profit1 worksheet. For all incremental property variables, the variable name
will appear in Column H. Each incremental property is in the same row of the
principal property that the incremental property is associated with.
Two values are needed for incremental properties. The base value is the value
of the incremental property of which the value of the principal property is
estimated. In other words, the base is the value at which the incremental
property has no effect on the principal property.
To identify each incremental property, you may want to assign a label for
each incremental property. The label can be entered in Column G. If a
principal property has more than one incremental property, the second and

64 9 Optimization
the third one lie to the right on the same row. The entry for the second and
the third incremental properties is similar to that for the first incremental
property.

Follow the same procedure to set up objective functions of Profit2 and


Profit3. The location of marking on the ReceiveVars page and the
SendVars page may be different. You should be able to find corresponding
columns by looking at the column titles on those two pages. In order to save
the changes made to the objective function pages, save the worksheet.

Setting Up Optimizations
In addition to setting up the objective functions used to optimize, you must
also set up the optimization variables and any bounds that are necessary. For
instance, you may choose to optimize profit 1 by varying the feed rate of
feed 1. However, the unit may have constraints to how much wet gas can be
processed, so the wet gas volume would be selected as a dependent
constraint variable.
The independent variables have the specification of Const if optimization has
never been set up before. However, not all variables with Const specification
in the model are included in independent variable list. Only those variables
that can be manipulated in the Reformer model will appear. Those variables
are identified by Opt in Column R (with title Opt) on the SendVars page.
The default list of independent variables should be able to handle most of
optimization run. If you want to use other variables as independent variables,
you should manually set up those variables on the SendVars page.
After a variable is selected on the independent list, the corresponding column
V (with the title Opt Select) on the SendVars page will be marked YES for
this variable. When solving the optimization case, the variable will be sent to
Command Line with the Optim specification. However, SendVars still keeps
the original Const specification for this variable.
The dependent constraint variables have the specification of Meas or Calc.
However, not all variables with Meas and Calc specification appear in the list.
Only those variables that represent operation constraints in Reformer appear.
Those variables are identified by Opt in Column R (with the title Opt) on the
ReceiveVars page. The default list of dependent variables represents all

9 Optimization 65
constraints commonly met in Reformer operation. If you have a particular
constraint that is not represented by any variable on the list, you can
manually set up those variables on the ReceiveVars page. After a variable is
selected on the dependent list, the corresponding Column Y (with the title
Opt Select) on the ReceiveVars page is be marked YES for this variable.
Aspen Plus Reformer presents only CONST variables in the pick list of
independent variable and only CALC and MEAS variables in the pick list of
dependent variables in order to ensure that whatever set you choose will lead
to a well-posed problem.

To Set Up An Optimization:
1 From the AspenPlusReformer menu, select the Setup Cases option.
2 Select the Optimization option from the sub-menu.

This activates the Optimize worksheet, and opens Setup Optimization


Case dialog from which you can select the desired independent variables
(extra degrees of freedom) and also dependent constraint variables.

66 9 Optimization
To Select A Variable:
Check the check box to the right of the variable name.

To Deselect A Variable:
1 Clear the check box to the right of the variable name.
2 When the independent variables and the dependent constraint variables
have been selected, click the OK button to complete the setup.
The selected variables and their current values will then appear on the
Optimize spreadsheet. Clicking the Cancel button will close the dialog
box without making any changes to the optimization problem.
After setting up optimization, a message box will appear to remind you to
Make sure the profit function is defined before running the optimize
case.
After selecting the desired independent variables and dependent constraint
variables, you should now input lower and upper bounds in Columns C and F
by the appropriate variables. You can also input step bounds for the
independent variables in Column G.
The optimization is now ready to solve.
In order to save the changes made to the Optimize pages, save the
worksheet.

9 Optimization 67
Executing Optimization Cases
To Solve The Optimization:
1 On the AspenPlusReformer toolbar, select the Optimize option

2 Click the play button ( ).


The Select Objective Function dialog appears.

68 9 Optimization
3 On this dialog, select an active objective function. Only one active
objective function can be selected.
4 Select the direction of the optimization by selecting maximizing or
minimizing function.
If the objective function is set up as a profit function, select Max.
If the objective function is set up as a cost function, select Min.
5 Select the profit reports to update. Normally only the active objective
function is selected.
6 Click the OK button to complete the setup.
-or-
Click the Cancel button to close the dialog box and return to the
Optimize worksheet.
If you clicked the OK button, in Step 6, the data from the optimization
spreadsheet is sent to the model, and the Command Line dialog box opens.

9 Optimization 69
You can change the behavior of the DMO solver by selecting one of the three
buttons at the bottom of the command window. The selection will take effect
at the start of the next DMO iteration.
Clicking the Abort button will force the model to quit solving.
Clicking the Close Residuals button will cause the model to close the
residuals without minimizing the objective function convergence. The
Close Residuals button is useful in cases where the objective function
very nearly reaches a maximum value but the convergence of the
objective does not close.
Clicking the No Creep button will take the DMO solver out of creep mode.
This is used to expedite solving when current run is close to the final
solution, in which case both Residual Convergence Function and Objective
Convergence Function are small and close to convergence criteria.
There is another button, Close, at the very bottom of the dialog box. This
button is deactivated during the optimization run. It is only activated when no
run is being executed. Clicking the Close button will close the dialog box and
return the Excel interface.
After the model solves the optimization, the solution values are retrieved into
the optimization page and the spreadsheet is updated. The corresponding
report page, the Optimize page, and the Simulation page are updated to
the current values in the model, but the Param page is not updated. On the
Optimize page, the values after the optimized values are placed into Column
E. If any upper or lower bound is reached, that value will be highlighted in
red.
A typical optimization will take three to five minutes, but this could be higher
or lower depending on how difficult it is to reach a solution.

70 9 Optimization
Analyzing Optimization
Solutions
There is one profit report worksheet (Profit1Report, Profit2Report,
Profit3Report) for each objective function.

The profit report worksheet is designed to show the change between the
starting point and the optimization solution. All the principal properties and
incremental properties used in the corresponding objective function are listed
in Column A of the worksheet. Each property occupies one row. The
incremental properties of a specific principal property occupy the rows below
the row of related principal property. The rates, prices, and cash flow are
listed to the right of the principal properties and incremental properties in a
profit report worksheet.
On the worksheet you can see clearly how each property contributes to the
objective function in term of case flow for both the starting point and
optimization solution. You can also observe how optimization adjusts the
values of properties to maximize the profit.
You can further analyze the optimization results by comparing the results to
engineering knowledge of Reformer operation. For instance, suppose the
Reformer unit is operated in a Gasoline Mode. You will probably assign a
high value to gasoline. You would expect to see the gasoline production to be
maximized and the riser outlet temperature is increased from its initial value.
In another case, If the Reformer unit is operated in Heating Oil Mode and
heating oil is assigned a higher value than gasoline, you would expect to see
the Reformer unit maximize heating oil production. The riser outlet
temperature may not hit the upper limit in this case. You can also examine
the Optimize worksheet to see if any independent or dependent variable is at
its limit. Normally at least one independent variable or dependent variable is
at its bound in the optimization solution. For instance, the riser temperature
or the wet gas rate may hit its upper bound in the example of Gasoline
Mode.

9 Optimization 71
10 Model Parameterization

Model Calibration Overview


Before the Aspen Plus Reformer model can be used to run predictions, you
must initialize the model to the units operating conditions. This section
describes the fundamental model specification and initialization through the
worksheet.
The general procedure for calibration of Aspen Plus Reformer consists of eight
steps as summarized below.
Step Action

1 Open The Command Screen


2 Switch to PAR mode
3 Read Data from starting file or last successful run
4 Transfer parameterization data to the solver engine
5 Initiate model solution
6 Write results to User File
7 Close Command Screen or loop back to Step 4
8 Read new model data into the Excel Interface

Calibration Steps
Calibration Step 1 - Open Command Screen
Starting from the loaded Aspen Plus Reformer model, open the command
line:
On the main menu, click AspenPlusReformer | Tools | Display
Command Line.

72 10 Model Parameterization
Calibration Step 2 - Switch to PAR mode
When the Command Line is displayed, enter the following command to switch
to the PAR mode:
INVOKE PAR_MODE <enter>
This command invokes the script file PAR_MODE.EBS that is at the end of
this section. The solver settings can be changed from the command line by
entering commands similar to the following:
SOLVER SETTINGS CREEPITER = 3 <enter>

Calibration Step 3 - Read Data from


Starting File or Last Successful Run
Enter the following command to read data from file (example used is
CCRBASE18.VAR). Note the position of the double quotation marks.
READ VARFILE [VALUE, UNITS, SPEC] FROM "CCRBASE18.VAR" <ENTER>

Calibration Step 4 - Transfer


Parameterization Data To The Solver
Engine
The command to transfer the data from your param script file
(SAMPLE_PARAM.EBS is the example in this case) into the solver engine is:
INVOKE SAMPLE_PARAM<enter>

10 Model Parameterization 73
Calibration Step 5 - Initiate model solution
Entering the command SOLVE into the command line will initiate execution of
the PARAM case.

Calibration Step 6 - Write results to a user


specified file
Upon completion of a successful execution, the command screen will show
Successful solution and Problem converged.

At this point the results are in the model engine, but have not been
transferred to the Excel Interface

Note: If the model execution was not successful, go to STEP 7.


Use the following command to overwrite the PARAM and MEAS variable
specifications in the model at the point of case termination (either successful
or unsuccessful).
INVOKE SAMPLE_UNPARAM

74 10 Model Parameterization
Use the following command to write the results of the run to a user specified
file. In this example, the file name is SAMPLE_1.VAR. Note the position of
the double quotation marks.
WRITE VARFILE [VALUE, UNITS, SPEC] TO "SAMPLE_1.VAR" <ENTER>

Calibration Step 7 - Close Command Screen


or loop back to Step 4
Calibration of Aspen Plus Reformer is a sequential process. If the process is
not complete at this point, modify the PARAM file as needed to continue, and
go back to STEP 4.
If the calibration of Aspen Plus Reformer is complete, close the Command
Screen and proceed to Step 8.

Calibration Step 8 - Read New Model Data


into the Excel Interface
To Read New Model Data Into The Excel Interface:
1 Click the Load User Data button
-or-
On the main menu, click AspenPlusReformer | File | Load User Data
from Var File.

10 Model Parameterization 75
The Load User Data from File dialog appears.

2 On the Load User Data from File dialog, use the Browse function to
find the file written in Step 6.
3 Select the correct file; then click the Open button.
The Load User Data from File dialog reappears.
4 Click the Load button. It will take a short time to load the data into the
Excel Interface.

Application Note:
When the model is opened for future operations, the old data file will be
loaded. You must do one of the following three actions to read the new data
into the model.
Rename the new data file to the original model data file name. In the
example above, the SAMPLE_1.VAR file would be renamed
CCRBASE18.VAR.
Each time the model is loaded, use the loading technique described above
to load the new data file.
Modify the PLANT.EBS script to read the new file name rather than the
original file

76 10 Model Parameterization
Recommended
PARAMETIZATION Script File
PAR_MODE.EBS file contents
set mode=par
//
Solver settings rescvg = 1.0d-10 // 2.0D-4
Solver settings objcvg = 5.0d-8 // 1.0D-3
//
Solver settings creepiter = 10
Solver settings creepflag = 1
Solver settings creepsize = 0.03
Solver settings searchmode = 2 // 1=Normal, 2=Advanced,
//3=Scaled, 0=Aggressive
Solver settings LineSearch =2 // default=3
Solver settings MinIter =3
Solver settings MaxIter =125 //50
Solver settings factorspeed = 2 // normal factorization= 1
// fast =2
Solver settings HESSIANUPDATES =5
Solver settings factorspace = 7 // default is 6
//
Solver settings adcvmeth = 5 // 0=none 1=any 2=iter 3=obj
//4= res 5=all
Solver settings adcvIter = 4
Solver settings adcvObjCvg = 5.0E-10
Solver settings adcvResCvg = 1.0E-14
set number_width=20

Detailed Explanation of the


Calibration file xxx_PARAM.ebs
Overview
The parameterization script file (referred to as xxx_PARAM.ebs is this
section) is broken into several sections for ease of use.

Base Reactor Temperature Specifications


In the first section, the reactor inlet reference temperature and deviations
from the reference temperature are specified. Also, variable specifications and
units of measure are specified as needed.

Note: The reference temperature is user specified and can be any


temperature in the general range of the average inlet temperature. The
biases are the reference temperature minus the measured reactor inlet
temperatures.

10 Model Parameterization 77
// SET REACTOR INLET TEMPS
REFCTL.BLK.REF_TEMP_SPEC.UOM = "F"
REFCTL.BLK.TEMP_BIAS_RX_1.UOM = "DELTA-F"
REFCTL.BLK.TEMP_BIAS_RX_2.UOM = "DELTA-F"
REFCTL.BLK.TEMP_BIAS_RX_3.UOM = "DELTA-F"
REFCTL.BLK.TEMP_BIAS_RX_4.UOM = "DELTA-F"
REFCTL.BLK.REF_TEMP_SPEC = 950.
REFCTL.BLK.TEMP_BIAS_RX_1 = -10.
REFCTL.BLK.TEMP_BIAS_RX_2 = -5.
REFCTL.BLK.TEMP_BIAS_RX_3 = +5.
REFCTL.BLK.TEMP_BIAS_RX_4 = +10.
The following section of the xxx_PARAM.EBS file sets the correct
temperature variable specifications for a PARAM case.
OPERCAL.BLK.WAIT.spec = CALC
REFCTL.BLK.REF_TEMP_SPEC.spec = CONST
REFCTL.BLK.TEMP_BIAS_RX_1.spec = CONST
REFCTL.BLK.RX_1_TEMPERATURE.spec = CALC
REFCTL.BLK.TEMP_BIAS_RX_2.spec = CONST
REFCTL.BLK.RX_2_TEMPERATURE.spec = CALC
REFCTL.BLK.TEMP_BIAS_RX_3.spec = CONST
REFCTL.BLK.RX_3_TEMPERATURE.spec = CALC
REFCTL.BLK.TEMP_BIAS_RX_4.spec = CONST
REFCTL.BLK.RX_4_TEMPERATURE.spec = CALC
NETCALW.BLK.SUM_AROM.spec = CALC
CCRDMO.BLK.OCTCAL_C5_RON.spec = CALC
CCRDMO.BLK.OCTSTAB_STREAM_RON.spec = CALC

Basic Unit Operation Specifications


The Hot Side Approach Temperature is the delta between the measured
last reactor outlet temperature and the measured feed temperature out of the
feed/effluent exchanger. The measured feed outlet temperature is used as
input, with the Hot Side Approach Temperature parameterized.
// HOT SIDE APPROACH TEMPERATURE
REFCTL.BLK.HOT_SIDE_APPROACH.SPEC = PARAM
REFCTL.BLK.EXCH_COLD_OUT.SPEC = MEAS
REFCTL.BLK.EXCH_COLD_OUT = 750.
The measure product separator conditions are entered in the Product
Separator section. It is recommended that the first case be run with the
Murphree efficiency and H2 purity commented out. The User should check to
insure the measured H2 purity is viable at the given operating conditions.
//Product Separator
//PSEP.BLK.PROD_MURPHREE_EFF.SPEC = PARAM
//PSEP.BLK.VAP_H2.SPEC = MEAS
//PSEP.BLK.VAP_H2 = 85.
EFFCLR.BLK.C_OUT_TEMP = 100.
REFCTL.BLK.PROD_SEP_PRESSURE.uom = psig
REFCTL.BLK.PROD_SEP_PRESSURE = 150.
The hydrogen recycle rate can be specified:
As volume flow.
As mass flow.

78 10 Model Parameterization
In terms of H2/HC molar ratio.
H2/HC molar ratio is recommended.
REC1AN.BLK.VOLUME.spec = CALC
REC1AN.BLK.MASS.spec = CALC
H2HC.BLK.TOTAL_H2HC_MOL.spec = CONST
RCMP2.BLK.OUT_MOLES.spec = CALC
H2HC.BLK.TOTAL_H2HC_MOL = 3.5
The heater efficiencies set in Aspen Plus Reformer are the radiant heater
efficiencies. These can be taken from the fired heater data sheets, or
calculated from the fire box operation.
// SET HEATER EFFICIENCIES
RXR1.RX1OPER.BLK.HEATEREFF = 0.6
RXR2.RX1OPER.BLK.HEATEREFF = 0.6
RXR3.RX1OPER.BLK.HEATEREFF = 0.6
RXR4.RX1OPER.BLK.HEATEREFF = 0.6

Specification of Reactor Delta


Temperatures, Catalyst Activity, Reactor
Loadings and Catalyst Data
The reactor delta temperatures are parameterized by setting the total reactor
temperature drop and the final reactor temperature drops to MEAS and
giving the measured values. The heat flux factors for each reactor are
parameterized.
//Reactor Delta Temperature
OPERCAL.BLK.TOTRXDELTAT.SPEC = MEAS
= MEAS
OPERCAL.BLK.TOTRXDELTAT.SPEC
= MEAS
RXR3.RX1OPER.BLK.DELTAT.SPEC
= MEAS
RXR4.RX1OPER.BLK.DELTAT.SPEC
= PARAM
RXR1.RX1.BLK.BASE_HEAT_FLUX.SPEC
= PARAM
RXR2.RX1.BLK.BASE_HEAT_FLUX.SPEC
= PARAM
RXR3.RX1.BLK.BASE_HEAT_FLUX.SPEC
= PARAM
RXR4.RX1.BLK.BASE_HEAT_FLUX.SPEC
= 300.
OPERCAL.BLK.TOTRXDELTAT
= 100.
RXR2.RX1OPER.BLK.DELTAT
= 60.
RXR3.RX1OPER.BLK.DELTAT
= 40.
RXR4.RX1OPER.BLK.DELTAT
The activity profile constants are set up by AspenTech engineers at the time
the model is delivered. The constants provided should not be changed.
// Set Activity Profile Constants
RXR1.RX1ACT.BLK.MINACTDISTINTER = 0.3
= 0.7
RXR1.RX1ACT.BLK.ACTDISTB
= 2.0
RXR1.RX1ACT.BLK.ACTDISTEXPON

10 Model Parameterization 79
Reactor weights are specified as MEAS variables and the reactor lengths are
specified. The reactor diameters parameterized to match the catalyst
weights.
//Reactor Weights
RXR1.RX1OPER.BLK.CAT_WT.SPEC = MEAS
= MEAS
RXR2.RX1OPER.BLK.CAT_WT.SPEC
= MEAS
RXR3.RX1OPER.BLK.CAT_WT.SPEC
= MEAS
RXR4.RX1OPER.BLK.CAT_WT.SPEC
= PARAM
RXR1.RX1OPER.BLK.DIA.SPEC
= PARAM
RXR2.RX1OPER.BLK.DIA.SPEC
= PARAM
RXR3.RX1OPER.BLK.DIA.SPEC
= PARAM
RXR4.RX1OPER.BLK.DIA.SPEC
= 10000.
RXR1.RX1OPER.BLK.CAT_WT
= 20000.
RXR2.RX1OPER.BLK.CAT_WT
= 30000.
RXR3.RX1OPER.BLK.CAT_WT
= 40000.
RXR4.RX1OPER.BLK.CAT_WT
Reactor Lengths are set to the actual values. Care needs to be taken to use
the correct engineering units.
// SET REACTOR LENGTHS
RXR1.RX1OPER.BLK.LENGTH.spec = CONST
= CONST
RXR2.RX1OPER.BLK.LENGTH.spec
= CONST
RXR3.RX1OPER.BLK.LENGTH.spec
= CONST
RXR4.RX1OPER.BLK.LENGTH.spec
= 10.
RXR1.RX1OPER.BLK.LENGTH
= 20.
RXR2.RX1OPER.BLK.LENGTH
= 30.
RXR3.RX1OPER.BLK.LENGTH
= 40.
RXR4.RX1OPER.BLK.LENGTH
Set the void fraction of the catalyst to 0.6 unless the exact value is known.
// SET CATALYST VOID FRACTION
RXR1.RX1OPER.BLK.VOIDFRAC.SPEC = CONST
= 0.6
RXR1.RX1OPER.BLK.VOIDFRAC
The LHSV calculation is calibrated by parameterizing the catalyst density.

Note: The catalyst density is the actual catalyst density, not the loaded
density.

// VARY VOID FRACTION TO MATCH LHSV


RXR1.RX1OPER.BLK.CAT_DENS.SPEC = PARAM
= MEAS
OPERCAL.BLK.LHSV.SPEC

80 10 Model Parameterization
= 1.5
OPERCAL.BLK.LHSV

System Pressure Specifications


//System Pressure Drops
REFCTL.BLK.RX_1_PRESSURE.SPEC = MEAS
REFCTL.BLK.RX_2_PRESSURE.SPEC = MEAS
REFCTL.BLK.RX_3_PRESSURE.SPEC = MEAS
REFCTL.BLK.RX_4_PRESSURE.SPEC = MEAS
REFCTL.BLK.CALC_COMP_DIS_P.SPEC = MEAS
REFCTL.BLK.CALC_COMP_SUC_P.SPEC = MEAS
RXR1.RX1OPER.BLK.RX_DP_FACTOR.SPEC = PARAM
RXR2.RX1OPER.BLK.RX_DP_FACTOR.SPEC = PARAM
RXR3.RX1OPER.BLK.RX_DP_FACTOR.SPEC = PARAM
RXR4.RX1OPER.BLK.RX_EFFLU_DP_FACTOR.SPEC = PARAM
REFCTL.BLK.COMP_DIS_DP_FACTOR.SPEC = PARAM
REFCTL.BLK.COMP_SUC_DP_FACTOR.SPEC = PARAM
REFCTL.BLK.RX_1_PRESSURE.UOM = PSIG
REFCTL.BLK.RX_2_PRESSURE.UOM = PSIG
REFCTL.BLK.RX_3_PRESSURE.UOM = PSIG
REFCTL.BLK.RX_4_PRESSURE.UOM = PSIG
REFCTL.BLK.CALC_COMP_DIS_P.UOM = PSIG
REFCTL.BLK.CALC_COMP_SUC_P.UOM = PSIG
REFCTL.BLK.RX_1_PRESSURE = 200.
REFCTL.BLK.RX_2_PRESSURE = 190.
REFCTL.BLK.RX_3_PRESSURE = 180.
REFCTL.BLK.RX_4_PRESSURE = 170.
REFCTL.BLK.CALC_COMP_DIS_P = 250.
REFCTL.BLK.CALC_COMP_SUC_P = 145.
The reactor pressure drops are calibrated by parameterizing the reactor DP
Factors. These are different than the system DP Factors.
RXR1.RX1.BLK.TOTAL_PRESSURE_DROP.SPEC = MEAS
RXR1.RX1.BLK.DP_FACTOR.SPEC = PARAM
RXR2.RX1.BLK.TOTAL_PRESSURE_DROP.SPEC = MEAS
RXR2.RX1.BLK.DP_FACTOR.SPEC = PARAM
RXR3.RX1.BLK.TOTAL_PRESSURE_DROP.SPEC = MEAS
RXR3.RX1.BLK.DP_FACTOR.SPEC = PARAM
RXR4.RX1.BLK.TOTAL_PRESSURE_DROP.SPEC = MEAS
RXR4.RX1.BLK.DP_FACTOR.SPEC = PARAM
RXR1.RX1.BLK.TOTAL_PRESSURE_DROP = 1.
RXR1.RX1.BLK.TOTAL_PRESSURE_DROP = 1.5
RXR1.RX1.BLK.TOTAL_PRESSURE_DROP = 2.
RXR1.RX1.BLK.TOTAL_PRESSURE_DROP = 2.5

Pinning Specifications
The Pinning correlation factors are used only for CCR units. In most
applications these will not be used.
//Pinning
//RXR1.PINNING.BLK.PIN_COEF.SPEC = PARAM
//RXR1.PINNING.BLK.PERC_PINNING.SPEC = MEAS
//RXR1.PINNING.BLK.PERC_PINNING = 1.

10 Model Parameterization 81
//RXR2.PINNING.BLK.PIN_COEF.SPEC = PARAM
//RXR2.PINNING.BLK.PERC_PINNING.SPEC = MEAS
//RXR2.PINNING.BLK.PERC_PINNING = 2.
//RXR3.PINNING.BLK.PIN_COEF.SPEC = PARAM
//RXR3.PINNING.BLK.PERC_PINNING.SPEC = MEAS
//RXR3.PINNING.BLK.PERC_PINNING = 3.
//RXR4.PINNING.BLK.PIN_COEF.SPEC = PARAM
//RXR4.PINNING.BLK.PERC_PINNING.SPEC = MEAS
//RXR4.PINNING.BLK.PERC_PINNING = 4.

Lightends Gravities
If the lightends (H2, C1, C2 and 2) gravities are left at zero value, the default
gravities are used in the CCRDMO__NETCAL_VOLUME calculations. If you
want the volume yields on an FOE basis, use the FOE gravities.
CCRDMO.BLK.NETCAL_USER_H2_SG = 0.0000000 // 0.3413
CCRDMO.BLK.NETCAL_USER_C1_SG = 0.0000000 // 0.8237
CCRDMO.BLK.NETCAL_USER_C2_SG = 0.0000000 // 0.8649
CCRDMO.BLK.NETCAL_USER_O2_SG = 0.0000000 // 0.8736

Coke Make Specification


The Coke Make Factors are the relative coking factors for different feed
stocks. The factor for Virgin Naphtha is 1. If feeds 4 and 5 are not used, the
flow rates for 4 and 5 must be set to zero in the FEEDCOKE block.
//Rate of Coke Make Factors
FEEDCOKE.BLK.COKE_1_FAC = 1.0
FEEDCOKE.BLK.COKE_2_FAC = 1.0
FEEDCOKE.BLK.COKE_3_FAC = 1.0
FEEDCOKE.BLK.FD_4_MASS = 0.0
FEEDCOKE.BLK.FD_5_MASS = 0.0
FEEDCOKE.BLK.COKE_4_FAC = 1.0
FEEDCOKE.BLK.COKE_5_FAC = 1.0
The following values are the default coke activity factors and carbon number
based frequency factor multipliers.
RXR1.RX1.BLK.COKGENRXACT_ACT = 1.0
RXR1.RX1.BLK.COKPARAF_ACT = 1.0
RXR1.RX1.BLK.COKNAPAF_ACT = 1.0
RXR1.RX1.BLK.COKAROAF_ACT = 1.0
// Multipliers for carbon numbers to Coke
RXR1.RX1.BLK.COKC6MULT = .11200
RXR1.RX1.BLK.COKC7MULT = .33500
RXR1.RX1.BLK.COKC8MULT = 1.0000
RXR1.RX1.BLK.COKC9MULT = 2.9870
RXR1.RX1.BLK.COKC10MULT = 8.9230
RXR1.RX1.BLK.COKC11MULT = 26.653
RXR1.RX1.BLK.COKC12MULT = 79.615
RXR1.RX1.BLK.COKC13MULT = 237.0
RXR1.RX1.BLK.COKC14MULT = 707.0
RXR1.RX1.BLK.COKBASEH2HC = 3.
RXR1.RX1.BLK.COKPRESCORR = -0.5
RXR1.RX1.BLK.COKH2HCCORR = -1.5

82 10 Model Parameterization
The COKRXMULT_ACT variables are set to 1 for CCR units. These are
calculated for cyclic and semi-regen reformers.
// COKRXMULT = multipliers for units with high coke make (cyclic
and semiregen)
RXR1.RX1.BLK.COKRXMULT_ACT = 1.0
RXR2.RX1.BLK.COKRXMULT_ACT = 1.0
RXR3.RX1.BLK.COKRXMULT_ACT = 1.0
RXR4.RX1.BLK.COKRXMULT_ACT = 1.0
The coke levels in each reactor in a CCR operation are parameterized using
the General Coke Activity Factor and the reactor activity factors (reactors
2 through 4). The coke levels are in units mass/time for reactors 1 through 3.
The last reactor coke is in percent coke on catalyst. Catalyst circulation rate
must be given a value.
RXR1.RX1.BLK.GENCOKEACT_ACT.SPEC = PARAM
RXR2.RX1.BLK.COKGENRXACT_ACT.SPEC = PARAM
RXR3.RX1.BLK.COKGENRXACT_ACT.SPEC = PARAM
RXR4.RX1.BLK.COKGENRXACT_ACT.SPEC = PARAM
RXR2.COKESPL.BLK.STRM_3_MASS.SPEC = MEAS
RXR3.COKESPL.BLK.STRM_3_MASS.SPEC = MEAS
RXR4.COKESPL.BLK.STRM_3_MASS.SPEC = MEAS
CCR1.BLK.R4_COC_PCT.SPEC = MEAS
RXR2.COKESPL.BLK.STRM_3_MASS = 10.
RXR3.COKESPL.BLK.STRM_3_MASS = 20.
RXR4.COKESPL.BLK.STRM_3_MASS = 30.
CCR1.BLK.R4_COC_PCT = 5.00
CCR1.BLK.CAT_CIRC_RATE_A = 123.

Octane Calibration
RON calibration is performed on the C5+ and/or the C6+ of the reactor
effluent and on the stabilizer bottoms.
//RON and RVP Factors
// C5+ RON Calibration
CCRDMO.BLK.OCTCAL_C5_RON.spec = MEAS
CCRDMO.BLK.OCTCAL_AF_C5_RON.spec = PARAM
CCRDMO.BLK.OCTCAL_C5_RON = 95.
// C6+ RON Calibration
//CCRDMO.BLK.OCTCAL_C6_RON.spec = MEAS
//CCRDMO.BLK.OCTCAL_AF_C6_RON.spec = PARAM
//CCRDMO.BLK.OCTCAL_C6_RON = 100.
// Stabilizer Bottoms RON
CCRDMO.BLK.OCTSTAB_STREAM_RON.spec = MEAS
CCRDMO.BLK.OCTSTAB_AF_STREAM_RON.spec = PARAM
CCRDMO.BLK.OCTSTAB_STREAM_RON = 98.

C5+ Yield, Hydrogen and Bulk Napthenes


Specification
The C5+ yield is calibrated by parameterizing the cracking frequency factor
against the measured C5+ yield.
//Net C5+ Yield

10 Model Parameterization 83
CCRDMO.BLK.REACT_B_MULT_LN_A_HYDCRAC.spec = PARAM
NETCALW.BLK.SUM_C5PLUS.spec = MEAS
NETCALW.BLK.SUM_C5PLUS = 80.00
The net hydrogen yield is calibrated by parameterizing the cracking frequency
factor against the measured hydrogen yield or the aromatics production.
//Net Hydrogen Production
CCRDMO.BLK.REACT_B_MULT_LN_A_DEHYDGEN.spec = PARAM
NETCALW.BLK.H2_WTPCT.spec = MEAS
NETCALW.BLK.H2_WTPCT = 3.0
//NETCALW.BLK.SUM_AROM.spec = MEAS
//NETCALW.BLK.SUM_AROM = 65.
Calibration of the naphthenes consists of parameterizing the ring closure and
ring expansion frequency factors against the measure C5 and C6 rings in the
reactor effluent.

Note: The variable NETCALW.BLK.SUM_NAP5R includes 5N5 (Cyclopentane).

// BULK NAPHTHENES PRODUCTION


CCRDMO.BLK.REACT_B_MULT_LN_A_RINGCL.SPEC = Param
NETCALW.BLK.SUM_NAP5R.SPEC = Meas
NETCALW.BLK.SUM_NAP5R = 1.0

CCRDMO.BLK.REACT_B_MULT_LN_A_RINGEXP.SPEC = Param
NETCALW.BLK.SUM_NAP6R.SPEC = Meas
NETCALW.BLK.SUM_NAP6R = 0.2
The cyclopentane (5N5) yield is adjusted up from the base operation by
parameterizing the C5 ring closure, and down by parameterizing the
reversibility. The net cyclopentane yield is the measured value.

Note: The measurement of 5N5 (cyclopentane) is subject to error. It will be


split into both the stabilizer overhead and bottoms streams in both
debutanizer and depentanizer operations. If the GC of the overhead stream
shows no 5N5, the analysis has probably lumped the 5N5 into another
compound. In this case, use the default values and keep this section
commented out as shown below.

//C5 Naphthenes Production


// User NoteUse this to decrease Cyclopentane in Reformate
// CCRDMO.BLK.REACT_C_5RINGC.spec = PARAM
// CCRDMO.BLK.NETCAL_5N5__________WTPERC.spec = MEAS
// CCRDMO.BLK.NETCAL_5N5__________WTPERC = .587

// User Note Use this to increase Cyclopentane in the Reformate


RXR1.RX1.BLK.KREV_FACT_NP5RINGC.spec = PARAM
CCRDMO.BLK.NETCAL_5N5__________WTPERC.spec = MEAS
CCRDMO.BLK.NETCAL_5N5__________WTPERC = 0.587.

84 10 Model Parameterization
C4, C5, A8 and Olefin Isomer Calibration
The C4 and C5 isomerization factors are parameterized against the measured
iC4:nC4 and ic5:nC5 equilibrium ratios.
//C4, C5 equilibrium ratios
CCRDMO.BLK.ISOMCAL_PARA_IC4.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_IC5.spec = PARAM
NETCALW.BLK.RATIO_C4IN.spec = MEAS
NETCALW.BLK.RATIO_C5IN.spec = MEAS
NETCALW.BLK.RATIO_C4IN = 1.0
NETCALW.BLK.RATIO_C5IN = 2.0
The A8 distribution factors are parameterized against the measured A8
distribution of EB, meta and ortho xylene in fractions.
// A8 distribution
NETCALW.BLK.RATIO_EBC8A.spec = MEAS
NETCALW.BLK.RATIO_MXC8A.spec = MEAS
NETCALW.BLK.RATIO_OXC8A.spec = MEAS
NETCALW.BLK.RATIO_EBC8A = 0.15
NETCALW.BLK.RATIO_MXC8A = 0.40
NETCALW.BLK.RATIO_OXC8A = 0.25
CCRDMO.BLK.ISOMCAL_PARA_EB.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_META.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_ORTHO.spec = PARAM
The olefin isomerization factors are parameterized against the measured
quantities in the net product yield.
NETCALW.BLK.OL2_WTPCT.spec = MEAS
NETCALW.BLK.O3_WTPCT.spec = MEAS
NETCALW.BLK.O4_WTPCT.spec = MEAS
NETCALW.BLK.O5_WTPCT.spec = MEAS
NETCALW.BLK.O6_WTPCT.spec = MEAS
NETCALW.BLK.O7_WTPCT.spec = MEAS
NETCALW.BLK.O8_WTPCT.spec = MEAS
NETCALW.BLK.OL2_WTPCT = 0.1
NETCALW.BLK.O3_WTPCT = 0.2
NETCALW.BLK.O4_WTPCT = 0.3
NETCALW.BLK.O5_WTPCT = 0.4
NETCALW.BLK.O6_WTPCT = 0.5
NETCALW.BLK.O7_WTPCT = 0.6
NETCALW.BLK.O8_WTPCT = 0.7
CCRDMO.BLK.ISOMCAL_PARA_O2.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O3.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O4.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O5.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O6.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O7.spec = PARAM
CCRDMO.BLK.ISOMCAL_PARA_O8.spec = PARAM

C10 Yield Calibration


C10 yields are calibrated via parameterization of the C10 reaction rates
against the measured yields.

10 Model Parameterization 85
Notes:
This requires very accurate measurement of the C10 concentrations in the
reformate.
The naphthene yield is very small and is very difficult to analyze. It is
recommended that the default values be used.
//C10 Yields
NETCALW.BLK.SUM_P10.spec = MEAS
CCRDMO.BLK.REACT_C_C10_CRACKING.spec = PARAM
NETCALW.BLK.A10_WTPCT.spec = MEAS
CCRDMO.BLK.REACT_C_10RINGC.spec = PARAM
NETCALW.BLK.SUM_P10 = 0.05
NETCALW.BLK.A10_WTPCT = 5.00

C9 Yield Calibration
C9 yields are calibrated via parameterization of the C9 reaction rates against
the measured yields.

Notes
This requires very accurate measurement of the C9 concentrations in the
reformate.
The naphthene yield is very small and is very difficult to analyze. It is
recommended that the default values be used.
//C9 Yields
NETCALW BLK.SUM_P9.spec = MEAS
CCRDMO.BLK.REACT_C_C9_CRACKING.spec = PARAM
NETCALW.BLK.A9_WTPCT.spec = MEAS
CCRDMO.BLK.REACT_C_9RINGC.spec = PARAM
NETCALW.BLK.SUM_P9 = 0.05
NETCALW.BLK.A9_WTPCT = 10.0.

C8 Yield Calibration
C8 yields are calibrated via parameterization of the C8 reaction rates against
the measured yields.

Notes:
This requires very accurate measurement of the C8 concentrations in the
reformate.
The total C8 aromatics is calibrated in this section
The naphthene yield is very small are is very difficult to analyze. It is
recommended that the default values be used.
At this point it may be necessary to include closure on the 5N8
concentration.
Do not attempt to calibrate the 6N8 concentration.
//C8 Yields
NETCALW.BLK.SUM_P8.spec = MEAS
CCRDMO.BLK.REACT_C_C8_CRACKING.spec = PARAM
NETCALW.BLK.SUM_A8.spec = MEAS

86 10 Model Parameterization
CCRDMO.BLK.REACT_C_8RINGG.spec = PARAM
NETCALW.BLK.SUM_P8 = 0.5
NETCALW.BLK.SUM_A8 = 20.00
//
//C8 5N8 Closure
//NETCALW.BLK.5N8_WTPCT.spec = MEAS
//NETCALW.BLK.5N8_WTPCT = 0.1
//CCRDMO.BLK.REACT_C_N8RINGEX.spec = PARAM

C7 Yield Calibration
C7 yields are calibrated via parameterization of the C7 reaction rates against
the measured yields.

Notes:
The C7 Paraffin is normally the only C7 calibrated.
Because of inaccuracies in laboratory data, one aromatic must be used as
a degree of freedom. Normally the best choice is Toluene.
The C7 naphthenes concentrations are very low. It is recommended that
the default values be used.
// C7 Yield
NETCALW.BLK.SUM_P7 = 2.00
NETCALW.BLK.SUM_P7.spec = MEAS
CCRDMO.BLK.REACT_C_C7_CRACKING.spec = PARAM
//
//C7 Aromatics Yield
// NETCALW.BLK.A7_WTPCT = 15.00
// NETCALW.BLK.A7_WTPCT.spec = MEAS
//CCRDMO.BLK.REACT_C_7RINGC.spec = PARAM
//
//C7 Naphthene Yield calibration variables
//NETCALW.BLK.5N7_WTPCT = 0.001
//NETCALW.BLK.5N7_WTPCT.spec = MEAS
//CCRDMO.BLK.REACT_C_7RINGC.spec = CONST //PARAM
//
//NETCALW.BLK.6N7_WTPCT = 0.002
//NETCALW.BLK.6N7_WTPCT.spec = MEAS
//CCRDMO.BLK.REACT_C_N7RINGEX.spec = PARAM

C6 Yield Calibration
C6 yields are calibrated via parameterization of the C6 reaction rates against
the measured yields.

Notes:
Because of inaccuracy of laboratory data and the material balance, either
the C5 Paraffin or the C6 Paraffin must be used as a degree of freedom
and not calibrated to measured values. Use only the C5 Paraffin closure
options or the C6 Paraffin Closure option.

10 Model Parameterization 87
The C6 paraffin closure is preferred because of the inaccuracy of the
calculated split of C5 paraffin between the stabilizer overhead and
bottoms.
In a depentanizer operation, and possibly in a debutanizer operation, MCP
(methyl cyclopentane) and CH (cyclohexane) will be in the overhead
liquid. Be careful to ensure the measured yield calculations are correct.
The calculated value of MCP is allowed to float in the problem solution as
the degree of freedom in the total naphthenes balance.
// C6 Yield Calibration
NETCALW.BLK.A6_WTPCT.spec = MEAS
CCRDMO.BLK.REACT_C_N6RINGEX.spec = PARAM
NETCALW.BLK.5N6_WTPCT.spec = MEAS
CCRDMO.BLK.REACT_C_6RINGC.spec = PARAM
NETCALW.BLK.A6_WTPCT = 5.0
NETCALW.BLK.5N6_WTPCT = 0.1
//
//C5 Paraffin Closure
//
// NETCALW.BLK.SUM_P5.spec = MEAS
// CCRDMO.BLK.REACT_C_C5_CRACKING.spec = PARAM
// NETCALW.BLK.SUM_P5 = 5.00
//
//C6 Paraffin Closure
NETCALW.BLK.SUM_P6.spec = MEAS
CCRDMO.BLK.REACT_C_C6_CRACKING.spec = PARAM
NETCALW.BLK.SUM_P6 = 7.00

Single Branched, Multi-Branched and


Normal Paraffin Isomerization Calibration
The isomerization factors for the C6+ paraffins single branched, multi-
branched, and normal paraffins are parameterized against the measured
quantities in the net product yield.

Note: Calibrating the SBP/MBP ratio and the i/n ratio may be the most
difficult part of calibrating Aspen Plus Reformer. The success in tuning these
ratios is highly dependent upon the quality of the user data. If you do not
have EXCELLENT feed and reformate isomer identification, the ratios cannot
be properly solved. WHEN IN DOUBT USE THE ASPEN PLUS REFORMER
DEFAULT VALUES.

//NETCALW.BLK.RATIO_C6PSBMB.spec = MEAS
//CCRDMO.BLK.REACT_B_MULT_LN_A_ISO_MBP.spec = PARAM
//NETCALW.BLK.RATIO_C6PIN.spec = MEAS
//CCRDMO.BLK.REACT_B_MULT_LN_A_ISO_SBP.spec = PARAM
//NETCALW.BLK.RATIO_C6PSBMB = 3.
//NETCALW.BLK.RATIO_C6PIN = 2..

C1, C2 and C3 Yield Calibration


Methane Yield

88 10 Model Parameterization
NETCALW.BLK.P1_WTPCT.spec = MEAS
CCRDMO.BLK.LTEND_C1_FACT.spec = PARAM
NETCALW.BLK.P1_WTPCT = 0.7625
Ethane Yield
NETCALW.BLK.P2_WTPCT.spec = MEAS
CCRDMO.BLK.LTEND_C2_FACT.spec = PARAM
NETCALW.BLK.P2_WTPCT = 2.1023
Propane Yield
NETCALW.BLK.P3_WTPCT.spec = MEAS
CCRDMO.BLK.LTEND_C3_FACT.spec = PARAM
NETCALW.BLK.P3_WTPCT = 3.8426

Stabilizer Tower Calibration


//Feed from Reactor Section
//STBFDSS.BLK.STRM_2_RATIO.VALUE = 0.0000001
//ALTSTBSS.BLK.STRM_3_RATIO.VALUE = 0.9999999

//Feed from Calibration Feed


//STBFDSS.BLK.STRM_2_RATIO.VALUE = 0.999999
//ALTSTBSS.BLK.STRM_3_RATIO.VALUE = 0.000001

//This section consists of two spec changes.


// First the bottoms draw rate is set to CONST
// to control the stabilizer tower and the USER_RVP
// is set to CALC. To specify the RVP
// the spec is then changed to MEAS and the RVP_BIAS
// is set to PARAM.

//--------------- DIFFERENT PAINGS FOR DIFFERENT TOWER


CALIBRATION SECTIONS
USERRVP.BLK.USER_RVP.spec = MEAS //MEAS
USERRVP.BLK.RVP_BIAS.spec = PARAM //PARAM

USERRVP.BLK.USER_RVP.UOM = "PSIA"
USERRVP.BLK.USER_RVP = 2.35

Feed Specifications
//FEED
FEED1.BLK.MASS.SPEC = CALC
FEED1.BLK.VOLUME.SPEC = CONST
FEED1.BLK.STDVOL.SPEC = CALC
FEED2.BLK.MASS.SPEC = CALC
FEED2.BLK.VOLUME.SPEC = CONST
FEED2.BLK.STDVOL.SPEC = CALC
FEED3.BLK.MASS.SPEC = CALC
FEED3.BLK.VOLUME.SPEC = CONST
FEED3.BLK.STDVOL.SPEC = CALC
//
FEED1.BLK.VOLUME = 53626.

10 Model Parameterization 89
FEED2.BLK.VOLUME = 0.001
FEED3.BLK.VOLUME = 0.001
//
FRFDWP.BLK.ANLZR_TEMP = 60.
FRFDWP.BLK.ANLZR_PRES = 500.
FRFDVP.BLK.ANLZR_TEMP = 60.
FRFDVP.BLK.ANLZR_PRES = 500.
FRFDMP.BLK.ANLZR_TEMP = 60.
FRFDMP.BLK.ANLZR_PRES = 500.
FD3VP.BLK.ANLZR_TEMP = 60.
FD3VP.BLK.ANLZR_PRES = 500.
FDANV3.BLK.ANLZR_TEMP = 60.
FDANV3.BLK.ANLZR_PRES = 500.
FDANW3.BLK.ANLZR_TEMP = 60.
FDANW3.BLK.ANLZR_PRES = 500.
// Feed 1
FEED1.BLK.MASS.SPEC = CALC
//FEED1.BLK.MASS = // LB/HR
FEED1.BLK.VOLUME.SPEC = CONST
FEED1.BLK.VOLUME = 53626.0 // BBL/DAY
//enter component data as weight fraction - should add to 1.00000
FDANW1.BLK.H2_WTPCT = 0.0
FDANW1.BLK.P1_WTPCT = 0.0
FDANW1.BLK.P2_WTPCT = 0.0
FDANW1.BLK.P3_WTPCT = 0.0
FDANW1.BLK.P4_WTPCT = 0.0
FDANW1.BLK.P5_WTPCT = 2.099
FDANW1.BLK.5N5_WTPCT = 0.270
FDANW1.BLK.MBP6_WTPCT = 0.648
FDANW1.BLK.SBP6_WTPCT = 4.693
FDANW1.BLK.NP6_WTPCT = 4.980
FDANW1.BLK.5N6_WTPCT = 2.392
FDANW1.BLK.A6_WTPCT = 0.801
FDANW1.BLK.6N6_WTPCT = 2.611
FDANW1.BLK.MBP7_WTPCT = 1.590
FDANW1.BLK.SBP7_WTPCT = 5.492
FDANW1.BLK.NP7_WTPCT = 6.272
FDANW1.BLK.5N7_WTPCT = 3.559
FDANW1.BLK.A7_WTPCT = 2.930
FDANW1.BLK.6N7_WTPCT = 6.713
FDANW1.BLK.MBP8_WTPCT = 1.796
FDANW1.BLK.SBP8_WTPCT = 5.127
FDANW1.BLK.NP8_WTPCT = 6.032
FDANW1.BLK.5N8_WTPCT = 5.985
FDANW1.BLK.A8_WTPCT = 4.418
FDANW1.BLK.6N8_WTPCT = 2.400
FDANW1.BLK.IP9_WTPCT = 5.953
FDANW1.BLK.NP9_WTPCT = 4.216
FDANW1.BLK.5N9_WTPCT = 0.227
FDANW1.BLK.A9_WTPCT = 2.851
FDANW1.BLK.6N9_WTPCT = 4.139
FDANW1.BLK.IP10_WTPCT = 6.078
FDANW1.BLK.NP10_WTPCT = 2.302
FDANW1.BLK.5N10_WTPCT = 0.000
FDANW1.BLK.A10_WTPCT = 1.836
FDANW1.BLK.6N10_WTPCT = 0.808
FDANW1.BLK.IP11_WTPCT = 0.401

90 10 Model Parameterization
FDANW1.BLK.NP11_WTPCT = 0.096
FDANW1.BLK.5N11_WTPCT = 0.285
FDANW1.BLK.A11_WTPCT = 0.0
FDANW1.BLK.6N11_WTPCT = 0.0
FDANW1.BLK.P12_WTPCT = 0.0
FDANW1.BLK.N12_WTPCT = 0.0
FDANW1.BLK.A12_WTPCT = 0.0
FDANW1.BLK.P13_WTPCT = 0.0
FDANW1.BLK.N13_WTPCT = 0.0
FDANW1.BLK.A13_WTPCT = 0.0
FDANW1.BLK.P14_WTPCT = 0.0
FDANW1.BLK.N14_WTPCT = 0.0
FDANW1.BLK.A14_WTPCT = 0.0
//
// Feed 2
FEED2.BLK.MASS.SPEC = CALC
//FEED2.BLK.MASS = // LB/HR
FEED2.BLK.VOLUME.SPEC = CONST
FEED2.BLK.VOLUME = 0.001 // BBL/DAY
//enter component data as weight fraction - should add to 1.00000
FDANW2.BLK.H2_WTPCT = 0.0
FDANW2.BLK.P1_WTPCT = 0.0
FDANW2.BLK.P2_WTPCT = 0.0
FDANW2.BLK.P3_WTPCT = 0.0
FDANW2.BLK.P4_WTPCT = 0.0
FDANW2.BLK.P5_WTPCT = 2.099
FDANW2.BLK.5N5_WTPCT = 0.270
FDANW2.BLK.MBP6_WTPCT = 0.648
FDANW2.BLK.SBP6_WTPCT = 4.693
FDANW2.BLK.NP6_WTPCT = 4.980
FDANW2.BLK.5N6_WTPCT = 2.392
FDANW2.BLK.A6_WTPCT = 0.801
FDANW2.BLK.6N6_WTPCT = 2.611
FDANW2.BLK.MBP7_WTPCT = 1.590
FDANW2.BLK.SBP7_WTPCT = 5.492
FDANW2.BLK.NP7_WTPCT = 6.272
FDANW2.BLK.5N7_WTPCT = 3.559
FDANW2.BLK.A7_WTPCT = 2.930
FDANW2.BLK.6N7_WTPCT = 6.713
FDANW2.BLK.MBP8_WTPCT = 1.796
FDANW2.BLK.SBP8_WTPCT = 5.127
FDANW2.BLK.NP8_WTPCT = 6.032
FDANW2.BLK.5N8_WTPCT = 5.985
FDANW2.BLK.A8_WTPCT = 4.418
FDANW2.BLK.6N8_WTPCT = 2.400
FDANW2.BLK.IP9_WTPCT = 5.953
FDANW2.BLK.NP9_WTPCT = 4.216
FDANW2.BLK.5N9_WTPCT = 0.227
FDANW2.BLK.A9_WTPCT = 2.851
FDANW2.BLK.6N9_WTPCT = 4.139
FDANW2.BLK.IP10_WTPCT = 6.078
FDANW2.BLK.NP10_WTPCT = 2.302
FDANW2.BLK.5N10_WTPCT = 0.000
FDANW2.BLK.A10_WTPCT = 1.836
FDANW2.BLK.6N10_WTPCT = 0.808
FDANW2.BLK.IP11_WTPCT = 0.401
FDANW2.BLK.NP11_WTPCT = 0.096

10 Model Parameterization 91
FDANW2.BLK.5N11_WTPCT = 0.285
FDANW2.BLK.A11_WTPCT = 0.0
FDANW2.BLK.6N11_WTPCT = 0.0
FDANW2.BLK.P12_WTPCT = 0.0
FDANW2.BLK.N12_WTPCT = 0.0
FDANW2.BLK.A12_WTPCT = 0.0
FDANW2.BLK.P13_WTPCT = 0.0
FDANW2.BLK.N13_WTPCT = 0.0
FDANW2.BLK.A13_WTPCT = 0.0
FDANW2.BLK.P14_WTPCT = 0.0
FDANW2.BLK.N14_WTPCT = 0.0
FDANW2.BLK.A14_WTPCT = 0.0
//
// Feed 3
FEED3.BLK.MASS.SPEC = CALC
//FEED3.BLK.MASS = // LB/HR
FEED3.BLK.VOLUME.SPEC = CONST
FEED3.BLK.VOLUME = 0.001 // BBL/DAY
//enter component data as weight fraction - should add to 1.00000
FDANW3.BLK.5N5_WTPCT = 0.270
FDANW3.BLK.MBP6_WTPCT = 0.648
FDANW3.BLK.SBP6_WTPCT = 4.693
FDANW3.BLK.NP6_WTPCT = 4.980
FDANW3.BLK.5N6_WTPCT = 2.392
FDANW3.BLK.A6_WTPCT = 0.801
FDANW3.BLK.6N6_WTPCT = 2.611
FDANW3.BLK.MBP7_WTPCT = 1.590
FDANW3.BLK.SBP7_WTPCT = 5.492
FDANW3.BLK.NP7_WTPCT = 6.272
FDANW3.BLK.5N7_WTPCT = 3.559
FDANW3.BLK.A7_WTPCT = 2.930
FDANW3.BLK.6N7_WTPCT = 6.713
FDANW3.BLK.MBP8_WTPCT = 1.796
FDANW3.BLK.SBP8_WTPCT = 5.127
FDANW3.BLK.NP8_WTPCT = 6.032
FDANW3.BLK.5N8_WTPCT = 5.985
FDANW3.BLK.A8_WTPCT = 4.418
FDANW3.BLK.6N8_WTPCT = 2.400
FDANW3.BLK.IP9_WTPCT = 5.953
FDANW3.BLK.NP9_WTPCT = 4.216
FDANW3.BLK.5N9_WTPCT = 0.227
FDANW3.BLK.A9_WTPCT = 2.851
FDANW3.BLK.6N9_WTPCT = 4.139
FDANW3.BLK.IP10_WTPCT = 6.078
FDANW3.BLK.NP10_WTPCT = 2.302
FDANW3.BLK.5N10_WTPCT = 0.000
FDANW3.BLK.A10_WTPCT = 1.836
FDANW3.BLK.6N10_WTPCT = 0.808
FDANW3.BLK.IP11_WTPCT = 0.401
FDANW3.BLK.NP11_WTPCT = 0.096
FDANW3.BLK.5N11_WTPCT = 0.285
FDANW3.BLK.A11_WTPCT = 0.0
FDANW3.BLK.6N11_WTPCT = 0.0
FDANW3.BLK.P12_WTPCT = 0.0
FDANW3.BLK.N12_WTPCT = 0.0
FDANW3.BLK.A12_WTPCT = 0.0
FDANW3.BLK.P13_WTPCT = 0.0

92 10 Model Parameterization
FDANW3.BLK.N13_WTPCT = 0.0
FDANW3.BLK.A13_WTPCT = 0.0
FDANW3.BLK.P14_WTPCT = 0.0
FDANW3.BLK.N14_WTPCT = 0.0
FDANW3.BLK.A14_WTPCT = 0.0

Tube Skin Temperature Input Data


CCRDMO.BLK.HT1TST_TUBE_ID.uom ="FT"
CCRDMO.BLK.HT1TST_TUBE_OD.uom ="FT"
CCRDMO.BLK.HT1TST_TUBE_SPACING.uom ="FT"
//CCRDMO.BLK.HT1TST_FLUE_GAS_T ="F"
CCRDMO.BLK.HT1TST_BRIDGE_T.uom ="F"
CCRDMO.BLK.HT1TST_DELTA_T.uom ="DELTA-F"
CCRDMO.BLK.HT1TST_TUBE_LENGTH.uom ="FT"
CCRDMO.BLK.HT1TST_TUBE_U_RADIUS.uom ="FT"
CCRDMO.BLK.HT1TST_THERMAL_COND_METAL.uom ="BTU-FT/HR-SQFT-R"
CCRDMO.BLK.HT1TST_NUM_TUBES = 52.
// Really Radius for ID and OD
CCRDMO.BLK.HT1TST_TUBE_ID = 0.16775
CCRDMO.BLK.HT1TST_TUBE_OD = 0.1875
CCRDMO.BLK.HT1TST_TUBE_SPACING = 0.75
CCRDMO.BLK.HT1TST_TUBE_CFG = 4.0
// Use 1/2 of Tube length on fired heater data sheets
CCRDMO.BLK.HT1TST_TUBE_LENGTH = 66.27
CCRDMO.BLK.HT1TST_TUBE_U_RADIUS = 0.375
CCRDMO.BLK.HT1TST_THERMAL_COND_METAL = 188.0
//
//Update of CCRDMO.BLK.HT1TST_TUBE_METAL_T_OUTLET after Rx 4 data
//
// Rx 2
CCRDMO.BLK.HT2TST_TUBE_ID.uom ="FT"
CCRDMO.BLK.HT2TST_TUBE_OD.uom ="FT"
CCRDMO.BLK.HT2TST_TUBE_SPACING.uom ="FT"
//CCRDMO.BLK.HT2TST_FLUE_GAS_T ="F"
CCRDMO.BLK.HT2TST_BRIDGE_T.uom ="F"
CCRDMO.BLK.HT2TST_DELTA_T.uom ="DELTA-F"
CCRDMO.BLK.HT2TST_TUBE_LENGTH.uom ="FT"
CCRDMO.BLK.HT2TST_TUBE_U_RADIUS.uom ="FT"
CCRDMO.BLK.HT2TST_THERMAL_COND_METAL.uom ="BTU-FT/HR-SQFT-R"
CCRDMO.BLK.HT2TST_NUM_TUBES = 52.
// Really Radius for ID and OD
CCRDMO.BLK.HT1TST_TUBE_ID = 0.16775
CCRDMO.BLK.HT1TST_TUBE_OD = 0.1875
CCRDMO.BLK.HT2TST_TUBE_SPACING = 0.75
CCRDMO.BLK.HT2TST_TUBE_CFG = 4.0
CCRDMO.BLK.HT2TST_TUBE_LENGTH = 88.27
CCRDMO.BLK.HT2TST_TUBE_U_RADIUS = 0.375
CCRDMO.BLK.HT2TST_THERMAL_COND_METAL = 188.0
//
//Update of CCRDMO.BLK.HT2TST_TUBE_METAL_T_OUTLET after Rx 4 data
//

// Rx 3
CCRDMO.BLK.HT3TST_TUBE_ID.uom ="FT"
CCRDMO.BLK.HT3TST_TUBE_OD.uom ="FT"

10 Model Parameterization 93
CCRDMO.BLK.HT3TST_TUBE_SPACING.uom ="FT"
//CCRDMO.BLK.HT3TST_FLUE_GAS_T ="F"
CCRDMO.BLK.HT3TST_BRIDGE_T.uom ="F"
CCRDMO.BLK.HT3TST_DELTA_T.uom ="DELTA-F"
CCRDMO.BLK.HT3TST_TUBE_LENGTH.uom ="FT"
CCRDMO.BLK.HT3TST_TUBE_U_RADIUS.uom ="FT"
CCRDMO.BLK.HT3TST_THERMAL_COND_METAL.uom ="BTU-FT/HR-SQFT-R"
CCRDMO.BLK.HT3TST_NUM_TUBES = 52.
// Really Radius for ID and OD
CCRDMO.BLK.HT1TST_TUBE_ID = 0.16775
CCRDMO.BLK.HT1TST_TUBE_OD = 0.1875
CCRDMO.BLK.HT3TST_TUBE_SPACING = 0.75
CCRDMO.BLK.HT3TST_TUBE_CFG = 4.0
CCRDMO.BLK.HT3TST_TUBE_LENGTH = 56.27
CCRDMO.BLK.HT3TST_TUBE_U_RADIUS = 0.375
CCRDMO.BLK.HT3TST_THERMAL_COND_METAL = 188.0
//
//Update of CCRDMO.BLK.HT3TST_TUBE_METAL_T_OUTLET after Rx 4 data
//

// Rx 4
CCRDMO.BLK.HT4TST_TUBE_ID.uom ="FT"
CCRDMO.BLK.HT4TST_TUBE_OD.uom ="FT"
CCRDMO.BLK.HT4TST_TUBE_SPACING.uom ="FT"
//CCRDMO.BLK.HT4TST_FLUE_GAS_T ="F"
CCRDMO.BLK.HT4TST_BRIDGE_T.uom ="F"
CCRDMO.BLK.HT4TST_DELTA_T.uom ="DELTA-F"
CCRDMO.BLK.HT4TST_TUBE_LENGTH.uom ="FT"
CCRDMO.BLK.HT4TST_TUBE_U_RADIUS.uom ="FT"
CCRDMO.BLK.HT4TST_THERMAL_COND_METAL.uom ="BTU-FT/HR-SQFT-R"
CCRDMO.BLK.HT4TST_NUM_TUBES = 52.
// Really Radius for ID and OD
CCRDMO.BLK.HT1TST_TUBE_ID = 0.16775
CCRDMO.BLK.HT1TST_TUBE_OD = 0.1875
CCRDMO.BLK.HT4TST_TUBE_SPACING = 0.75
CCRDMO.BLK.HT4TST_TUBE_CFG = 4.0
CCRDMO.BLK.HT4TST_TUBE_LENGTH = 56.27
CCRDMO.BLK.HT4TST_TUBE_U_RADIUS = 0.375
CCRDMO.BLK.HT4TST_THERMAL_COND_METAL = 188.0

// Set UOM
CCRDMO.BLK.HT1TST_TUBE_METAL_T_OUTLET.UOM = "F"
CCRDMO.BLK.HT2TST_TUBE_METAL_T_OUTLET.UOM = "F"
CCRDMO.BLK.HT3TST_TUBE_METAL_T_OUTLET.UOM = "F"
CCRDMO.BLK.HT4TST_TUBE_METAL_T_OUTLET.UOM = "F"

Error Recovery
Error Recovery - Overview
You should check the convergence status shown at the top of the param
sheet after running the parameter case. The results on the param and
analysis sheets are only meaningful if the convergence status is converged.

94 10 Model Parameterization
If the status is not converged, then it is generally desirable to return the
param sheet and model to their pre-solution states.

To Return The Param Sheet And Model To Their Pre-


Solution States:
1 Restore the model to a converged parameter case: AspenPlusReformer
| File | Load User Data from Var File.
If this is your first attempt at running a param case, then load
user_default.var or the .var file created by AspenTech for your site.
If you have converged parameter cases for your unit, then load the
corresponding .var file that most closely represents the process conditions
and input data for the new parameter case.
2 Examine the input data as compared with the base parameter case.
Convergence failure for the parameter case typically has one of three
basic causes:
Poor or erroneous data were entered as input. For example:
o Check that physically realistic property data were entered for all feeds
and products.
o Check that physically realistic reactor data were entered for all
reactors.
o Check to see that the pressures in the system are correct.
o Check that physically realistic process data were entered. For
example, the recycle rate.
Some of the input data violate valid ranges. Such restrictions are a
consequence of the equation-based manner in which the model has been
formulated Observe the following guidelines when entering data:
o Do not set any stream rate to zero. For zero flow rates, use a very
small number instead (e.g. 0.1 BBL/D).
o Do not specify more moles of a C6+ component than are in the feed
The solver parameters are too "aggressive" for the data entered. For
example, a large change in feed rate (greater than 15%) may require
more conservative solver parameters.

10 Model Parameterization 95
11 Working With Equation
Oriented Model Solver

Introduction
When you click the solve button, Aspen Plus Reformer submits the
mathematical formulation of the problem to the DMO solver, which is a
equation oriented (EO) model solver via the kernel.
If the solution is successful:
The kernel command window closes.
The results of the solution are returned to the Excel GUI.
The status indicators will change to Ready and Converged.
If the solver fails:
The status indicators show Ready and Not Converged.
You must perform some troubleshooting to determine the cause of the
failure.
The following topics discuss the basics of the solver technology and the error
messages issued by the solver when certain types of errors occur.

Successive Quadratic
Programming (SQP)
The DMO solver is a specific implementation of the general class of nonlinear
optimization algorithms known as Successive Quadratic Programming (SQP),
which perform the optimization by solving a sequence of quadratic
programming subproblems. The general optimization problem that DMO
solves can be expressed as follows:
Minimize f(x)
Subject to c(x) = 0
xmin x xmax
Where:
x Rn Vector of unknown variables

96 11 Working With Equation Oriented Model Solver


f(x) R1 Objective function
c(x) Rm Vector of constraint equations
xmin Rn Vector of lower bounds on x
xmax Rn Vector of upper bounds on x
A simplified description of the DMO algorithm is outlined as follows:
1 Given an initial estimate of the solution vector, x0.
2 Set iteration counter, k = 0.
3 Evaluate derivative of the objective function, gradient, and the derivative
of the constraints, Jacobian.
4 Initialize or update an approximation of the second derivative matrix, or
Hessian, of the Lagrange function. The Lagrange function, f(x) + ici,
accounts for constraints through weighting factors i, often called
Lagrange multipliers or shadow prices.
5 Solve a quadratic programming subproblem to determine a search
direction, dk. In the quadratic programming subproblem, the objective
function is replaced by a quadratic approximation, constraints are
linearized, and bounds are included.
6 Check for convergence or failure. If the optimization convergence criteria
are satisfied, or if the maximum number of allowed iterations, MAXITER,
is reached, then end. Convergence is achieved when:
Objective function gradient OBJCVG
Scaled or unscaled constraint residuals RESCVG
7 Perform a one-dimensional search to determine a search step k so that
xk+kdk is a better approximation of the solution as measured by a line
search or merit function. The reduction of merit function requirement is
sometimes relaxed to achieve a full correction step.
8 Update iteration counter, k = k + 1, and loop back to step 3.

Changing EO Solver Parameters


Parameters for the solver can be changed with script commands. Enter
commands at the kernel command prompt or on the EB scripts sheet in the
Excel GUI.
The script language for a parameter change is:
Solver Settings parameter = value
The parameters are discussed in the following sections. As an example, the
following commands:
= 10
Solver Settings
MAXITER
= 1.0D-
Solver Settings RESCVG
5
change the maximum number of iterations to 10 and the residual
convergence tolerance to 1.0d- 5. This input would apply for all modes.

11 Working With Equation Oriented Model Solver 97


Basic DMO Parameters
Here are the most commonly used DMO parameters for Aspen Plus Reformer:
Parameter Definition Default

MAXITER Maximum number of SQP iterations allowed 50


MINITER Minimum number of SQP iterations allowed 0
CREEPFLAG Flag for the creep mode. This mode makes the
optimizer moves more conservative. It is very helpful
when the problem diverges.
0 No (default)
1 Yes
CREEPITER Number of iterations to perform creep mode 10
CREEPSIZE Creep mode step size. This is the fraction of the full 0.1
step to be taken when in creep mode.
RESCVG Residual convergence tolerance 1.0D-6
OBJCVG Objective function convergence tolerance 1.0D-6

DMO Solver Output to the


Command Window
During each solution, the following iteration log is sent to the command
window:

Title Description

Iteration the count of SQP iterations (QP subproblems)


performed by the solver. There is one line of
output for each normal iteration of the solver.
Abnormal iterations may have additional lines for
error or information messages.

98 11 Working With Equation Oriented Model Solver


Title Description

Residual Convergence indicates the solvers progress towards solution, in


Function terms of feasibility of the residuals. The problem
does not converge until this measure gets below
the DMO rescvg value defined in the EB script for
that solution mode.
Objective Convergence a measure of the solvers progress towards
Function solution in terms of optimality of the objective
function. This is only meaningful in modes with
degrees-of-freedom, which for Aspen Plus
Reformer is only the optimization mode. The
problem does not converge until this measure gets
below the DMO objcvg value defined in the EB
script for that solution mode.
Objective Function Value refers to the Jacobian of the objective function
Nonlinearity Ratio a measure of the nonlinearity of the problem. The
closer the value is to one, the more linear the
problem. A negative value indicates that the
problem behaved in the opposite of what was
expected. Near the solution, as the step sizes
become small, this value becomes close to one.
There are two nonlinearity ratios Overall and
Model. Because Aspen Plus Reformer consists of
only one model (as far as the solver is concerned),
those two measures are the same.

The last section of the output shows the execution times for the various parts
of the problem.
In this example, we can see that convergence was achieved when the residual
and objective convergence functions were less than their respective
tolerances at iteration 3.
From this output, we also see that there have been no line searches. Thus the
step size for each iteration is one. When a line search is performed for an
iteration, a message will appear:
<Line Search ACTIVE> ==> Step taken 3.26D-01
If the solver has to line search continually and the step size gets very small
(less than 1.0D-2), most likely the solution is trying to move very far from the
starting point or some of the specified values are nearly infeasible.

DMO Solver Log Files


Aspen Plus Reformer outputs DMO solver information to two log files with
extensions ATSLV and ATACT. The file name is the same as the model name.
These files reside in the working directory you defined in the startup menu
box.
The ATACT file is similar to the ATSLV file, but lists all the problem variables
and independent variables, whereas the ATSLV file does not. The ATSLV file is
typically more useful.

11 Working With Equation Oriented Model Solver 99


ATSLV File Problem
Information
At the top of the ATSLV file, a summary of the problem is printed. This shows
the size of the problem and the values of some important parameters.

Basic Iteration Information


At each iteration, the following header is printed:

This shows the iteration number and the value of the objective function.

Largest Unscaled Residuals


This section shows the largest unscaled residuals. A similar section shows the
largest scaled residuals. This section is particularly helpful when the solver
has trouble closing all the residuals, because it will point to the largest.

100 11 Working With Equation Oriented Model Solver


Constrained Variables
This section shows the variables that lie on their bounds. This is only
meaningful in a degrees of freedom mode (optimization for Aspen Plus
Reformer).
The output shows:
The variable number.
Which bound is active.
The variable name.
The current value.
The shadow price.
The shadow price is also known as the Lagrange multiplier. This is the
derivative of the objective function with respect to the value of the constraint
and represents the cost for the constraint.

The shadow price is based on the value of the objective function that is seen
by DMO. That means the shadow price is in SI units (such as $/sec) and is
affected by any scaling. This is true even if you declare the units to be
something other than SI (such as $/HR).
Consider this example. We have a tower with a composition constraint,
expressed as a mole fraction of a component. The following table shows the
results of two optimization runs at two different values of the composition
constraint:
Value Objective Shadow Price

0.0002 2.853 432.924


0.0003 2.893 258.664

The large change in the shadow price indicates that the effect of the
composition on the objective function is very nonlinear. We can manually
estimate the average shadow price in this region by a finite difference
method:
Price = Obj/x = ( 2.893-2.853 ) / ( 0.0003 - 0.0002 ) =
400.00 $/sec/mole fraction

11 Working With Equation Oriented Model Solver 101


This value lies between the two prices.
If the objective function had a scale factor of 100, we would get the following:
Value Objective Shadow Price

0.0002 285.4 43290.7


0.0003 289.3 25860.2

We would have to remember to unscale the shadow price by dividing by 100.

General Iteration Information


This section appears after the residual output:

The iteration status shows the exit condition of that iteration.


Iteration Status Indicates

Normal a normal successful iteration


Warning a successful iteration despite some solver difficulties
Error a failure
Solved the final iteration of a successfully solved problem

The degrees of freedom is the number of declared independent variables in


the problem. The constrained variables are those at bounds in the QP
subproblem. The current degrees of freedom is the degrees of freedom less
the constrained variables. This is the true degrees of freedom for the
problem. A highly constrained solution is one that has very few current
degrees of freedom.
The number of function and Jacobian evaluations is an accumulative count
and generally matches the number of iterations.
The objective function convergence function is the norm of the Jacobian for
the objective function. At the solution, this value should be near zero.
The residual convergence function is the sum of the scaled residuals. At the
solution, this value should be near zero.

Nonlinearity Ratios
This section shows the nonlinearity ratio of:
The worst block.
The objective function.
The worst equations.

102 11 Working With Equation Oriented Model Solver


The criterion is the accuracy of the predicted change in the equation. If the
function is linear, then the new value would match the predicted value and
the nonlinearity ratio would be one.
A value of the ratio other than one indicates some degree of nonlinearity.
A negative value indicates that the function value moved in the opposite of
the expected direction.
Large negative values could indicate a discontinuity or bad derivative.
This section also shows the step size for the iteration.

Troubleshooting
Usage Notes
This section describes some troubleshooting tips to improve the performance
of the solver and to help diagnose common problems.

Dealing With Infeasible Solutions


These often occur during optimization cases where it is not possible to
simultaneously solve all the equations while respecting all the variable
bounds. This doesn't happen in simulation cases because DMO ignores
bounds in simulation cases. If you solve a simulation case that violates a
bound, then the optimization case will start at an infeasible point. In this
case, the following is printed in the OUT file:

This says that this variable's value had to be adjusted to respect the bound.
When the optimization proceeds and there is no feasible solution for the
equality constraints, the screen output might look like this:

11 Working With Equation Oriented Model Solver 103


Note: The messages from the QP indicating an invalid value for a slack
variable.
To solve this problem, you need to be aware of the initial message indicating
that the initial value of a variable violated its bound. In this case,
C2S.SPC.REFL_RATIO_MASS is causing the problems. Unfortunately, the
OUT file does not list this variable as constrained, since it could never solve
the QP successfully.

104 11 Working With Equation Oriented Model Solver


Scaling
Generally, it is not necessary to scale your equations or variables beyond
what is done by default in the models. However, it may be more efficient to
scale your objective function. A good rule of thumb is to scale the objective
function so that its value is on the order of 10 to 1000. The scaling of the
objective function plays an important role since it affects the overall
convergence behavior. This is particularly important in cases where there is a
large change between the original value of the objective and the expected
optimum.

Dealing with Singularities


Singularities often occur when the model is moved into a region where the
equations are not well defined. The most common example of this is when a
stream flow becomes too small. If singularities exist, they are usually
detected at the start of the problem. In this case, some information is written
to the OUT file and this can help locate the cause of the problem. In general,
you should prevent stream flows from going near zero by placing nonzero
lower bounds on the flow (for example, 10 kg/hr). This is especially important
on streams from flow splitters or feed streams whose total flow is being
manipulated. In the case of a singularity the following message will be
displayed:

The OUT file contains information on the possible cause of the singularity in
the following manner:

11 Working With Equation Oriented Model Solver 105


Sometimes, singularities are simply caused by the optimization being too
aggressive. This moves the models into a region where the equations are not
well defined. To make the optimization more robust, DMO has a creep mode.
This mode simply causes smaller steps to be taken for a specified number of
iterations. To use this mode, you can enter the following script command:

This turns on the creep mode. When active, the following message is
displayed at each iteration:

By default, this will operate for 10 iterations with a step size of 0.1. You can
change these values with the commands:

In this example, we change the number of creep iterations to 20 and the step
size to 0.5.

106 11 Working With Equation Oriented Model Solver


Notes on Variable Bounding
Remember that by default DMO does not respect bounds during the solution
of a SIM or PAR case. However, you can impose bounds in a square case by
using a different line search parameter. The use of this mode is recommended
only in cases where there are truly multiple solutions to a model (for
example, the cubic equation) and you want to use a bound to eliminate an
unwanted one.
To use this mode, you can enter the following script command:
DMO LINESEARCH = 4
In general it is not recommended to heavily bound an optimization problem
for reasons that are both practical and algorithmic. Bounds on independent
variables are recommended in order to avoid unbounded problems. All other
bounds should be used only if they are absolutely necessary. Finally,
redundant bounds should be avoided.

Run-Time Intervention
During long runs, it is possible to change the behavior of the DMO solver. This
is done by selecting one of the three buttons at the bottom of the command
window. The selection will take effect at the start of the next DMO iteration.
The three buttons are:
Button Action

ABORT This option stops the solver.


CLOSE This option fixes all the independent variables at their current
values and closes the residuals.
NOCREEP This option takes DMO out of creep mode.

11 Working With Equation Oriented Model Solver 107


12 Aspen Plus Reformer
Application Model

Overview
Aspen Plus Reformer is an application of the reactor modeling technology of
Aspen Plus applied to the catalytic reforming process. The reactor models
have been configured with reforming kinetics to present a complete process
model.

General Model Overview


The general model overview presents a general description of the oil flow in
the REFORMER model developed for the REFORMER Demonstration Model. All
models are not represented on this drawing.

108 12 Aspen Plus Reformer Application Model


Three feed models are provided to allow varying feed rates and compositions
to be feed into the reactor section. All feeds are specified on a composition
basis.
The reactor/heaters are hierarchy blocks consisting of several models to
handle the reaction kinetics, catalyst deactivation, unit operation calculations
and heater modeling.
The feed effluent exchanger is modeled as a simple hot side approach
exchanger, which closely replicates the performance of both the vertical and
plate exchangers in common use.

Reaction Kinetics
Reaction Paths
The reaction paths used for C6 through C8 are shown in the following
diagram. As the carbon number increases beyond 8, the complexity of the
paths is reduced.

Reaction Kinetic Expressions


The reactions in Aspen Plus Reformer follow basic reaction kinetic
expressions:
Basic first order rate expression:

12 Aspen Plus Reformer Application Model 109


Rate(f) = Kf * Ca
Basic first order rate expression with Arrhenius expression and activity term:
Kf = A*e**(-E/RT)
Rate(f) = Act * A*e**(-E/RT) * Ca
Basic equilibrium expression:
K = Kf / Kr
Basic first order equilibrium expression:
Rate(e)=Act*[(A*e**(-E/RT))*(1-1/Gf)]*Ca
Eight fundamental reaction types are used in Aspen Plus Reformer:
Reaction Type Application

Isomerization 1
Ring Close/Open 2
Ring Expansion 3
Dehydrogenation 4
Hydrogenolysis 5
Hydrocracking 6
Hydrodealkylation 7
Polymerization 8

The Application reference number refers to the reactions specified in the


REACTORSplus configuration file used in Aspen Plus Reformer.
Examples:
Isomerization NP6 SBP6

Ring Close/Open NP6 MCP

Ring Expansion MCP CH

Dehydrogenation CH A6

Hydrogenolysis MCH + H2 => CH =CH4

Hydrocracking C5 + H2 => C2H6 + C3H8

Hydrodealkylation A7 + H2 => A6 + CH4

Polymerization A7 + C5 => A12 + H2

Catalyst Activity and Catalyst Calibration


During the calibration procedure, the catalyst is assumed to be at a defined
equilibrium coke deposition (4.3 Wt. % Coke on Catalyst for example.) The
reaction kinetic rate terms are tweaked from the default values slightly to get
the model to match the actual catalyst performance. This is done using a
series of models:
REACT_A
REACT_B
REACT_C

110 12 Aspen Plus Reformer Application Model


REACT_A Base Reaction Rate Mechanisms
REACT_B User Modifications to e**(-E/R) Reaction Type Multipliers
REACT_C User Rate Multipliers Carbon Number Multipliers
Then during the subsequent cases, the catalyst activity is adjusted to match
the user-defined coke on catalyst using model CATACT.
The interaction is shown below.

Aspen Plus Reformer Feed Definition and


Product Definition
The feed definition to Aspen Plus Reformer is slightly different than the
product definition to minimize execution time. Various isomerization
calculations are handled outside the reactor blocks because of their heavy
dependence upon conditions in the last reactor. From a stream composition
standpoint, Aspen Plus Reformer is divided into two sections:
A Feed/Reactor section.
A Separator section.
with mapping blocks between the sections.
The diagrams below show how the sections are divided and connected.

12 Aspen Plus Reformer Application Model 111


Component Mapp
pping Diagram

Paraffin For C6 through C8, the paraffins are divided intoto three
t
Definitions types normal, single branched iso paraffin (SBP)
BP) and a
multi-branched iso-paraffin (MBP). From C9 throurough C11,
the iso paraffins are all represented by a single lumped
lump
iso-paraffin. The C12 through C14 paraffins are allal lumped
as a single paraffin.
Olefins The C2 through C8 olefins are denoted by a lumpe
mped
carbon number representation.
Naphthenes The naphthenes are represented as either a C5 ringed
rin
molecule with an alkyl group or a C6 ring with an alkyl
group.
Aromatics The aromatics are represented with a saturated C6
C ring
with an alkyl group.
Feed / Productt De
Definition Differences

Carbon Number Type Feed Product

28 Olefins None Lump by carbo


rbon number
4 Paraffin Lump P4 IP4 and nP4
5 Paraffin Lump P5 IP5 and nP5
8 Aromatic Lump A8 EB, P-X, M-X O-X
O

Calculatio
tion Blocks
Blocks are include
uded to calculate the following calculations cons
nsistent with
conventional cata
atalytic reforming process engineering.
Reactor Sectio
ction
Heaters
Stabilizer
Reformate Pro
Properties

Reactor Sec
Section
WAIT
WABT
LHSV
WHSV
H2:HC Ratio molar
Regeneratorr A
Air Rate
Pinning

112 12 Aspen Plus Reformer


er Application Model
Heaters
Absorbed duties
Fired duties
Tubeskin temperatures

Stabilizer
Condenser Duty
Reboiler Duty
Tray to tray liquid and vapor rates
Temperature and pressure profiles
Component recoveries in the overhead for:
o IC4
o NC4
o IC5
o NC5
o NC6
o Benzene

Reformate Properties
C5+ RON
C5+ MON
C6+ RON
C6+ MON
Stabilizer Bottoms RON
Stabilizer Bottoms MON
RVP

System Pressure Control


The pressure points through the system are all based upon a single specified
pressure. Typically this is the product separator pressure, but it can be the
third reactor pressure, for example, with a simple variable specification
swap. Aspen Plus Reformer uses a modified Bernoulli equation to calculate the
following pressure drops based upon the base case pressure drops and
flowing conditions and the users specified flowing conditions:
Product Separator to Last Reactor Outlet
Last Reactor Outlet to Last Reactor Inlet
Last Reactor Inlet Pressure to Reactor(i) Inlet PressurReactor(i) Inlet
Pressure to Reactor(i+1) Inlet Pressure
First Reactor Inlet Pressure to Compressor Discharge

12 Aspen Plus Reformer Application Model 113


Catalyst Activity and Pressure Effects
Catalyst activity is divided into a metals activity and an acid activity. These
activities affect the reaction mechanisms as shown in the Feed/Effects of
Activity and Pressure on Reaction Mechanisms table below. This table
also shows those reaction mechanisms that are affected by pressure changes.
Feed/Effects of Activity and Pressure on Reaction Mechanisms

Reaction Type Acid Metal Pressure Multiplier

Isomerization
Ring Closure/Open
Ring Expansion
Dehydrogenation
Hydrogenolysis - Para
Hydrogenolysis - Naph
Hydrocracking
Hydrodealkylation
Polymerization

The acid and metals activities are independent functions of carbon on catalyst
expressed as percent. The general form for both the acid and metals
functions is:
Activity = Intercept + Poly1*COC + Poly2*COC^2 + Poly3*COC^3 +
Poly4*COC^4
The model variables are:
RXR(i).RX1ACT.BLK.METALACTR
RXR(i).RX1ACT.BLK.ACIDDEACTINTER
RXR(i).RX1ACT.BLK.ACIDDEACTPOLY1
RXR(i).RX1ACT.BLK.ACIDDEACTPOLY2
RXR(i).RX1ACT.BLK.ACIDDEACTPOLY3
RXR(i).RX1ACT.BLK.ACIDDEACTPOLY4
RXR(i).RX1ACT.BLK.METDEACTINTER
RXR(i).RX1ACT.BLK.METDEACTPOLY1
RXR(i).RX1ACT.BLK.METDEACTPOLY2
RXR(i).RX1ACT.BLK.METDEACTPOLY3
RXR(i).RX1ACT.BLK.METDEACTPOLY4

Coke Make
Reformer catalyst is a bifunctional catalyst, and the catalyst activity definition
used in modeling must include separate terms for the metals and acid
functions. The activity of the catalyst in a reformer is a function of several
factors, among which are:
1 Coke laydown on the catalyst
2 Water/Chloride environment
3 Temporary poisons such as sulfur
4 Permanent poisons such as lead, zinc, and copper
5 Catalyst surface area
6 Platinum crystal size

114 12 Aspen Plus Reformer Application Model


7 Sintering
8 Shift from gamma alumina to alpha alumina
9 Catalyst breakage
Items 5 through 9 are basically mechanical changes in the catalyst which
occur primarily during catalyst regeneration. These mechanical changes in the
catalyst that affect activity can only be accounted for through direct analysis
of the catalyst, or indirectly from measurement of plant operation.
Fortunately, to predict reformer operation on an on-going basis, these
changes can be lumped together in the deactivation model and thus do not
create a problem in the reaction modeling.
Permanent catalyst poisons such as those listed in number 4 above are
normally very gradual. They can be handled with routine activity model
updates, using the same lump mechanism used for items 5 through 9. When
a significant quantity of permanent poison is deposited on the catalyst over a
short period of time, the deactivation model will need to be updated from
plant operating data. (This is true assuming the unit will remain in service. In
most cases where a significant quantity of a permanent poison is deposited on
the catalyst, the reformer is taken off line and the catalyst replaced.)
The changes in catalyst performance due to the factors listed in numbers 4
through 9 require the Aspen Plus Reformer model to be updated after each
catalyst regeneration of semi-regenerative units, and every 6 to 12 months
for cyclic and continuous catalyst circulation units.
Temporary sulfur poisoning will need to be addressed in the Aspen Plus
Reformer deactivation model. The difficult aspect of this is determining how
much of a change in catalyst activity is due to the temporary poison and how
much is due to another mechanism. Once the quantity of sulfur is known, the
prediction of activity recovery is very straight forward.
Although the effect of reforming environment (water/chloride management)
will eventually need to be addressed in Aspen Plus Reformer, water and
chloride management does not need to be included in the initial offering of
Aspen Plus Reformer. Initially, one assumes that the operating companies will
strive to maintain a consistent reforming environment. Adding water/chloride
management to Aspen Plus Reformer is going to be a significant development
effort. A catalyst manufacturer will probably need to be involved as a
technology sponsor.
The effect of coke laydown on activity creates two areas of major concern:
The actual prediction of coke laydown,
Estimating the impact of coke deposition on catalyst activity.
See the Coking Mechanism topic below for further details.

Coking Mechanism
There are several theories on coke laydown: one or more of them may be
correct. The general concept with the greatest acceptance is that coke is
formed from the condensation of polycyclic hydrocarbons. A second generally
accepted concept is that polycyclics are formed from an intermediate olefin
created primarily during the cyclization (and to some degree during

12 Aspen Plus Reformer Application Model 115


isomerization) of naphthenes from paraffins, and from aromati
atics. The Paths
to Coke diagram
am below illustrates this.

Because the reac action rate of C6 ringed naphthenes to aromatic


atics is extremely
high, it can be sa
safely assumed that very little coke is made from
fro C6 ringed
naphthenes. Alsolso, the extremely low concentrations of naphthe
thenes (both C5
ringed and C6 rinringed) in the second and subsequent reactorsrs makes
m it nearly
impossible to genenerate accurate rate data from experimentall data.
d
Correlations of lalaboratory measurements of coke make and either
eit paraffin of
C5 ringed naphth
hthene concentration are further confused by the fact that the
paraffins and napaphthenes are existing in equilibrium, and conc
ncentrations of
both species decr
ecrease dramatically through the reactor systemems. This is
particularly trueeo of the C9 and heavier material where:
The vast majo
ajority of the coke originates.
Both speciessaapproach zero concentration in the last reacto
ctor where the
majority of th
the coke is formed.
Literature reports
rts give the reaction rates of the paraffin/napht
hthene
intermediate olef
lefin in terms of the paraffin (or paraffin and naphthene)
nap
concentration. Fo
For commercial catalytic reformer modeling pur urposes, it can be
assumed that the coke make is a function primarily of the C5 ringr naphthenes
and aromatics.
Coke make in Asp
Aspen Plus Reformer is via the reaction of 5_RinRing_Naphthene
and aromatics to coke via a first order reaction mechanism. All Al
5_Ring_Naphthphthene share a common activation energy as do the aromatics.
The frequency fac
factors vary by carbon number and species. EachEac reactor has a
coke make activit
ivity, as well as a total coke make activity for all reactors. The
reaction rate is
s in the general form:
KP = AS * ARXI * FPI * e**(-EP/RT)
KA = AS * ARXI * FAI * e**(-EP/RT)
Where:
KP = Rate of 5_Ring_Naphthene(i) to coke
KA = Rate of Aromatic(i) to coke
AS = Coke Ac
Activity Reactor System
ARXI = Coke Ac
Activity Reactor(i)

116 12 Aspen Plus Reformer


er Application Model
FPI FAI = Frequency Factors for 5_Ring_Naphthene and
aromatics, carbon num. (i)
-EP -EA = 5_Ring_Naphthene and Aromatics activation energies
The rates are then used in the reaction equations in the following general
format:
dC/dt = (k5NP5N + kAPA) PH2-2 Cn
with
dC/dt = coke/time
k5N = C5 ringed naphthene to coke rate factor
P5N = C5 ringed naphthenes partial pressure
kA = Aromatics to coke rate factor
PA = Aromatics partial pressure
PH2 = Hydrogen partial pressure
Cn = hydrocarbon molar flow rate (flow/time)
Each feed has an associated coke make multiplier. Default values are 1.0.
This lets you put a linear weighting on feeds with higher or lower coking
tendencies than the base feed stock. This term is a simple multiplier on the
coke rate expressions.

Coke Precursor Equations


5N6 (MCP) C5H6 + CH4 + H2
5N7 C5H6 + CH4 + H2
5N8 C5H6 + C2H6 + H2
5N9 C5H6 + C3H8 + H2
5N10 C10H8 + 6*H2
5N11 C10H8 + CH4 + 5*H2
N12 C10H8 + C2H6 + 5*H2
N13 C10H8 + C3H8 + 5*H2
N14 C10H8 + C4H10 + 5*H2
A6 + 2*H2 C5H6 + CH4 Note 1
A7 + 2*H2 C5H6 + C2H6 Note 1
A8 + 2*H2 C5H6 + C3H8 Note 1
A9 + 2*H2 C5H6 + C4H10 Note 1
A10 C10H8 + 3*H2
A11 C10H8 + C1H4 + 2*H2
A12 C10H8 + C2H6 + 2*H2
A13 C10H8 + C3H8 + 2*H2
A14 C10H8 + C4H10 + 2*H2
C5H6 0.5*C10H8 + H2

Note: The condensation of aromatics to coke results in a net hydrogen


production. The hydrogen consumption shown in these reactions is only to
maintain stoichiometric balance during the generation of the coke precursor -
C5H5.

12 Aspen Plus Reformer Application Model 117


Reactor Temperature Control
The reactor inlet temperatures are calculated by the REFCTL model. In this
model a base temperature is used as a reference temperature for biasing the
individual reactor inlet temperatures.
RX(i) Inlet Temp = Base Temp + Temp_Bias_RX(i)
This allows any one of the following to be a constant and the severity target:
Base Temperature
WAIT
WABT
Octane (RON or RON for C5+, C6+ or Reformate)
Aromatics Production
Total Heater Duty (Absorbed or Fired)

Stabilizer Configuration
The stabilizer is a conventional rigorous tower simulation using the Aspen Plus
Petrofrac Tower model. A vapor and liquid draw are taken off the overhead
receiver, and the reformate off the reboiler. The overhead receiver pressure
and temperature are user-specified, as well as the condenser delta pressure
and the tower delta pressure.
Tray 1 is the condenser. The feed is specified to Tray 11. The reboiler is on
Tray 30. A Murphree efficiency can be specified for Trays 10 through 2 and a
second efficiency for Trays 29 through 12. This gives sufficient freedom to
match actual tower performance.

Aspen Plus Reformer Block Definitions

Reactor Hierarchy Blocks


Each reactor is made up of the following set of blocks:
Block Description

RX1HT Heater block to calculate heater absorbed duty


RX1 Reaction block to calculate all kinetics
COKESPL Separator block to split coke from reactor effluent
RX1ACT Calculates catalyst activity from percent coke on catalyst
RX1OPER Performs a series of calculations such as reactor average bed
temperature, catalyst weight and catalyst volume
PINNING USER3 Calculates pinning in the reactor
CCR1 USER3 Converts coke in reactor effluent from moles to mass

Feed Blocks
Block Description

FD3VP Feed 3 volume percent analyzer

118 12 Aspen Plus Reformer Application Model


Block Description

FDANM1 Feed 1 mole analyzer


FDANM2 Feed 2 mole analyzer
FDANM3 Feed 3 mole analyzer
FDANV1 Feed 1 volume analyzer
FDANV2 Feed 2 volume analyzer
FDANV3 Feed 3 volume analyzer
FDANW1 Feed 1 weight analyzer
FDANW2 Feed 2 weight analyzer
FDANW3 Feed 3 weight analyzer
FDMIX Feed mixer model that mixes the fresh feed with the hydrogen recycle
FEEDCOKE Input model that allows you to differentiate between the coking
tendencies of the different feeds
FEEDSUM calculates the sum of the feed rates in moles, volume and mass
FRFDMIX Mixes the three feed streams into a common feed to the reactor
section
FRFDMP Calculates the combined feed concentrations on a molar basis
FRFDVP Calculates the combined feed concentrations on a volume basis
FEEDADJ.F Calculation block for adjusting the Feed 3 concentrations to match a
USER specified N+2A or N+3A

Control Blocks
Block Description

PISOM Transfers user-specified isomerization kinetic factors to the REACT_A


block
REFCTL Calculates the reactor inlet temperatures based on the base
temperature and individual reactor temperature biases.
LTENDC.F Adjusts reactant distributions
REACT_A Adjusts reactor kinetic rate factors in the reactors
REACT_B Transfers user-defined frequency factors to the REACT_A block
REACT_C Transfers user-defined activation energies to the REACT_A block

Isomerization Calculation Blocks


Block Description

ISOMD1 Calculates olefin isomerization extent of reaction


Calculates the extent of reaction of ethyl benzene to meta-xylene
ISOMD2 Calculates the extent of reaction of meta-xylene to ortho-xylene
ISOMD3 Calculates the extent of reaction of ortho-xylene to para-xylene
ISOMP4 Calculates C4 isomerization extent of reaction
ISOMP5 Calculates C5 isomerization extent of reaction

Calculation Blocks
Block Description

12 Aspen Plus Reformer Application Model 119


Block Description

MPROD Combines duplicates of the net hydrogen and the product separator
liquid to form a net reactor yield stream for further analysis
NETCALV Calculates the net reactor products on a volume basis
NETCALW Calculates the net reactor products on a weight basis
NETH2AM Calculates the net hydrogen concentration on a molar basis
NETH2AW Calculates the net hydrogen concentration on a molar basis
NXACALC Calculates the Feed 3 N+2A and N+3A
OCTSTBV Calculates the reformate RVP
OPERCAL Performs a series of calculations such as reactor delta temperature,
fired duty, WAIT, LHSV, WHSV and other similar calculations
REFMRVP Calculates reformate RVP based upon components
H2HC Calculates hydrogen to hydrocarbon ratio on a molar basis
NETCAL Calculates net volumetric yields using user defined gravities for H2,
C1, C2 and O2
HT1TST Calculates the tubeskin temperatures of the first heater
HT2TST Calculates the tubeskin temperatures of the second heater
HT3TST Calculates the tubeskin temperatures of the third heater
HT4TST Calculates the tubeskin temperatures of the fourth heater

Regenerator Blocks
Block Description

COBURN Calculates the combustion of CO from the coke burn to CO2


COKEBURN Calculates the coke burn rate
COKEMIX Calculates the total coke from the reactors to the regenerator
RGAIR Calculates the regenerator air requirement

Recycle Blocks
Block Description

BDMAP 3 First of two blocks that map the component set used in the reactor
section to the component set in the separation section of Aspen Plus
Reformer
DMAP 3 Second of two blocks that map the component set used in the reactor
section to the component set in the separation section of Aspen Plus
Reformer
EFFCLR Mapping blocks that maps the component set used in the separation
section to the component set in the reactor section of Aspen Plus
Reformer
FLMAP 3 Mapping blocks that maps the component set used in the separation
section to the component set in the reactor section of Aspen Plus
Reformer
PSEP 3 Flash drum block that models the product separator
PSSPL Splitter on the product separator vapor to create the recycle and net
hydrogen streams
RCMP2 Recycle compressor

120 12 Aspen Plus Reformer Application Model


Block Description

REC1AN 3 Recycle gas composition analyzer


RECSPL Component splitter used to strip trace amounts of theoretical heavy
components in the recycle gas, and re-route them to the product
separator
RECV Flash drum used to simulate the pressure drop of the gas stream
between the product separator and the recycle compressor suction

Stabilizer Blocks
Block Description

STABREC Calculation block that calculates the recover of C4s, C5s, and C6s
overhead in the stabilizer
STABTWR Petrofrac model used to simulate the stabilizer tower
STBABM Analyzer model (mole basis) on the stabilizer bottoms stream
STBABV Analyzer model (volume basis) on the stabilizer bottoms stream
STBABW Analyzer model (weight basis) on the stabilizer bottoms stream
STBALM Analyzer model (mole basis) on the stabilizer overhead liquid stream
STBALV Analyzer model (mole basis) on the stabilizer overhead liquid stream
STBALW Analyzer model (weight basis) on the stabilizer overhead liquid stream
STBAVM Analyzer model (mole basis) on the stabilizer overhead vapor stream
STBAVW STBAVW
STBHTR Heater block on stabilizer feed
USERRVP Bias block to adjust theoretical RVP to measured RVP
VOLRR Calculates the reflux ratio on a volume basis
Reflux Stabilizer_Reflux:Stabilizer_Overhead_Liquid
Ratio

Duplicator Blocks
All of the following blocks are used to duplicate a stream composition or flow
rate. These duplicates are then used in supplemental calculations such as in
an analyzer block for stream composition.
DUPF1
DUPF2
DUPF3
DUPF4
DUPFR2
DUPFR3
DUPFR4
DUPFR5
DUNET1
DUPSVO
DUPSEP
DUPSTB1

12 Aspen Plus Reformer Application Model 121


DUPSTB2
DUPSTB3
DUPRCV
DUPREC1

122 12 Aspen Plus Reformer Application Model


13 Troubleshooting

Aspen Plus Reformer Stops


Responding
Occasionally, the spreadsheet will lose the connection to the model. However,
the model is still in the memory of the computer. If this occurs, reset the
model by selecting AspenPlusReformer | Startup Aspen Plus Reformer |
Reset ApMain. After this, a new connection can be established by following
the directions listed in the section Starting Aspen Plus Reformer.

Note: Do not make a new connection until you have issued the reset
command.

The Model Isn't Solving


If the new data are very different from the starting point, it may be difficult
for the model to solve. If the residuals are very large and the non-linearity is
very poor, it is possible that the model will be unable to solve. Rather than
waiting for a large number of iterations, you may terminate the solution by
clicking the Abort button on the command line window.
Clicking the Abort button will stop the model from solving, but not reset the
memory to the starting point before a solution was attempted. It is possible
that a saved solution will need to be loaded into memory so that the model
will be able to reach a solution. For this reason, it is very important to save
parameter case results using the Save Case Data command, so that you can
load in a valid starting point without needing to use the Reset ApMain
command.
After re-loading good data from a saved file, try running the failed case again
with an increased number of creep iterations.
Review the section Solver Settings.

13 Troubleshooting 123
License Errors
The following error message may appear if the Aspen Plus license verification
fails.
Message Error in ConnectServer(), module Com2Dcom. Error
message:Unable to load simulation engine. License
check out error.
Cause The Aspen Plus license was not found when attempting to connect
to the Aspen Plus Reformer flowsheet.
Solution Check to make sure that the license server or the license file has
been selected properly. See the Licensing section on page 2-8 of
the Aspen Engineering Suite Installation Manual for more
information.
Ensure that the licenses for Aspen Plus, Aspen Plus EO Optimizer,
and the Aspen RxFinery application licenses have been entered into
the license server or are located in the license file.

The following error message may appear if the Aspen Plus Reformer license
verification fails.
Message ****EXECUTION ERROR WHILE EVALUATING
RESIDUALS FOR UNIT OPERATIONS BLOCK:
"RX1" (MODEL: "KINETIC")
LICENSE VALIDATION/CHECKOUT FAILURE
FOR ASPEN PLUS REFORMER
Cause The Aspen Plus Reformer license could not be found in the license
server or license file selected.
Solution Ensure that the license key for Aspen Plus Reformer has been entered
into the license server or is located in the license file. See the
Licensing section on page 2-10 of the Aspen Engineering Suite
Installation Manual for more information.

124 13 Troubleshooting
Index

C8 86
A C8 Yield Calibration 86
C8 Yields 86
A8 85 C9 86
Abort button 17 C9 Yield Calibration 86
Add Variables to Objective C9 Yields 86
Functions dialog 62 Calculation Blocks 113
APC 55 Calibrating SBP/MBP 88
Aspen Plus 3, 4 Calibrating the model 72
flowsheet 12 Case Study 52
resetting connection 12 running 53
Aspen Plus Reformer 3 setting up 52
engine 4 Case types 37
exiting 13 Case worksheet 52
flowsheet 19 Catalyst 111
menu 19 activity 111, 114
toolbar 19 calibration 111
workbook 14, 25 circulation rate 43
ATSLV file problem summary 100 Catalyst Data section 43
Catalyst sheet 48
B Check Receive Vars 36
Check Send Vars 36
Bulk Napthenes Specifcation 84
Close Residuals button 18
Closing the Command Line 18
C Coke Make 115
C1 89 Coke Make Factors 82
C10 86 Coke on Catalyst 44
C10 Yield Calibration 86 Coke Precursor Equations 118
C10 Yields 86 Coking Mechanism 116
C2 89 Command Line 18, 69
C3 Yield Calibration 89 accessing manually 18
C4 85 window 17
C5 85 Commands
C5 Naphthenes Production 84 running 18
C6 Paraffin Closure 88 Compositions Product Rates 44
C7 87 Connect Dialog Box 21
C7 naphthenes 87 Constrained Variables 101
C7 Paraffin 87
C7 Yield Calibration 87

Index 125
D H
Data files Hidden Worksheets 27
loading 15 Hot Side Approach Temperature 78
saving 14
DCOM 3, 4 I
Degrees-of-Freedom 6, 8, 9
Delta temperatures Incremental properties
specifying 79 adding 62
Display Command line 5 independent variable data 53
Display Command Line 72 independent variables 61
DMO 96 Infeasible Solutions 103
algorithm 97 Initiate model solution 74
parameters 98 Isomerization 85
solver log files 99 Iterations
solver output 98 objective function value 100
DOF 6, 8, 9 status information 102
DP 8
DP Factors 81 K
Duplicator Blocks 122
Key Operating Data 41

E
L
EB Scripts 4
Largest Unscaled Residuals 100
adding 35
Last Successful Run 73
EB Scripts sheet 35
License verification failure 124
EO Modeling 5
Lightends gravities 82
EO Solver 96
Loading data files 15
changing parameters 97
Loading user input files 16
Equation-oriented See EO
LP factors 55
Error Recovery 50, 95
LP vectors 54, 55
Ethane Yield 89
generating 55, 56, 58
example 5
purpose 55
Excel 13
Execute button 18
Exit Aspen Plus Reformer 13 M
Measurements 7
F Methane Yield 89
Microsoft Excel 3
Feed Data 42, 45
Model calibration 72
Feed definition 112
Model Specifications 6
Feed Specifications 90
Modes 7
Feeds worksheet 30, 45
Multi-Mode Specifications 7
Feedstocks 3
Multiple cases 51
File submenu 23
Flowsheet 3
FOE 43 N
No Creep button 18
G Nonlinearity Ratio 102
Normal Paraffin Isomerization
Generating LP vectors 56
Calibration 88

126 Index
O REFORMER Demonstration Model
108
Objective Convergence Function 18
Reformer flowsheet 20
Objective functions
initialize 11
setting up 61
Reformer model 108
types 60
Reset ApMain command 12, 123
Octane Calibration 83
Residual Convergence Function 18
Open Command Screen 72
Running cases
Optimization 9, 60
from Reformer menu 38
analyzing solutions 71
from the Reformer Toolbar 38
creating DOF 9
LP vectors 55
setting up 65
multiple cases 38
Optimizer 60
simulation 49
Options worksheet 26
Run-Time Intervention 107
Rx-Section sheet 48
P
PAR mode 73 S
Parameterization data
Save/load case data 4
transferring into solver engine 73
Saving data files 14
Parameters 7
Saving reformer model data 14
PARAMETIZATION Script File
Saving solutions 49
recommended 77
Saving user input files 16
PIMS Table
SBP/MBP
generating 59
Calibrating 88
Pinning Specifications 81
scaling 105
PML 3
Select Objective Function dialog 68
Pressure Drop 5
Select Specification Options dialog
Pressure effects on reaction
box 47, 51
mechanisms 114
Send Vars 35
Product definition 112
SendVars Sheet 32
profit functions 61
Sequential-modular 5
Propane Yield 89
Setting Startup Options 22
Setup Case Study dialog box 39,
R 52
Reaction Kinetic Expressions 110 Setup Cases submenu 24
Reaction Paths 109 Setup LP Vectors dialog box 56
Reaction Types 110 Setup Optimization Case dialog box
Reactor 65
base temperature 118 Severity Options 42
base temperature specification Simulation 41
77 running 49
delta temperature specifications Simulation sheets 41
79 Singularities 105, 106
Hierarchy Blocks 119 SM 5
lengths 80 Solutions
temperature control 118 saving 49
weights 80 Solver settings 40
Read New Model Data into Solving
Excel Interface 76 troubleshooting 123
Receive Vars 35 Specification Buttons 28
ReceiveVars sheet 33 Specifications
changing 8

Index 127
Pinning 81 X
SQP 96
Xxx_PARAM.EBS file 77
Stabilizer Configuration 119
Stabilizer Tower Calibration 89
Standard Worksheets 26 Y
Starting Aspen Plus Reformer Yields 43
first time 10
Starting File 73
Startup Aspen Plus Reformer
submenu 20
Startup Options 23
modifying 20
setting 23
Startup Options Dialog Box 22
Stream Rates 44
Successive Quadratic Programming
96
System Pressure Control 114
System Pressure Specifications 81

T
Tube Skin Temperature Input Data
93

U
Unhide 27
Unit Operations
basic specifications 78
Usage Notes 103
User Data File 20
User input files
Saving and Loading 16
User specified file
Write results 74

V
Variables
bounds 107
deselecting 67
selecting 62, 63, 67
VBA 3, 19
View Hidden Worksheets 27

W
WAIT 51
Worksheets 25, 26
customizing 31
Write results 74

128 Index

You might also like