PD-PLUS is a very fast, large-capacity, exceedingly robust program for simulating chemical processes, including refinery systems and non-ideal chemicals. It handles multiple-operation flowsheets with recycle streams. An interactive mode provides complete user control of the simulation and rapid evaluation of different process conditions. Control of all aspects of the program is done through a menu-based Windows™ interface. PD-PLUS may be interfaced with or driven by other software packages easily.
All operations allow multiple feed streams and in general can produce multiple products, except where noted. Complete heat balancing is generally done, but can be suppressed where not meaningful or needed.
Column - rigorous simulation of all types of columns. See further detail below ("Distillation - Column Block").
Flash - two or three phase vapor-liquid equilibrium flash; second liquid phase can be multicomponent or pure water; heat may be added or removed; pressure drop may be given.
Mix - multiple streams are mixed to form a single product.
Split - multiple product streams are split from the total feed, all having the same composition; flows may be specified directly in any units, or as a fraction of the total feed, or as a fraction of another stream; one product may be specified as the balance after others are removed.
Component Separator - composition of each product is specified by fractions of the feed components to be split off; one may be by balance.
Heat Exchanger - a single stream is heated or cooled, or two streams exchange heat; options include approach, weighted MTD, "U" times area.
LNG (plate-fin) Heat Exchanger - exchanges heat between multiple hot and cold streams; calculates composite heat curves, internal temperature approach, U*area requirements, and weighted MTD.
Stoichiometric Reactor - multiple equations with extents of reaction are handled; options include makeup and heat of reaction calculation.
Compressor - calculates power to compress a gas; options include multiple stages, interstage cooling, polytropic and entropy methods.
Expander - calculates work available from expansion of a gas, using entropy
Pump - calculates power and temperature rise for pumping a liquid stream.
Feedback Controller - varies a stream or block parameter to obtain a result.
Calculator - in-line Fortran blocks; use and change stream/block data, build object functions for controllers, generate reports, interface with other software. See further detail below ("Calculator Block").
Decanter - separates a feed into two immiscible phases, using fixed K values or activity coefficients.
Distillation - Column Block
One great strength of PD-PLUS is the column block, which permits simulation of a wide range of column types, including fractionators, absorbers, strippers, crude and vacuum columns. Convergence is exceedingly reliable and rapid. Initial estimates very close to the final answer normally are not required.
The configuration may be a single column, a main column with one or more sidestrippers or side rectifiers, or other interlinked column sysems, including dividing-wall columns.. There may be multiple feeds to the column, and more than one feed to any stage. Feed stream flows may be varied to meet performance specifications. There may be multiple vapor sidedraws, multiple liquid sidedraws, and heat added or removed at any stage. Vapor at the bottom of a sidecolumn may provided by a reboiler, a stripping gas feed stream, or a vapor sidedraw from the main column or another sidecolumn. Similarly, liquid at the top of a sidecolumn may be provided by a condenser, a liquid feed stream, or a liquid sidedraw from the main column or another sidecolumn. There also may be pumparound coolers on the main column and sidecolumns, returning one or more stages above or below the draw stage or even flowing to the main column or another sidecolumn. The net liquid or vapor flow from any stage may be directed to a different stage from the adjacent stage where it would have flowed. Heat duties may be fixed or varied to meet specifications. Product and internal flow rates may be varied to meet specifications; or, any flow may be fixed in absolute mole, weight, or liquid volume units or as a fraction of a particular feed or the total feed, on mole, weight, or volume basis, wet or dry. Flows estimated as initial values may be in any units. Pressures may be specified on individual stages; the program will interpolate for other stage pressures. Temperature may be specified or estimated at any stage. Subcooled reflux temperature may be specified. TBP, ASTM D86, or ASTM D1160 distillation temperature for any volume fraction distilled may be specified for a product stream. The definitions of initial and end points may be adjusted. Tables of TBP, D86, and D1160 distillation curves may be printed for all streams. Free water may be allowed to form and be decanted at the reflux drum when dealing with hydrocarbon separations. Internal or external reflux ratio may be specified. Liquid/vapor mole flow ratio may be specified at any stage. The absolute mole, weight, or volume fraction of a single component or group of components in a product stream may be specified. The mole, weight, or volume fraction recovery (loss) one component or group of components into a product stream may be specified. API gravity or Reid or true vapor pressure of a product stream may be specified. An extremely rapid "superfractionator" convergence option is provided for solving columns having up to 350 stages, although the default method is quite rapid by itself on columns that tall.
Flowsheet calculations may be interrupted at any time by pressing the ESC key, to display streams and other information, make changes, repeat parts of the flowsheet, step through the flowsheet one block at a time, and set break points. This provides complete control of the simulation, allows rapid evaluation of different process conditions, and provides a means of fast debugging of new models. Pressing the ESC key during convergence of a column block permits displaying profiles at that point in the convergence, changing trace level, and halting convergence of the block.
PD-PLUS has a versatile Fortran-subset "calculator" block to complement the other operations provided. It permits calculations using information from streams, other flowsheet blocks, and the physical property system. Results may be stored into streams and block parameters. Meaningful variable names may be used to hold local results, and these can be referred to in subsequent statements and in other calculator and controller blocks. Data in streams and flowsheet blocks may be referenced in a very simple way, without requiring knowledge of how data is stored internally in the simulator, and without using cryptic concepts like "stacks" and RPN. Calculator blocks may be used to set specifications of some blocks from results obtained for others, to create object functions for feedback controllers to use, and to extract results for reporting purposes.
A PD-PLUS calculator block can read and write ASCII data files and execute other programs. This provides a means of interfacing to proprietary software. It also provides the means of having another program use PD-PLUS as a calculation engine, for such things as on-line data-monitoring and process control. Entering PD-PLUS with new data, updating the calculations, and returning the results can be done in just seconds, or even in sub-second time, something other simulators would be hard pressed to do.
The input language is free-form, keyword-based, and readable. Abbreviations are allowed for the experienced user. Units of input and output values may be specified independently and flexibly. Input data are entered in an ASCII file using whatever text editor or word processor the user specifies (see Interface, below). The following is the complete input file for a simple distillation example:
Toluene - C8 separation.
Objectives: 97% recovery of toluene overhead
5 wt % C8s in distillate
Subcooling of reflux set by cooling water
*COMPONENTS, LIBRARY 4 39 40
41 42 43 44 45
*K VALUES, IDEAL
*STREAM 12A, TEMP=200 F, PRES=20 PSIG,
FLOW= 323.6 LBMOL/HR,
COMPOS= 12.3 12.3 23.4 123.4 34.5 6.7 32.1 78.9
*COLUMN T-401 'Toluene Recovery Column, T-401',
FEED 12A STAGE 9,
LIQUID DISTILLATE, STREAM 13, EST FLOW=160 LBMOL/HR,
BOTTOMS STREAM 15,
WT FRAC RECOVERY= 0.97, COMP 4, STREAM 13,
WT FR= 0.05, COMP 5 8, STREAM 13,
PRESS= 5.0 PSIG, STAGE 20,
PRESS= 6.5 PSIG, STAGE 19,
PRESS= 7.8 PSIG, STAGE 1,
SUBCOOLED REFLUX TEMP= 100 F,
EST TEMP=250 F, STAGE 19,
The program checks all input data thoroughly, providing clear messages and suppressing flowsheet calculations when errors are found. While the convergence calculations are proceeding, the program checks for numerically impossible situations, which can occur when the problem specifications are asking for an infeasible answer. In such cases, the program takes appropriate action to avoid abrupt termination due to "divide-by-zero," etc.
The output file contains a fully translated input-echo, history of the convergence calculations, summaries of flash blocks and other operations, column profiles with optional stage-by-stage compositions for specified stages, and details of all input and output streams, including transport properties.
The output file generated by the program is displayed using whichever text browsing program the user specifies (see Interface, below). There are facilities for generating full heat curves and custom stream report files for printing or for import to spreadsheet programs. The Print option on the menu provides for control over printing the output file on any printer accessible to the computer.
Through the calculator block, other files containing simulation results may be generated in any format desired, for printing or for import to other programs.
Components - Pure Component Library
Components may be retrieved by number from a library. Non-library components may be defined by giving their necessary properties. Hydrocarbon fraction pseudocomponents may defined, and the program will estimate their properties from boiling point and gravity. There is a choice of API Technical Data Book (1980, 1987), Kesler-Lee (1976), and Winn (1957) methods for predicting fraction properties. Water need not be first or last. A separate crude breakdown program is provided to convert a laboratory TBP or ASTM D86 or D1160 distillation into a set of defined light ends plus narrow-boiling pseudocomponents. Blending of multiple assays is allowed.
The large pure compound library provided with the full PD-PLUS contains properties for 1,508 compounds of all types. This library includes information from the AIChE/DIPPR Data Compilation Project, the API Technical Data Book, Petroleum Refining, and other sources. The file maintenance program allows changing existing data and adding new compounds to customize the databank. The program always allows non-databank compounds to be defined for any problem.
K values may be calculated by "data generator," by ideal K values plus liquid activity coefficients, or by user-supplied tabular data. Tabular data may be used to override data generators for selected components. Such data may be in the form of simple pseudo-vapor pressure vs. temperature, or there may be curves of partial pressure vs. composition at multiple temperatures, for double-interpolation. Methods for vapor and liquid fugacity and liquid activity may be specified by general system name or separately.
Data generators for hydrocarbon systems include Maxwell-Bonnell vapor pressures, Soave-Redlich-Kwong (API), Peng-Robinson, and Grayson-Streed. Vapor fugacity options include Soave, Redlich-Kwong, and ideal. For liquid fugacity there are Soave, Grayson-Streed, and ideal. For nonideal liquid activity, there are Wilson, NRTL, UNIQUAC, and regular solution. There is also a sour water VLE option.
The K value of water out of hydrocarbons may be estimated using vapor pressure and the solubility in kerosene, if desired. User- provided K data may be in the form of actual data points (two to six values) or equation coefficients. Coefficients may be for the Antoine equation or the DIPPR (AIChE) vapor pressure equation (five coefficients).
Enthalpies may be generated automatically for hydrocarbon systems using API Soave-Redlich-Kwong, Peng-Robinson, Lee-Kesler, API (similar to older Johnson-Grayson), or ideal gas enthalpy plus latent heat. Tabular data points (two to six points) may be given for one or more components, even when a method such as SRK is used for the others. Tabular heat of mixing data may be given for highly unusual systems.
Both the licensed and demo versions contain 32-bit code, requiring an 80386 or higher Intel or compatible processor, approximately 4 megabytes of memory, and 7 megabytes of disk space. The program requires Microsoft Windows 95 or later, up through Windows 7.
All aspects of program operation are controlled through a standard horizontal menu in a resizable, movable window. Menu options include the following:
File Specify current data file and location
Edit Edit current data file
Run Run the simulator, using the current data file
Rerun Rerun a previously converged model
Crude Do a crude breakdown
Output Display output file
Print Print output file
Databank Specify, view contents of pure compound databank
Keywords View simulator keyword summary
Tools Specify tools for editing, browsing files
Command Display command prompt window
Miscellaneous Select miscellaneous simulation options
Help Display help information
Exit Exit the PD-PLUS program window
When the simulation engine ("Run") or an editor/browser tool requiring console mode is launched, the menu window is hidden and the PD-PLUS console window appears. When a Windows tool is used, it is run in its own window, and the PD-PLUS menu window remains visible.
The installation program creates an entry in the Windows Start menu and, optionally, creates a desktop icon for launching the program. Also provided is an uninstall program for removing PD-PLUS from the system.