Changeset 426
- Timestamp:
- Dec 10, 2007, 11:24:49 AM (15 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/eml/reactors/equil.mso
r421 r426 70 70 71 71 G(NComp) as energy_mol (Brief="Gibbs free-energy of formation"); 72 K(NReac) as Real (Brief="Equillibrium constant", Default=1.5);73 activ(NComp)as Real (Brief="Activity", Symbol="\hat{a}", Default=0.2);72 K(NReac) as Real (Brief="Equillibrium constant", Lower=0, Default=1.5); 73 activ(NComp)as Real (Brief="Activity", Symbol="\hat{a}", Lower=0, Default=0.2); 74 74 75 75 rate(NComp) as reaction_mol (Brief="Overall component rate of reaction"); … … 79 79 EQUATIONS 80 80 "Outlet stream" 81 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;81 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 82 82 83 83 "Mechanical equilibrium" … … 170 170 EQUATIONS 171 171 "Outlet stream" 172 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;172 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 173 173 174 174 "Mechanical equilibrium" -
trunk/eml/reactors/gibbs.mso
r421 r426 72 72 G(NComp) as energy_mol (Brief="Gibbs free-energy change of formation"); 73 73 lambda(NElem) as energy_mol (Brief="Lagrangian multiplier", Symbol="\lambda"); 74 activ(NComp) as Real (Brief="Activity", Symbol="\hat{a}", Lower= 1e-20);74 activ(NComp) as Real (Brief="Activity", Symbol="\hat{a}", Lower=0); 75 75 76 76 rate(NComp) as reaction_mol (Brief="Overall component rate of reaction"); … … 80 80 EQUATIONS 81 81 "Outlet stream" 82 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;82 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 83 83 84 84 "Mechanical equilibrium" … … 167 167 EQUATIONS 168 168 "Outlet stream" 169 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;169 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 170 170 171 171 "Mechanical equilibrium" -
trunk/eml/reactors/stoic.mso
r421 r426 61 61 EQUATIONS 62 62 "Outlet stream" 63 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;63 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 64 64 65 65 "Mechanical equilibrium" … … 112 112 EQUATIONS 113 113 "Outlet stream" 114 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;114 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 115 115 116 116 "Mechanical equilibrium" … … 158 158 EQUATIONS 159 159 "Rate of reaction" 160 rate* Vr= sumt(stoic*extent);160 rate*Tank.V = sumt(stoic*extent); 161 161 end 162 162 … … 177 177 EQUATIONS 178 178 "Rate of reaction" 179 rate* Vr= sumt(stoic*extent);179 rate*Tank.V = sumt(stoic*extent); 180 180 end 181 181 … … 203 203 EQUATIONS 204 204 "Reaction rate" 205 rate* Vr= sumt(stoic)/abs(sumt(stoic(KComp,:)))*Outletm.F*Outletm.z(KComp)*kconv;205 rate*Tank.V = sumt(stoic)/abs(sumt(stoic(KComp,:)))*Outletm.F*Outletm.z(KComp)*kconv; 206 206 end 207 207 … … 225 225 EQUATIONS 226 226 "Reaction rate" 227 rate* Vr= sumt(stoic)/abs(sumt(stoic(KComp,:)))*Outletm.F*Outletm.z(KComp)*kconv;228 end 227 rate*Tank.V = sumt(stoic)/abs(sumt(stoic(KComp,:)))*Outletm.F*Outletm.z(KComp)*kconv; 228 end -
trunk/eml/reactors/tank_basic.mso
r422 r426 30 30 31 31 using "streams"; 32 using "vol_tank"; 32 33 33 34 … … 43 44 in Inlet as stream (Brief="Inlet stream", PosX=0, PosY=0, Symbol="_{in}"); 44 45 Outletm as stream (Brief="Intermediary outlet stream", Symbol="_{outm}"); 45 46 Tank as vol_tank (Brief="Routine to volume tank calculation", Symbol="_{tank}"); 47 46 48 M(NComp)as mol (Brief="Component molar holdup"); 47 49 Mt as mol (Brief="Total component molar holdup"); 48 Vr as volume (Brief="Volume of reactional mixture");49 50 E as energy (Brief="Internal energy"); 50 51 Q as heat_rate(Brief="Reactor duty", Default=0); 51 52 Across as area (Brief="Tank cross section area");53 Level as length (Brief="Tank level");54 52 55 53 EQUATIONS … … 65 63 "Energy balance" 66 64 diff(E) = Inlet.F*Inlet.h - Outletm.F*Outletm.h + Q; 67 68 "Geometry"69 Vr = Across*Level;70 65 end 71 66 … … 86 81 87 82 "Volume constraint" 88 Vr= Mt*PP.VapourVolume(Outletm.T,Outletm.P,Outletm.z);83 Tank.V = Mt*PP.VapourVolume(Outletm.T,Outletm.P,Outletm.z); 89 84 90 85 "Total internal energy" … … 108 103 109 104 "Volume constraint" 110 Vr= Mt*PP.LiquidVolume(Outletm.T,Outletm.P,Outletm.z);105 Tank.V = Mt*PP.LiquidVolume(Outletm.T,Outletm.P,Outletm.z); 111 106 112 107 "Total internal energy" 113 E = Mt*Outletm.h - Outletm.P* Vr;108 E = Mt*Outletm.h - Outletm.P*Tank.V; 114 109 end 115 110 … … 130 125 OutletmL as liquid_stream (Brief="Intermediary liquid outlet stream", Symbol="_{outmL}"); 131 126 out OutletV as vapour_stream (Brief="Outlet vapour stream", Symbol="_{outV}"); 132 127 Tank as vol_tank (Brief="Routine to volume tank calculation", Symbol="_{tank}"); 128 133 129 M(NComp)as mol (Brief="Component molar holdup"); 134 130 ML as mol (Brief="Molar liquid holdup"); 135 131 MV as mol (Brief="Molar vapour holdup"); 136 Vr as volume (Brief="Volume of reactional mixture");137 132 E as energy (Brief="Internal energy"); 138 133 Q as heat_rate (Brief="Reactor duty", Default=0); 139 134 vL as volume_mol (Brief="Liquid Molar Volume"); 140 141 Across as area (Brief="Tank cross section area");142 Level as length (Brief="Tank level");143 135 144 136 EQUATIONS … … 168 160 169 161 "Total internal energy" 170 E = ML*OutletmL.h + MV*OutletV.h; #- OutletmL.P*V; P_tank*V_tank162 E = ML*OutletmL.h + MV*OutletV.h; 171 163 172 164 "Geometry constraint" 173 Vr= ML*vL + MV*PP.VapourVolume(OutletV.T,OutletV.P,OutletV.z);165 Tank.V = ML*vL + MV*PP.VapourVolume(OutletV.T,OutletV.P,OutletV.z); 174 166 175 167 … … 188 180 189 181 "Tank Level" 190 ML*vL = Across*Level;182 ML*vL = Tank.V; 191 183 end -
trunk/eml/reactors/yield.mso
r421 r426 70 70 EQUATIONS 71 71 "Outlet stream" 72 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;72 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 73 73 74 74 "Rate of reaction" 75 rate* Vr= Outletm.F*(yield/(1 + yield(KComp))*Outletm.z(KComp) - Outletm.z);75 rate*Tank.V = Outletm.F*(yield/(1 + yield(KComp))*Outletm.z(KComp) - Outletm.z); 76 76 77 77 "Instantaneous yield" … … 133 133 EQUATIONS 134 134 "Outlet stream" 135 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate* Vr;135 Outlet.F*Outlet.z = Outletm.F*Outletm.z + rate*Tank.V; 136 136 137 137 "Rate of reaction" 138 rate* Vr= Outletm.F*(yield/(1 + yield(KComp))*Outletm.z(KComp) - Outletm.z);138 rate*Tank.V = Outletm.F*(yield/(1 + yield(KComp))*Outletm.z(KComp) - Outletm.z); 139 139 140 140 "Molar reaction yield" -
trunk/sample/reactors/sample_equil.mso
r403 r426 82 82 R.Outlet.P = 1*'bar'; 83 83 R.Outlet.T = Fin.Outlet.T; 84 R.Outlet.F = 2*'mol/s'*sqrt(R. Level/'m');84 R.Outlet.F = 2*'mol/s'*sqrt(R.Tank.Level/'m'); 85 85 86 R.Across = 5*'m^2'; 86 R.Tank.Across = 5*'m^2'; 87 R.Tank.L = 1.5*'m'; 87 88 88 89 INITIAL -
trunk/sample/reactors/sample_gibbs.mso
r403 r426 81 81 Fin.Outlet.T = 1000*'K'; 82 82 83 R.Outlet.F = 5*'kmol/h'*sqrt(R. Level/'m');83 R.Outlet.F = 5*'kmol/h'*sqrt(R.Tank.Level/'m'); 84 84 R.Outlet.P = 1*'atm'; 85 85 R.Outlet.T = Fin.Outlet.T; 86 86 87 R.Across = 5*'m^2'; 87 R.Tank.Across = 5*'m^2'; 88 R.Tank.L = 1.5*'m'; 88 89 89 90 INITIAL -
trunk/sample/reactors/sample_stoic.mso
r421 r426 69 69 Fin.Outlet.T = 500*'K'; 70 70 71 R.Outlet.F = 1000*'kmol/h'*sqrt(R. Level/'m');71 R.Outlet.F = 1000*'kmol/h'*sqrt(R.Tank.Level/'m'); 72 72 R.Outlet.P = 10*'kgf/cm^2'; 73 73 R.Q = 0*'W'; 74 74 75 75 R.extent = [85, 65, 75]*'kmol/h'; 76 R.Across = 5*'m^2'; 76 R.Tank.Across = 150*'cm^2'; 77 R.Tank.L = 350*'cm'; 77 78 78 79 INITIAL … … 122 123 Fin.Outlet.T = 500*'K'; 123 124 124 R.Outlet.F = 1000*'kmol/h'*sqrt(R. Level/'m');125 R.Outlet.F = 1000*'kmol/h'*sqrt(R.Tank.Level/'m'); 125 126 R.Outlet.P = 10*'kgf/cm^2'; 126 127 R.Q = 0*'W'; 127 128 128 129 R.kconv = 0.9; 129 R.Across = 5*'m^2'; 130 R.Tank.Across = 150*'cm^2'; 131 R.Tank.L = 350*'cm'; 130 132 131 133 OPTIONS -
trunk/sample/reactors/sample_yield.mso
r418 r426 63 63 Fin.Outlet.T = 500*'K'; 64 64 65 R.Outlet.F = 300*'kmol/h'*sqrt(R. Level/'m');65 R.Outlet.F = 300*'kmol/h'*sqrt(R.Tank.Level/'m'); 66 66 R.Outlet.P = 10*'kgf/cm^2'; 67 67 R.Outlet.T = Fin.Outlet.T; … … 69 69 70 70 R.yield = [0.6, 1, 0.4, 0.5, 0.05]; 71 R.Across = 5*'m^2'; 71 R.Tank.Across = 50000*'cm^2'; 72 R.Tank.L = 10000*'cm'; 72 73 73 74 INITIAL
Note: See TracChangeset
for help on using the changeset viewer.