source: mso/sample/reactors/fogler/chap8/acetic_anhydride.mso @ 82

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

Updated reactors sample files header

  • Property svn:keywords set to Id
File size: 5.7 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* Production of acetic anhydride
17*----------------------------------------------------------------------
18* Solved problem from Fogler (1999)
19* Problem number: 8-7
20* Page: 421 (Brazilian version, 2002)
21*----------------------------------------------------------------------
22*
23*   Description:
24*               The acetic anhydride is produced for thermal craking of the
25*       acetone in a PFR:
26*                       CH3COCH3 -> CH2CO + CH4
27*               This sample calculates the molar conversion and temperature
28*       as function of the length in the tubular reactor. In the case I
29*       the operation is adiabatic and in the case II the reactor is
30*       jacketed.
31*
32*   Assumptions
33*               * first-order reaction with respect to acetone
34*               * steady-state
35*       * gaseous phase
36*
37*       Specify:
38*               * the inlet stream
39*               * the kinetic parameters
40*               * the parameters of components
41*
42*----------------------------------------------------------------------
43* Author: Christiano D. W. Guerra and Rodolfo Rodrigues
44* $Id: acetic_anhydride.mso 82 2006-12-08 20:11:44Z paula $
45*--------------------------------------------------------------------*#
46
47using "types";
48
49
50#*---------------------------------------------------------------------
51* Model of the thermal craking of acetone
52*--------------------------------------------------------------------*#
53
54Model thermal_cracking
55        PARAMETERS
56        NComp           as Integer              (Brief="Number of components", Lower=1);
57        stoic(NComp)as Real                     (Brief="Stoichiometric number");
58        Pa0             as pressure     (Brief="Input pressure of A");
59        Tr                      as temperature  (Brief="Reference temperature");
60        T0                      as temperature  (Brief="Inlet temperature");
61        Ta                      as temperature  (Brief="Internal temperature");
62        Hr(NComp)       as enth_mol             (Brief="Enthalpy of component");
63        R                       as Real                 (Brief="Universal gas constant", Unit="kPa*m^3/kmol/K", Default=8.314);
64        U                       as Real                 (Brief="Heat transfer coefficient", Unit="J/m^2/K/s");
65        a                       as Real                 (Brief="Heat transfer area per volume of tube", Unit="1/m");
66        alpha(NComp)as cp_mol           (Brief="Alpha term of Cp expression");
67        beta(NComp)     as Real                 (Brief="Beta term of Cp expression", Unit="J/mol/K^2");
68        gamma(NComp)as Real                     (Brief="Gamma term of Cp expression", Unit="J/mol/K^3");
69       
70        VARIABLES
71        Ca                      as conc_mol     (Brief="Molar concentration of A", Unit="kmol/m^3");
72        Ca0             as conc_mol     (Brief="Inlet molar concentration of A", Unit="mol/m^3");
73        Fa0             as flow_mol     (Brief="Inlet molar flow of A");
74        v0                      as flow_vol     (Brief="Volumetric flow", Unit="m^3/s");
75        r                       as reaction_mol (Brief="Rate of reaction", Unit="kmol/m^3/s");
76        k                       as Real                 (Brief="Specific rate of reaction", Unit="1/s");
77        T                       as temperature  (Brief="Temperature of reactor", Unit="K");
78        X                       as fraction     (Brief="Molar conversion", Lower=0);
79        V                       as volume               (Brief="Volume", Unit="m^3");
80        eps                     as Real                 (Brief="Parameter epsilon");
81        Cp(NComp)       as cp_mol               (Brief="Molar heat capacity", Unit="J/mol/K");
82        DHr                     as enth_mol             (Brief="Enthalpy of reaction", Unit="kJ/mol"); 
83       
84        EQUATIONS
85        "Change time in V"
86        V = time*"m^3/s";
87       
88        "Molar balance"
89        diff(X) = (-r)/Fa0*"m^3/s";
90       
91        "Rate of reaction"
92        r = -k*Ca;
93       
94        "Specific rate of reaction"
95        k = exp(34.34)*exp(-34222*"K"/T)*"1/s";
96       
97        "Concentration of component A"
98        Ca = Ca0*(1 - X)/(1 + eps*X)*T0/T;
99       
100        "Parameter epsilon"
101        eps = sum(stoic); # yAo = 1
102       
103        "Inlet molar concentration of A"
104        Ca0 = Pa0/(R*T0);
105       
106        "Volumetric flow"
107        Fa0 = Ca0*v0;
108       
109        "Energy balance"
110        diff(T)*(Fa0*(Cp(1) + X*sumt(stoic*Cp))) = (U*a*(Ta - T) + (-r)*(-DHr))*"m^3/s";
111
112        "Enthalpy of reaction"
113        DHr = sumt(stoic*Hr) + sumt(stoic*alpha)*(T - Tr) + sumt(stoic*beta)/2*(T^2 - Tr^2)
114                +  sumt(stoic*gamma)/3*(T^3 - Tr^3);
115       
116        "Molar heat capacity"
117        Cp  = alpha + beta*T + gamma*T^2;
118end
119
120
121#*---------------------------------------------------------------------
122* Case I: In an adiabatic PFR
123*--------------------------------------------------------------------*#
124
125FlowSheet adiabatic_reactor
126        DEVICES
127        R as thermal_cracking;
128       
129        SET
130        R.NComp = 3; # A: acetone, B: ketene and C: methane
131        R.stoic = [-1.0, 1.0, 1.0]; # A -> B + C
132       
133        R.Pa0 = 162*"kPa";
134       
135        R.alpha = [26.63,  20.04, 13.39]*"J/mol/K";
136        R.beta  = [0.183, 0.0945, 0.077]*"J/mol/K^2";
137        R.gamma = [-45.86e-6, -30.95e-6, -18.71e-6]*"J/mol/K^3";
138       
139        R.Hr = [-216.67, -61.09, -74.81]*"kJ/mol";
140        R.Tr = 298*"K";
141        R.T0 = 1035*"K";
142        R.Ta = 1150*"K";
143        R.U  = 0.0*"J/m^2/K/s";
144        R.a  = 150*"1/m";
145       
146        SPECIFY
147        "Inlet molar flow"
148        R.Fa0 = (8000/58)*"kmol/h";
149       
150        INITIAL
151        "Molar conversion"
152        R.X = 0.0;
153        "Temperature"
154        R.T = 1035*"K";
155       
156        OPTIONS
157        time = [0:0.05:5];
158end
159
160
161#*---------------------------------------------------------------------
162* Case II: In an jacketed PFR
163*--------------------------------------------------------------------*#
164
165FlowSheet jacketed_reactor
166        DEVICES
167        R as thermal_cracking;
168       
169        SET
170        R.NComp = 3; # A: acetone, B: ketene and C: methane
171        R.stoic = [-1.0, 1.0, 1.0]; # A -> B + C
172       
173        R.Pa0 = 162*"kPa";
174       
175        R.alpha = [26.63,  20.04, 13.39]*"J/mol/K";
176        R.beta  = [0.183, 0.0945, 0.077]*"J/mol/K^2";
177        R.gamma = [-45.86e-6, -30.95e-6, -18.71e-6]*"J/mol/K^3";
178       
179        R.Hr = [-216.67, -61.09, -74.81]*"kJ/mol";
180        R.Tr = 298*"K";
181        R.T0 = 1035*"K";
182        R.Ta = 1150*"K";
183        R.U  = 110*"J/m^2/K/s";
184        R.a  = 150*"1/m";
185       
186        SPECIFY
187        "Inlet molar flow"
188        R.Fa0 = (18.8*2e-3)*"mol/s";
189       
190        INITIAL
191        "Molar conversion"
192        R.X = 0.0;
193        "Temperature"
194        R.T = 1035*"K";
195       
196        OPTIONS
197        time = [0:1e-5:1e-3];
198end
Note: See TracBrowser for help on using the repository browser.