Download presentation
Presentation is loading. Please wait.
Published byDamian Evans Modified over 9 years ago
1
gPROMs 软件介绍
2
Contents What is gPROMS Application briefs How to use gPROMs Case
3
What is gPROMS gPROMS is a general PROcess Modelling Syste with proven capabilities for the simulation, optimization and parameter estimation (both steady-state and dynamic) of highly complex process.
4
At its heart gPROMS is an equation- based system. gPROMS has an unprecedented level of openness.
5
The gPROMS family of products
6
Application across the process and plant lifecycle
7
gPROMS advantage Clear, concise language Modelling power
8
Application area Rate based separation modelling Reaction system modelling Solution crystallisation Fuel cell system modelling Biotreatment processes
9
allows you to quantify temperatures and compositions in every part of the reactor. you can operate closer to the catalyst limits to improve selectivity, thus maximising yield and throughput. improve yield and throughput
10
Similar models of multitubular reactors allow you to locate and eliminate hotspots. save operating costs
11
optimise batch operating procedures Dynamic optimisation can be used to determine the optimal batch operating policy
12
maximise catalyst life Modelling enables to optimise the catalyst changeover frequency of this complex large-scale reactor system
13
understand what is happening inside allowing proper quantification of the operating envelope, enabling you to optimize equipment and control designs rapidly
14
When using gPROMs to made a model and work it out, user first need know how to express this model by math. gPROMs language, like C language and Fortrun language, has some intrinsic functions which used in equations to perform mathematical operators, i.e, partial and integral. How to use gPROMS
17
Case condition structure For condition structure IF condition structure IF A > B THEN FlowOut = ??????? ; ELSE FlowOut = ????? ; END # If FOR i := 1 TO 100 DO T(i) = ???? ; END
18
Buffer tank with gravity-driven outflow. Mass balance F in F out Relation between liquid level and holdup ρ Ah = M Characterisation of the output owrate = F in — F out Fout =
19
Step 1: create a new gPROMS “ Project ”
20
Variable Types Stream Types Models Tasks Processes Optimisations Estimations Experiments Saved Variable Sets Miscellaneous Files
21
Setp 2: create a new MODEL PARAMETER DISTRIBUTION_DOMAIN UNIT VARIABLE SELECTOR SET EQUATION
22
PARAMETER Rho AS REAL CrossSectionalArea AS REAL Alpha AS REAL VARIABLE HoldUp AS Mass FlowIn, FlowOut AS MassFlowrate Height AS Length
23
EQUATION # mass balance $Holdup= Flowin — Flowout; #calculation of height through holdup Holdup=CrossSectionArea*Height*Rho; #Assume aquare root presure drop flowrate relation Flowout=Alpha*SQRT(Height);
24
Step 3: define VARIABLE For example: Mass, MassFlowrate, Length Step 4: create a new PROCESS
25
UNIT # UnitName AS ModelName SET # ParameterPath := Expression ; # ParameterPath := [ Expression ]; EQUATION # Equations ASSIGN # VariablePath := Expression ; PRESET # VariablePath := InitialValue ; # VariablePath := InitialValue : LowerBound : UpperBound SELECTOR # SelectorPath := FlagPath ; # SelectorPath := [ FlagPath ]; INITIAL # STEADY_STATE SOLUTIONPARAMETERS SCHEDULE # OperationSchedule
26
UNIT T101 AS BufferTank SET T101.Rho := 1000 ; # kg/m3 T101.CrossSectionalArea := 1 ; # m2 T101.Alpha := 10 ; ASSIGN T101.Fin := 20 ;
27
CONTINUE FOR TimePeriod (1800) SOLUTIONPARAMETERS REPORTINGINTERVAL := 60;
28
Step 5: Syntax checking Step 6: run
29
Case 1
46
Case 2 Fin Fout Fout =
47
PARAMETER Rho AS REAL CrossSectionalArea AS REAL WeirHeight AS REAL Alpha AS REAL VARIABLE FlowIN, FlowOut1, FlowOut2 AS MassFlowRate HoldUp AS Mass Height AS Length
48
SELECTOR Valve AS ( ON, OFF) DEFAULT OFF EQUATION # Mass Balance $HoldUp = FlowIn - FlowOut1 - FlowOut2; # Calculation of liquid level from holdup HoldUp = CrossSectionalArea * Height * Rho; #Assign squart root pressure drop flow relation FlowOut1 = Alpha * SQRT ( Height); CASE Valve OF WHEN ON :FlowOut2 = 7* LOG ( Height * Height ); SWITCH TO OFF IF Height < WeirHeight - 2; WHEN OFF : FlowOut2 = 0; SWITCH TO ON IF Height > WeirHeight + 2; END # CASE
50
UNIT T101 AS Adjustivetank SET T101.Rho :=100; #Kg/m3 T101.CrossSectionalArea := 1; # m2 T101.Alpha := 7; T101.WeirHeight := 30; # m
51
ASSIGN T101.FlowIn := 80; INITIAL T101.Height = 10; SOLUTIONPARAMETERS REPORTINGINTERVAL :=10; SCHEDULE CONTINUE FOR 200
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.