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

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

Updated streams and flash models to the new language being proposed

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.4 KB
RevLine 
[79]1#*-------------------------------------------------------------------
2* EMSO Model Library (EML) Copyright (C) 2004 - 2007 ALSOC.
[1]3*
[79]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
[1]17*----------------------------------------------------------------------
[79]18* Author: Paula B. Staudt and Rafael de P. Soares
[1]19* $Id: streams.mso 117 2007-01-15 18:43:56Z rafael $
20*---------------------------------------------------------------------*#
21
22using "types";
23
24Model stream
[117]25        ATTRIBUTES
26        Pallete = false;
27        Brief = "General Material Stream";
28        Documentation =
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       
[1]33        PARAMETERS
[117]34        outer NComp as Integer (Brief = "Number of chemical components", Lower = 1);
[1]35
36        VARIABLES
37        F as flow_mol;
38        T as temperature;
39        P as pressure;
[117]40        z(NComp) as fraction(Brief = "Overall Molar Fraction");
[1]41        h as enth_mol;
[117]42        v as fraction(Brief = "Vapourisation fraction");
[1]43end
44
[117]45Model liquid_stream as stream
46        ATTRIBUTES
47        Pallete = false;
48        Brief = "Liquid Material Stream";
49        Documentation =
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
[1]54        PARAMETERS
[117]55        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
[1]56       
57        EQUATIONS
[117]58        "Liquid Enthalpy"
59        h = PP.LiquidEnthalpy(T, P, z);
60        "Liquid stream"
61        v = 0;
[1]62end
63
[117]64Model vapour_stream as stream
65        ATTRIBUTES
66        Pallete = false;
67        Brief = "Vapour Material Stream";
68        Documentation =
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
[1]73        PARAMETERS
[117]74        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
[1]75       
76        EQUATIONS
[117]77        "Vapour Enthalpy"
78        h = PP.VapourEnthalpy(T, P, z);
79        "Vapour stream"
80        v = 1;
[1]81end
82
[117]83Model source
84        ATTRIBUTES
85        Documentation =
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       
100        EQUATIONS
101        "Flash Calculation"
102        [Outlet.v, x, y] = PP.Flash(Outlet.T, Outlet.P, Outlet.z);
103        "Overall Enthalpy"
104        Outlet.h = (1-Outlet.v)*PP.LiquidEnthalpy(Outlet.T, Outlet.P, x) +
105                Outlet.v*PP.VapourEnthalpy(Outlet.T, Outlet.P, y);
106end
107
108Model sink
109        ATTRIBUTES
110        Documentation =
111        "Material stream sink.
112        This model should be used for boundary streams.";
113
114        PARAMETERS
115        outer PP as Plugin(Brief = "External Physical Properties", Type="PP");
116        outer NComp as Integer (Brief = "Number of chemical components", Lower = 1);
117       
118        VARIABLES
119        in Inlet as stream;
120        v as fraction;
121        x(NComp) as fraction(Brief = "Liquid Molar Fraction");
122        y(NComp) as fraction(Brief = "Vapour Molar Fraction");
123       
124        EQUATIONS
125        "Flash Calculation"
126        [v, x, y] = PP.PHFlash(Inlet.P, Inlet.h, Inlet.z);
127end
Note: See TracBrowser for help on using the repository browser.