source: branches/newlanguage/eml/reactors/cstr.mso @ 169

Last change on this file since 169 was 169, checked in by gerson bicca, 15 years ago

updated cstr reactor model for the new language

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.3 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 cstr reactor
17*--------------------------------------------------------------------
18* Author: Paula B. Staudt
19* $Id: cstr.mso 169 2007-03-01 18:09:21Z bicca $
20*--------------------------------------------------------------------*#
21
22using "streams";
23
24Model cstr_basic
25
26ATTRIBUTES
27        Pallete         = false;
28        Brief           = "Brief";
29        Info            =
30        "write some information";
31       
32PARAMETERS
33
34outer   NComp                                           as Integer      (Brief = "Number Of Components");
35                NReac                                           as Integer      (Brief = "Number Of Reactions");
36                stoic(NComp, NReac)     as Real                 (Brief = "Stoichiometric Matrix");
37
38VARIABLES
39
40in              Inlet   as stream               (Brief="Inlet Stream");
41out     Outlet  as streamPH     (Brief="Outlet Stream");
42
43        q                       as heat_rate    (Brief="Heat");
44        Vr                      as volume               (Brief="Reacting Volume");
45        M                       as mol                  (Brief = "Molar total amount");
46        C(NComp)        as conc_mol     (Brief="Components concentration");
47
48EQUATIONS
49
50"Molar fraction"
51        Outlet.z * M = C * Vr;
52       
53"Vapourisation Fraction"
54        Outlet.v = Inlet.v;
55
56end
57
58Model cstr_yield as cstr_basic
59
60ATTRIBUTES
61        Pallete         = true;
62        Brief           = "Brief";
63        Info            =
64        "write some information";
65       
66PARAMETERS
67       
68        yield(NReac) as fraction (Brief="Yield");
69       
70EQUATIONS
71
72        Outlet.z*Outlet.F = Inlet.z*Inlet.F * sumt(stoic*(1-yield));
73
74"Reactor Energy Balance"
75        diff(M*Outlet.h) = Inlet.F*Inlet.h - Outlet.F*Outlet.h - q;
76
77end
78
79
80Model cstr as cstr_basic
81       
82ATTRIBUTES
83        Pallete         = true;
84        Brief           = "Brief";
85        Info            =
86        "write some information";
87       
88VARIABLES
89       
90        r(NReac)        as reaction_mol         (Brief="Molar Reaction Rate");
91        Hr(NReac)       as heat_reaction        (Brief="Heat Reaction");
92       
93EQUATIONS
94
95"Component Molar Balance"
96        diff(Outlet.z*M) = (Inlet.F*Inlet.z - Outlet.F*Outlet.z) + sumt(stoic*r)*Vr;
97
98"Reactor Energy Balance"
99        diff(M*Outlet.h) = Inlet.F*Inlet.h - Outlet.F*Outlet.h +sum(Hr*sum(stoic*r))*Vr - q;
100
101end
Note: See TracBrowser for help on using the repository browser.