Gproms Guide

16
Yoshiaki Kawajiri [email protected] Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA, 15213 PSE Seminar February 3, 2006 Dynamic Simulation and Optimization using gPROMS

description

Gproms Guide

Transcript of Gproms Guide

Page 1: Gproms Guide

Yoshiaki [email protected]

Department of Chemical EngineeringCarnegie Mellon University

Pittsburgh, PA, 15213

PSE Seminar

February 3, 2006

Dynamic Simulation and Optimization using gPROMS

Page 2: Gproms Guide

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 Biegler’s group currently has two licenses (two simultaneous users)

- used for simulation/optimization of adsorption processes

Page 3: Gproms Guide

User Interface of gPROMS

gRMS(gPROMS Result Management System)

gPROMS Model Builder

Communicate using TCP/IP

Page 4: Gproms Guide

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)

Page 5: Gproms Guide

Dynamic simulation example 1: Tank with orificeProcess Equation (DAE)

H(t) h(t)

Fin(t)

Fout(t)

h(t): Hold upH(t): Height Fin(t): Inlet flow rateFout(t): Outlet flow rate

: Orifice constant: Density

A : Cross sectional area

Parameters (constants)Variables

4 variables, 3 equations :

Need to “assign” one variable to make degree of freedom to be zero

Page 6: Gproms Guide

Model Implementation

: density

: cross sectional area

A :orifice constant

h(t): Hold upFin(t): Inlet flow rate, Fout(t): Outlet flow rate

H(t): Height

Model

Page 7: Gproms Guide

Model Specification

Parameter values

Call “Unit” (Tank model)

Assign variable (Make DOF be zero)

Initial condition

Integration

Process

Option

Page 8: Gproms Guide

Sequence

20

Fin(t):

1800 t 1800 t

20

Fin(t):

900

10

Page 9: Gproms Guide

Model of cooled reactor

Dynamic simulation example 2: Tubular reactor with cooling jacket

z

r

Reactor model

Jacket model

Page 10: Gproms Guide

Handling PDAEs

Model

Domain of zDomain of r

Page 11: Gproms Guide

Discretization

BFDM: Backward Finite Difference Method

OCFEM: Orthogonal Collocation on Finite Elements Method

Process

1st order, 50 elements2nd order, 5 elements

Discretize in all domains except time

Page 12: Gproms Guide

Dynamic Optimization Example: Batch Reactor

Ni(t), T(t)

Fcw(t): Control variable

A+B C+D

Page 13: Gproms Guide

Implementation

tf=1000 (fixed)

Parameterization of time domain

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

(Initial value : Lower bound : Upper bound)

Fcw(t):

10000

Constraints and objective function

Page 14: Gproms Guide

Solvers: CVP_SS and CVP_MS

• Single shooting

• NLP problem is handled by the default solver SRQPD (SQP based), or an external CAPE-OPEN compliant solver.

• Handles integer variables (default: Outer Approximation)

• Multiple shooting

• NLP problem is handled by HQP (SQP based)

CVP_SS

CVP_MS

tf0

0 tf

Page 15: Gproms Guide

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.

Page 16: Gproms Guide

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/