Changeset 117 for branches/newlanguage
- Timestamp:
- Jan 15, 2007, 4:43:56 PM (17 years ago)
- Location:
- branches/newlanguage
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/newlanguage/eml/stage_separators/flash.mso
r72 r117 41 41 Model flash 42 42 PARAMETERS 43 ext PP as CalcObject;44 ext NComp as Integer; 43 outer PP as Plugin(Brief = "External Physical Properties"); 44 outer NComp as Integer (Brief = "Number of chemical components", Lower = 1); 45 45 V as volume(Brief="Total Volume of the flash"); 46 46 Mw(NComp) as molweight; … … 51 51 52 52 VARIABLES 53 in Inlet as stream; #(Brief="Feed Stream");54 out OutletL as stream_therm; #(Brief="Liquid outlet stream");55 out OutletV as stream_therm; #(Brief="Vapour outlet stream");56 in Q as heat_rate (Brief="Rate of heat supply"); 53 in Inlet as stream(Brief="Feed Stream"); 54 out OutletL as liquid_stream(Brief="Liquid outlet stream"); 55 out OutletV as vapour_stream(Brief="Vapour outlet stream"); 56 in Q as heat_rate (Brief="Rate of heat supply"); 57 57 58 58 M(NComp) as mol (Brief="Molar Holdup in the tray"); … … 101 101 "Liquid Level" 102 102 ML* vL = Across * Level; 103 104 "vaporization fraction "105 OutletV.v = 1.0;106 "vaporization fraction "107 OutletL.v = 0.0;108 109 103 end 110 104 … … 112 106 * Model of a Steady State flash 113 107 *---------------------------------------------------------------------*# 114 Model flash_ Steady108 Model flash_steady 115 109 PARAMETERS 116 ext PP as CalcObject; 117 ext NComp as Integer; 110 outer PP as Plugin(Brief = "External Physical Properties"); 118 111 119 112 VARIABLES 120 in Inlet as stream; #(Brief="Feed Stream");121 out OutletL as stream_therm; #(Brief="Liquid outlet stream");122 out OutletV as stream_therm; #(Brief="Vapour outlet stream");123 in Q as heat_rate (Brief="Rate of heat supply");113 in Inlet as stream(Brief="Feed Stream"); 114 out OutletL as liquid_stream(Brief="Liquid outlet stream"); 115 out OutletV as vapour_stream(Brief="Vapour outlet stream"); 116 in Q as heat_rate (Brief="Rate of heat supply"); 124 117 vfrac as fraction; 125 118 … … 130 123 "Global Molar Balance" 131 124 Inlet.F = OutletV.F + OutletL.F; 125 "Vaporisation Fraction" 132 126 OutletV.F = Inlet.F * vfrac; 133 127 134 128 "Energy Balance" 135 129 Inlet.F*Inlet.h + Q = OutletL.F*OutletL.h + OutletV.F*OutletV.h; … … 140 134 "Mechanical Equilibrium" 141 135 OutletV.P = OutletL.P; 142 143 "vaporization fraction "144 OutletV.v = 1.0;145 "vaporization fraction "146 OutletL.v = 0.0;147 136 end 148 -
branches/newlanguage/eml/streams.mso
r79 r117 23 23 24 24 Model stream 25 ATTRIBUTES 26 Pallete = false; 27 Brief = "General Material Stream"; 28 Documentation = 29 "This is the basic building block for the EML models. 30 Every model should have input and output streams derived 31 from this model."; 32 25 33 PARAMETERS 26 extNComp as Integer (Brief = "Number of chemical components", Lower = 1);34 outer NComp as Integer (Brief = "Number of chemical components", Lower = 1); 27 35 28 36 VARIABLES … … 30 38 T as temperature; 31 39 P as pressure; 32 z(NComp) as fraction (Brief = "Molar Fraction");40 z(NComp) as fraction(Brief = "Overall Molar Fraction"); 33 41 h as enth_mol; 34 v as fraction 42 v as fraction(Brief = "Vapourisation fraction"); 35 43 end 36 44 37 Model stream_therm as stream 45 Model liquid_stream as stream 46 ATTRIBUTES 47 Pallete = false; 48 Brief = "Liquid Material Stream"; 49 Documentation = 50 "Model for liquid material streams. 51 This model should be used only when the phase of the stream 52 is known ''a priori''."; 53 38 54 PARAMETERS 39 ext PP as CalcObject (Brief = "External Physical Properties");55 outer PP as Plugin(Brief = "External Physical Properties", Type="PP"); 40 56 41 57 EQUATIONS 42 h = (1-v)*PP.LiquidEnthalpy(T, P, z) + v*PP.VapourEnthalpy(T, P, z); 58 "Liquid Enthalpy" 59 h = PP.LiquidEnthalpy(T, P, z); 60 "Liquid stream" 61 v = 0; 43 62 end 44 63 45 Model streamTP as stream_therm 64 Model vapour_stream as stream 65 ATTRIBUTES 66 Pallete = false; 67 Brief = "Vapour Material Stream"; 68 Documentation = 69 "Model for vapour material streams. 70 This model should be used only when the phase of the stream 71 is known ''a priori''."; 72 46 73 PARAMETERS 47 ext PP as CalcObject (Brief = "External Physical Properties");74 outer PP as Plugin(Brief = "External Physical Properties", Type="PP"); 48 75 49 76 EQUATIONS 50 v = PP.VapourFraction(T, P, z); 77 "Vapour Enthalpy" 78 h = PP.VapourEnthalpy(T, P, z); 79 "Vapour stream" 80 v = 1; 51 81 end 52 82 83 Model source 84 ATTRIBUTES 85 Documentation = 86 "Material stream source. 87 This model should be used for boundary streams. 88 Usually these streams are known and come from another process 89 units."; 90 91 PARAMETERS 92 outer PP as Plugin(Brief = "External Physical Properties", Type="PP"); 93 outer NComp as Integer (Brief = "Number of chemical components", Lower = 1); 94 95 VARIABLES 96 out Outlet as stream; 97 x(NComp) as fraction(Brief = "Liquid Molar Fraction"); 98 y(NComp) as fraction(Brief = "Vapour Molar Fraction"); 99 100 EQUATIONS 101 "Flash Calculation" 102 [Outlet.v, x, y] = PP.Flash(Outlet.T, Outlet.P, Outlet.z); 103 "Overall Enthalpy" 104 Outlet.h = (1-Outlet.v)*PP.LiquidEnthalpy(Outlet.T, Outlet.P, x) + 105 Outlet.v*PP.VapourEnthalpy(Outlet.T, Outlet.P, y); 106 end 107 108 Model sink 109 ATTRIBUTES 110 Documentation = 111 "Material stream sink. 112 This model should be used for boundary streams."; 113 114 PARAMETERS 115 outer PP as Plugin(Brief = "External Physical Properties", Type="PP"); 116 outer NComp as Integer (Brief = "Number of chemical components", Lower = 1); 117 118 VARIABLES 119 in Inlet as stream; 120 v as fraction; 121 x(NComp) as fraction(Brief = "Liquid Molar Fraction"); 122 y(NComp) as fraction(Brief = "Vapour Molar Fraction"); 123 124 EQUATIONS 125 "Flash Calculation" 126 [v, x, y] = PP.PHFlash(Inlet.P, Inlet.h, Inlet.z); 127 end -
branches/newlanguage/sample/stage_separators/sample_flash.mso
r86 r117 28 28 FlowSheet flash_Test 29 29 PARAMETERS 30 PP as CalcObject(Brief="Physical Properties",File="vrpp");31 NComp 30 PP as Plugin(Brief="Physical Properties",File="vrpp"); 31 NComp as Integer; 32 32 33 33 VARIABLES … … 42 42 DEVICES 43 43 fl as flash; 44 s1 as s treamTP;44 s1 as source; 45 45 46 46 CONNECTIONS … … 52 52 53 53 SPECIFY 54 s1. F = 496.3 * "kmol/h";55 s1. T = 338 * "K";56 s1. P = 507.1 * "kPa";54 s1.Outlet.F = 496.3 * "kmol/h"; 55 s1.Outlet.T = 338 * "K"; 56 s1.Outlet.P = 507.1 * "kPa"; 57 57 #s1.v = 0.1380; 58 s1. z = [0.2379,0.3082,0.09958,0.1373,0.08872,0.1283];58 s1.Outlet.z = [0.2379,0.3082,0.09958,0.1373,0.08872,0.1283]; 59 59 60 60 fl.OutletV.F = 68.5 * "kmol/h"; … … 75 75 76 76 OPTIONS 77 relativeAccuracy = 1e-7; 78 absoluteAccuracy = 1e-9; 79 #mode="steady"; 80 time = [0:0.1:20]*"h"; 77 RelativeAccuracy = 1e-7; 78 AbsoluteAccuracy = 1e-9; 79 Dynamic = true; 80 TimeStep = 0.1; 81 TimeEnd = 20; 82 TimeUnit = "h"; 81 83 end 82 84 … … 84 86 FlowSheet flashSteady_Test 85 87 PARAMETERS 86 PP as CalcObject(Brief="Physical Properties",File="vrpp");87 NComp 88 PP as Plugin(Brief="Physical Properties",File="vrpp"); 89 NComp as Integer; 88 90 89 91 VARIABLES … … 97 99 98 100 DEVICES 99 fl as flash_ Steady;100 s1 as s treamTP;101 fl as flash_steady; 102 s1 as source; 101 103 102 104 CONNECTIONS … … 104 106 Q to fl.Q; 105 107 106 107 108 SPECIFY 108 s1. F = 496.3 * "kmol/h";109 s1. T = 338 * "K";110 s1. P = 507.1 * "kPa";111 #s1. v = 0.1380;112 s1. z = [0.2379,0.3082,0.09959,0.1373,0.08872,0.1283];109 s1.Outlet.F = 496.3 * "kmol/h"; 110 s1.Outlet.T = 338 * "K"; 111 s1.Outlet.P = 507.1 * "kPa"; 112 #s1.Outlet.v = 0.1380; 113 s1.Outlet.z = [0.2379,0.3082,0.09959,0.1373,0.08872,0.1283]; 113 114 114 115 fl.OutletL.P = 2.5 * "atm"; … … 118 119 119 120 OPTIONS 120 mode = "steady";121 Dynamic = false; 121 122 end
Note: See TracChangeset
for help on using the changeset viewer.