source: branches/newlanguage/eml/streams.mso @ 124

Last change on this file since 124 was 124, checked in by Rafael de Pelegrini Soares, 15 years ago

Updated some models using if conditions

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.5 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 basic streams
17*----------------------------------------------------------------------
18* Author: Paula B. Staudt and Rafael de P. Soares
19* $Id: streams.mso 124 2007-01-19 17:54:55Z rafael $
20*---------------------------------------------------------------------*#
21
22using "types";
23
24Model stream
25        ATTRIBUTES
26        Pallete = false;
27        Brief = "General Material Stream";
28        Info =
29        "This is the basic building block for the EML models.
30        Every model should have input and output streams derived
31        from this model.";
32       
33        PARAMETERS
34        outer NComp as Integer (Brief = "Number of chemical components", Lower = 1);
35
36        VARIABLES
37        F as flow_mol;
38        T as temperature;
39        P as pressure;
40        z(NComp) as fraction(Brief = "Overall Molar Fraction");
41        h as enth_mol;
42        v as fraction(Brief = "Vapourisation fraction");
43end
44
45Model liquid_stream as stream
46        ATTRIBUTES
47        Pallete = false;
48        Brief = "Liquid Material Stream";
49        Info =
50        "Model for liquid material streams.
51        This model should be used only when the phase of the stream
52        is known ''a priori''.";
53
54        PARAMETERS
55        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
56       
57        EQUATIONS
58        "Liquid Enthalpy"
59        h = PP.LiquidEnthalpy(T, P, z);
60        "Liquid stream"
61        v = 0;
62end
63
64Model vapour_stream as stream
65        ATTRIBUTES
66        Pallete = false;
67        Brief = "Vapour Material Stream";
68        Info =
69        "Model for vapour material streams.
70        This model should be used only when the phase of the stream
71        is known ''a priori''.";
72
73        PARAMETERS
74        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
75       
76        EQUATIONS
77        "Vapour Enthalpy"
78        h = PP.VapourEnthalpy(T, P, z);
79        "Vapour stream"
80        v = 1;
81end
82
83Model source
84        ATTRIBUTES
85        Info =
86        "Material stream source.
87        This model should be used for boundary streams.
88        Usually these streams are known and come from another process
89        units.";
90
91        PARAMETERS
92        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
93        outer NComp as Integer (Brief = "Number of chemical components", Lower = 1);
94       
95        VARIABLES
96        out Outlet as stream;
97        x(NComp) as fraction(Brief = "Liquid Molar Fraction");
98        y(NComp) as fraction(Brief = "Vapour Molar Fraction");
99        hl as enth_mol;
100        hv as enth_mol;
101       
102        EQUATIONS
103        "Flash Calculation"
104        [Outlet.v, x, y] = PP.Flash(Outlet.T, Outlet.P, Outlet.z);
105        "Overall Enthalpy"
106        Outlet.h = (1-Outlet.v)*PP.LiquidEnthalpy(Outlet.T, Outlet.P, x) +
107                Outlet.v*PP.VapourEnthalpy(Outlet.T, Outlet.P, y);
108       
109        hl = PP.LiquidEnthalpy(Outlet.T, Outlet.P, x);
110        hv = PP.VapourEnthalpy(Outlet.T, Outlet.P, y);
111end
112
113Model sink
114        ATTRIBUTES
115        Info =
116        "Material stream sink.
117        This model should be used for boundary streams.";
118
119        PARAMETERS
120        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
121        outer NComp as Integer (Brief = "Number of chemical components", Lower = 1);
122       
123        VARIABLES
124        in Inlet as stream;
125        v as fraction;
126        x(NComp) as fraction(Brief = "Liquid Molar Fraction");
127        y(NComp) as fraction(Brief = "Vapour Molar Fraction");
128       
129        EQUATIONS
130        "Flash Calculation"
131        [v, x, y] = PP.FlashPH(Inlet.P, Inlet.h, Inlet.z);
132end
Note: See TracBrowser for help on using the repository browser.