source: mso/eml/pressure_changers/pump.mso @ 78

Last change on this file since 78 was 75, checked in by Paula Bettio Staudt, 16 years ago

Updated pressure_changers files header

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.1 KB
Line 
1#*-------------------------------------------------------------------
2* EMSO Model Library (EML) Copyright (C) 2004 - 2007 ALSOC.
3*
4* This LIBRARY is free software; you can distribute it and/or modify
5* it under the therms of the ALSOC FREE LICENSE as available at
6* http://www.enq.ufrgs.br/alsoc.
7*
8* EMSO Copyright (C) 2004 - 2007 ALSOC, original code
9* from http://www.rps.eng.br Copyright (C) 2002-2004.
10* All rights reserved.
11*
12* EMSO is distributed under the therms of the ALSOC LICENSE as
13* available at http://www.enq.ufrgs.br/alsoc.
14*
15*--------------------------------------------------------------------
16* Model of a centrifugal pump
17*--------------------------------------------------------------------
18*       - Assumptions
19*               * Steady State
20*               * Only Liquid
21*               * Adiabatic
22*               * Isentropic
23*
24*----------------------------------------------------------------------
25* Author: Andrey Copat, Estefane S. Horn, Marcos L. Alencastro
26* $Id: pump.mso 75 2006-12-08 19:01:49Z paula $
27*--------------------------------------------------------------------*#
28
29using "streams";
30using "pressure_changers/flux_machine_basic";
31
32Model centrifugal_pump as flux_machine_basic
33       
34        PARAMETERS
35ext NComp       as Integer                      (Brief = "Number of chemical components", Lower = 1);
36ext PP                  as CalcObject           (Brief = "External Physical Properties");
37        Mw(NComp)       as molweight            (Brief = "Molar Weight");
38        Eff             as positive             (Default = 0.72, Brief = "Pump Efficiency");
39        Meff            as positive             (Default = 0.95, Brief = "Brake Efficiency");
40        Beta            as positive             (Default = 0, Brief = "Volumetric Expansivity", Unit = "1/K");
41        g                       as acceleration         (Brief = "Gravity Acceleration", Default = 9.81);
42        N                       as vel_angular          (Brief = "Rotation", Default = 100);
43        Lev                     as length                       (Brief = "Loss Friction", Default = 0);
44       
45        VARIABLES
46        rho               as dens_mass          (Brief = "Specific Mass", Unit="kg/m^3");
47        Cp        as cp_mol                     (Brief = "Heat Capacity", Unit="kJ/kmol/K");
48        FPower    as power                      (Brief = "Fluid Power", Unit="kW");
49        BPower    as power                      (Brief = "Brake Power",Unit="kW");
50        EPower    as power                      (Brief = "Eletrical Potency", Unit="kW");
51        Pdiff     as press_delta        (Brief = "Pressure Increase", Unit="kPa");
52        Pratio    as positive           (Brief = "Pressure Ratio");     
53        Head      as head                       (Brief = "Head Developed", Unit="kJ/kmol");
54        Head_is   as head                       (Brief = "Isoentripic Head", Unit="kJ/kmol");
55        Mwm       as molweight          (Brief = "Mixture Molar Weight");
56        pvm               as pressure           (Brief = "Mixture Vapour Pressure", Unit = "kPa");                     
57        NPSHa     as length                     (Brief = "Available Net Positive Suction Head");
58        NS                as positive           (Brief = "Specific Speed", Unit = "(rpm*(gal/min)^0.5)/(m^3/4)");
59        Q                 as flow_vol           (Brief = "Volumetric Flow Rate");
60        vm                as vol_mol            (Brief = "Mixture Molar Volume", Unit = "m^3/kmol");
61       
62        SET
63        Mw = PP.MolecularWeight();
64       
65        EQUATIONS
66        #Mixtures Properties
67        "Calculate Mwm for Inlet Mixture"
68        Mwm = sum(Mw([1:NComp])*Inlet.z([1:NComp]));
69
70        "Calculate Cp Using a External Physical Properties Routine"
71        Cp = PP.LiquidCp(Inlet.T,Inlet.P,Inlet.z);
72       
73        "Calculate rho using a External Physical Properties Routine"
74        rho = PP.LiquidDensity(Inlet.T,Inlet.P,Inlet.z);
75
76        "Calculate Mixture Vapour Pressure"
77        [pvm] = PP.BubbleP(Inlet.T,Inlet.z);
78       
79        "Calculate Outlet Vapour Fraction"
80        Outlet.v = PP.VapourFraction(Outlet.T, Outlet.P, Outlet.z);
81       
82        "Calculate Liquid Molar Volume"
83        vm = PP.LiquidVolume(Inlet.T,Inlet.P,Inlet.z);
84       
85        #Mass and Energy Balance and Pump Equations     
86        "Calculate Outlet Stream Pressure"
87        Outlet.P = Inlet.P + Pdiff;
88       
89        "Pratio Definition"
90        Outlet.P = Inlet.P * Pratio;
91       
92        "Calculate Isentropic Head"
93        Head_is = Pdiff * Mwm/rho;
94
95        "Calculate Real Head"
96        Head = Head_is/(Eff*Meff);
97       
98        "Calculate Outlet Enthalpy"
99        Outlet.h - Inlet.h = Head;
100       
101        "Calculate Fluid Power"
102        FPower = Head_is * Inlet.F;
103
104        "Calculate Brake Power"
105        BPower * Eff = FPower;
106
107        "Calculate Eletric Power"
108        BPower = EPower * Meff;
109       
110        "Calculate Outlet Temperature"
111        (Outlet.T - Inlet.T) * Cp = (Outlet.h - Inlet.h) -  Pdiff * Mwm / rho * (1 - Beta * Inlet.T);
112       
113        "Molar Balance"
114        Outlet.F = Inlet.F;
115
116        "Calculate Outlet Composition"
117        Outlet.z = Inlet.z;
118       
119        "Calculate Net Positive Suction Head"
120        NPSHa = - Lev + (Inlet.P - pvm)/(g*rho); #If Inlet.P is the suction pump pressure, Lev is 0.
121       
122        "Calculate Volumetric Flow Rate"
123        Q = Inlet.F*vm;
124       
125        "Calculate Specific Speed"
126        NS = N*(Q^0.5)/(Head^3/4);
127       
128end
129
130
131#*-------------------------------------------------------------------
132* Model of a pump (simplified, used in distillation column model)
133*--------------------------------------------------------------------
134*
135*       Streams:
136*               * an  inlet stream
137*               * an  outlet stream
138*
139*       Specify:
140*               * the inlet stream
141*               * the pump press delta
142*
143*----------------------------------------------------------------------
144* Author: Paula B. Staudt
145*--------------------------------------------------------------------*#
146
147Model pump
148        PARAMETERS
149ext PP as CalcObject;
150ext NComp as Integer;
151       
152        VARIABLES
153in      Inlet as stream;
154out     Outlet as stream_therm;
155       
156        dP as press_delta (Brief="Pump head");
157       
158        EQUATIONS
159        "Molar Balance"
160        Inlet.F = Outlet.F;
161        Inlet.z = Outlet.z;
162       
163        "Pump head"
164        Outlet.P = Inlet.P + dP;
165       
166        "Temperature"
167        Outlet.T = Inlet.T;
168
169        "Vapourisation Fraction"
170        Outlet.v = Inlet.v;
171end
Note: See TracBrowser for help on using the repository browser.