Sie sind auf Seite 1von 16

Dynamic Simulation and Optimization using gPROMS

Yoshiaki Kawajiri kawajiri@cmu.edu


PSE Seminar February 3, 2006 Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA, 15213

What is gPROMS?
Stands for general PROcess Modeling System Initially developed at Imperial College, and currently sold by Process Systems Enterprise Ltd. Equation based process simulation/optimization software Windows 2000/XP and Linux are supported Interfaces to MATLAB, Simulink, Excel, CFD software etc.

Larry Bieglers group currently has two licenses (two simultaneous users) - used for simulation/optimization of adsorption processes

User Interface of gPROMS


gRMS
(gPROMS Result Management System)

gPROMS Model Builder

Communicate using TCP/IP

Dynamic simulation of Differential Algebraic Equation (DAE) systems using gPROMS

gPROMS assumes problems are dynamic by default Integrator: BDF and implicit Runge-Kutta Checks index of given DAE system (warns and stops if it is high-index)

Dynamic simulation example 1: Tank with orifice


Fin(t) Process Equation (DAE) h(t)

H(t)

Fout(t) Variables h(t): Hold up H(t): Height Fin(t): Inlet flow rate Fout(t): Outlet flow rate
4 variables, 3 equations : Need to assign one variable to make degree of freedom to be zero

Parameters (constants) : Orifice constant : Density

A : Cross sectional area

Model Implementation
Model
: density : cross sectional area A :orifice constant h(t): Hold up Fin(t): Inlet flow rate, Fout(t): Outlet flow rate H(t): Height

Model Specification
Process Call Unit (Tank model) Parameter values Assign variable (Make DOF be zero) Initial condition Option Integration

Sequence
Fin(t):
20

Fin(t):
20 10 1800

900

1800

Dynamic simulation example 2: Tubular reactor with cooling jacket

Model of cooled reactor

Reactor model Jacket model

Handling PDAEs
Model
Domain of z Domain of r

Discretization
Discretize in all domains except time Process 1st order, 50 elements 2nd order, 5 elements

BFDM: Backward Finite Difference Method OCFEM: Orthogonal Collocation on Finite Elements Method

Dynamic Optimization Example: Batch Reactor


Ni(t), T(t) A+B C+D

Fcw(t): Control variable

Implementation
Constraints and objective function tf=1000 (fixed)
(Initial value : Lower bound : Upper bound)

Parameterization of time domain

Profile of control variable Fcw(t) (Piecewise constant)

Fcw(t):

1000

Solvers: CVP_SS and CVP_MS

CVP_SS
Single shooting
0

NLP problem is handled by the default solver SRQPD (SQP based), or an external CAPE-OPEN compliant solver. Handles integer variables (default: Outer Approximation)

tf

CVP_MS
Multiple shooting NLP problem is handled by HQP (SQP based)

tf

How gPROMS get Jacobians?


Jacobian is obtained from sensitivity equations (automatically generated and integrated), or from finite difference approximation. Exact first derivative can be obtained.

Conclusion (and some personal opinion)

Easy model implementation Good user interface for simulation Useful for simulation of complex dynamic systems

References: gPROMS Introductory User Guide Release 2.3, Process Systems Enterprise Ltd., 2004, London gPROMS Advanced User Guide Release 2.3, Process System Enterprise Ltd., 2004, London Process System Enterprise Homepage: http://www.psenterprise.com/

Das könnte Ihnen auch gefallen