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 | * Sample file for a isotermic batch reactor (model batch_isotermic). |
---|
17 | *---------------------------------------------------------------------- |
---|
18 | * Author: Paula Bettio Staudt |
---|
19 | * Rafael de Pelegrini Soares |
---|
20 | * $Id: sample_batch.mso 82 2006-12-08 20:11:44Z paula $ |
---|
21 | *-------------------------------------------------------------------*# |
---|
22 | |
---|
23 | using "reactors/batch"; |
---|
24 | |
---|
25 | FlowSheet SampleBatch |
---|
26 | PARAMETERS |
---|
27 | NComp as Integer(Brief="Number of components"); |
---|
28 | |
---|
29 | DEVICES |
---|
30 | feed as stream; |
---|
31 | reac as batch_isotermic; |
---|
32 | |
---|
33 | CONNECTIONS |
---|
34 | feed to reac.Inlet; |
---|
35 | |
---|
36 | PARAMETERS |
---|
37 | k1 as Real(Unit="(l/mol)^3.5/min", Default=18.7); |
---|
38 | k2 as Real(Unit="l/mol/min", Default=0.58); |
---|
39 | k3 as Real(Unit="(l/mol)^2/min", Default=0.09); |
---|
40 | k4 as Real(Unit="(l/mol)^1.5/min", Default=0.42); |
---|
41 | Ks as inv_conc_mol(Default=115.83); |
---|
42 | K as Real(Default=34.4); |
---|
43 | kla as flow_vol(Default=3.3); |
---|
44 | H as inv_conc_mol(Default=737); |
---|
45 | pCO2; |
---|
46 | |
---|
47 | VARIABLES |
---|
48 | C6 as conc_mol(Brief="Special component concentration"); |
---|
49 | |
---|
50 | SET |
---|
51 | NComp = 5; |
---|
52 | reac.NReac = 5; |
---|
53 | pCO2 = 0.9; |
---|
54 | |
---|
55 | reac.stoic(1,:) = [-2, 1, -1, -1, 0 ]; |
---|
56 | reac.stoic(2,:) = [-0.5, 0, 0, -1, -0.5]; |
---|
57 | reac.stoic(3,:) = [1, -1, 1, 0, 0 ]; |
---|
58 | reac.stoic(4,:) = [0, -1, 1, -2, 0 ]; |
---|
59 | reac.stoic(5,:) = [0, 1, -1, 0, 1 ]; |
---|
60 | |
---|
61 | EQUATIONS |
---|
62 | "Inlet Flow" |
---|
63 | feed.F = kla*(pCO2/H-reac.C(2)); |
---|
64 | |
---|
65 | "Reaction rates" |
---|
66 | reac.r(1)=k1 * reac.C(1)^4 * sqrt(reac.C(2)); |
---|
67 | reac.r(2)=k2 * reac.C(3) * reac.C(4); |
---|
68 | reac.r(3)=k2/K * reac.C(1) * reac.C(5); |
---|
69 | reac.r(4)=k3 * reac.C(1) * reac.C(4)^2; |
---|
70 | reac.r(5)=k4 * C6^2 * sqrt(reac.C(2)); |
---|
71 | |
---|
72 | "C6 Equilibrium" |
---|
73 | C6 = Ks * reac.C(1) * reac.C(4); |
---|
74 | |
---|
75 | SPECIFY |
---|
76 | "Feed conditions" |
---|
77 | feed.T = 300*"K"; |
---|
78 | feed.P = 1*"atm"; |
---|
79 | feed.h = 0*"J/mol"; |
---|
80 | feed.v = 0; |
---|
81 | feed.z = [0,1,0,0,0]; |
---|
82 | |
---|
83 | "Reactor volume" |
---|
84 | reac.Vr = 1 * "l"; |
---|
85 | |
---|
86 | INITIAL |
---|
87 | "Initial concentration" |
---|
88 | reac.C=[0.444, 0.00122, 0, 0.007, 0] * "mol/l"; |
---|
89 | |
---|
90 | OPTIONS |
---|
91 | time = [0:100:180*60]; |
---|
92 | end |
---|