1 | package Reactor
|
---|
2 | // Package for study of nonlinear reactor adapted from Seborg et al.
|
---|
3 | // author: Bernt Lie
|
---|
4 | // University College of Southeast Norway
|
---|
5 | // June 16, 2016
|
---|
6 | //
|
---|
7 | model ModReactor
|
---|
8 | // Reactor model in Ex 2.5 of Seborg et al. (2011),
|
---|
9 | // Process Dynamics and Control
|
---|
10 | //
|
---|
11 | // author: Bernt Lie
|
---|
12 | // University College of Southeast Norway
|
---|
13 | // June 16, 2016
|
---|
14 | //
|
---|
15 | // Parameters
|
---|
16 | parameter Real V = 100 "Reactor vessel volume; L";
|
---|
17 | parameter Real k0 = exp(8750/350) "Preexponential factor, reaction; 1/min";
|
---|
18 | parameter Real EdR = 8750 "Activation 'temperature'; K";
|
---|
19 | parameter Real dHr = -5e4 "Specific reaction enthalpy; J/mol";
|
---|
20 | parameter Real rho = 1e3 "Density, reactor fluid; g/L";
|
---|
21 | parameter Real cp = 0.239 "Specific heat capacity, reactor fluid; J/(g.K)";
|
---|
22 | parameter Real UA = 5e4 "Heat transfer parameter; J/(min.K)";
|
---|
23 | // Initial state parameter
|
---|
24 | parameter Real cA0 = 0.5 "Initial cA; mol/L";
|
---|
25 | parameter Real nA0 = cA0*V "Initial 'real' state nA; mol";
|
---|
26 | parameter Real T0 = 350 "Initial T; K";
|
---|
27 | // Declaring variables
|
---|
28 | // -- states
|
---|
29 | Real nA(start = nA0, fixed = true); // initial # moles of A in vessel; mol
|
---|
30 | Real T(start = T0, fixed = true); // initial temperature in vessel; K
|
---|
31 | // -- auxiliary variables
|
---|
32 | Real ndAi "Influent of A; mol/min";
|
---|
33 | Real ndAe "Effluent of A; mol/min";
|
---|
34 | Real ndAg "Generation rate of A; mol/min";
|
---|
35 | Real r "Rate of reaction; mol/(L.min)";
|
---|
36 | Real Qd "Heat flow from cooling fluid to reactor vessel; J/min";
|
---|
37 | // Inputs
|
---|
38 | input Real Vd "Volumetric flow through reactor vessel; L/min";
|
---|
39 | input Real cAi "Reactor vessel influent concentration of A; mol/min";
|
---|
40 | input Real Ti "Reactor vessel influent temperature; K";
|
---|
41 | input Real Tci "Cooling circuit influent temperature; K";
|
---|
42 | // Outputs
|
---|
43 | output Real cA "Reactor concentration; mol/L";
|
---|
44 | equation
|
---|
45 | nA = V*cA;
|
---|
46 | ndAi = Vd*cAi;
|
---|
47 | ndAe = Vd*cA;
|
---|
48 | ndAg = -V*r;
|
---|
49 | r = k0*exp(-EdR/T)*cA;
|
---|
50 | Qd = UA*(Tci-T);
|
---|
51 | //
|
---|
52 | der(nA) = ndAi - ndAe + ndAg;
|
---|
53 | V*rho*cp*der(T) = rho*cp*Vd*(Ti-T) + (-dHr)*r*V + Qd;
|
---|
54 | end ModReactor;
|
---|
55 | // End package
|
---|
56 | end Reactor;
|
---|