Changeset 490
- Timestamp:
- Apr 3, 2008, 8:38:09 PM (16 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/eml/heat_exchangers/HEX_Engine.mso
r474 r490 166 166 hshell as heat_trans_coeff (Brief="Shell Side Film Coefficient",Default=1,Lower=1e-12, Upper=1e6); 167 167 Phi as positive (Brief="Phi Correction",Default=1,Lower=1e-3); 168 Ji as constant (Brief="Shell Side Ji Factor",Default=0.05);169 Jr as positive (Brief="Shell Side Jr Factor",Lower=10e-6);170 Jl as positive (Brief="Shell Side Jl Factor",Lower=10e-6);171 Jb as positive (Brief="Shell Side Jb Factor",Lower=10e-6);172 Jc as positive (Brief="Shell Side Jc Factor",Lower=10e-6);173 Js as positive (Brief="Shell Side Js Factor",Lower=10e-6);174 Jtotal as positive (Brief="Shell Side Jtotal Factor",Lower=10e-6);175 Sm as area (Brief="Shell Side Cross Flow Area",Default=0.05,Lower=10e-6);176 177 168 end 178 169 … … 181 172 ATTRIBUTES 182 173 Pallete = false; 183 Brief = "to be documented"; 184 Info = 185 "to be documented"; 186 187 VARIABLES 188 Ls as length (Brief="Central Baffle Spacing",Lower=1e-8); 189 Lsi as length (Brief="Inlet Baffle Spacing",Lower=1e-8); 190 Lso as length (Brief="Outlet Baffle Spacing",Lower=1e-8); 174 Brief = "Main variables in the Baffle section of a shell and tube heat exchanger."; 175 176 PARAMETERS 177 178 BaffleCut as Integer (Brief="Baffle Cut",Default=25,Lower=25); 179 NumberOfBaffles as Real (Brief="Number of Baffles", Symbol = "N_{baffles}", Lower=1); 180 181 VARIABLES 182 183 Inlet_Spacing as length (Brief="Inlet Baffle Spacing",Lower=1e-8, Symbol = "L_{si}", DisplayUnit ='mm' ); 184 Central_Spacing as length (Brief="Central Baffle Spacing",Lower=1e-8, Symbol = "L_s", DisplayUnit ='mm' ); 185 Outlet_Spacing as length (Brief="Outlet Baffle Spacing",Lower=1e-8, Symbol = "L_{so}", DisplayUnit ='mm' ); 186 187 end 188 189 Model Clearances_Main 190 191 ATTRIBUTES 192 Pallete = false; 193 Brief = "Main parameters for diametral clearances in a shell and tube heat exchanger."; 194 195 PARAMETERS 196 197 SealStrip as Integer (Brief="Number of Sealing Strips pairs",Lower=1); 198 Hinozzle_Shell as length (Brief="Height Under Shell Inlet Nozzle",Lower=1E-6); 199 Honozzle_Shell as length (Brief="Height Under Shell Outlet Nozzle",Lower=1E-6); 200 BundleToShell as length (Brief="Bundle-to-Shell Clearance", Symbol = "L_{cf}", Lower=1E-8); 201 BaffleToShell as length (Brief="Baffle-to-Shell Clearance", Symbol = "L_{cd}", Lower=1E-8); 202 TubeToBaffle as length (Brief="Tube-to-Baffle Clearance", Symbol = "L_{td}", Lower=1E-8); 191 203 192 204 end … … 274 286 ATTRIBUTES 275 287 Pallete = false; 276 Brief = "to be documented"; 277 Info = 278 "to be documented"; 279 280 VARIABLES 281 PressureDrop as Tube_Pdrop (Brief="Tube Side Pressure Drop"); 282 HeatTransfer as Tube_Heat_Transfer (Brief="Tube Side Heat Transfer"); 283 Properties as Physical_Properties (Brief="Tube Side Properties"); 288 Brief = "Main variables in the Tube Side section of a shell and tube heat exchanger."; 289 290 PARAMETERS 291 292 NumberOfTubes as Integer (Brief="Total Number of Tubes in Shell",Default=100,Lower=1); 293 Tubepasses as Integer (Brief="Number of Tube Passes", Lower=1); 294 TubeLength as length (Brief="Effective Tube Length",Lower=0.1); 295 TubePitch as length (Brief="Tube Pitch",Lower=1E-8); 296 Kwall as conductivity (Brief="Tube Wall Material Thermal Conductivity"); 297 TubeOD as length (Brief="Tube Outside Diameter",Lower=1E-6); 298 TubeID as length (Brief="Tube Inside Diameter",Lower=1E-6); 299 Fouling as positive (Brief="Tubeside Fouling Resistance",Unit='m^2*K/kW', Symbol = "Rf_{tube}", Default=1E-6 , Lower=0); 300 InletNozzleID as length (Brief="Inlet Nozzle Inside Diameter", Lower=1E-6); 301 OutletNozzleID as length (Brief="Outlet Nozzle Inside Diameter", Lower=1E-6); 302 303 VARIABLES 304 305 PressureDrop as Tube_Pdrop (Brief="Tube Side Pressure Drop"); 306 HeatTransfer as Tube_Heat_Transfer (Brief="Tube Side Heat Transfer"); 307 Properties as Physical_Properties (Brief="Tube Side Properties"); 284 308 285 309 end … … 289 313 ATTRIBUTES 290 314 Pallete = false; 291 Brief = "to be documented"; 292 Info = 293 "to be documented"; 294 295 VARIABLES 296 PressureDrop as Shell_Pdrop (Brief="Shell Side Pressure Drop"); 297 HeatTransfer as Shell_Heat_Transfer (Brief= "Shell Side Heat Transfer"); 298 Properties as Physical_Properties (Brief="ShellSide Properties"); 315 Brief = "Main variables in the Shell Side section of a shell and tube heat exchanger."; 316 317 PARAMETERS 318 319 ShellID as length (Brief="Inside Shell Diameter",Lower=1E-6); 320 Fouling as positive (Brief="Shellside Fouling Resistance",Unit='m^2*K/kW', Symbol = "Rf_{shell}", Default=1E-6 , Lower=0); 321 InletNozzleID as length (Brief="Inlet Nozzle Inside Diameter", Lower=1E-6); 322 OutletNozzleID as length (Brief="Outlet Nozzle Inside Diameter", Lower=1E-6); 323 324 VARIABLES 325 326 PressureDrop as Shell_Pdrop (Brief="Shell Side Pressure Drop"); 327 HeatTransfer as Shell_Heat_Transfer (Brief= "Shell Side Heat Transfer"); 328 Properties as Physical_Properties (Brief="ShellSide Properties"); 299 329 300 330 end -
trunk/eml/heat_exchangers/HeatExchangerDetailed.mso
r420 r490 22 22 ATTRIBUTES 23 23 Pallete = false; 24 Brief = "Basic Model for Detailed Shell and Tube s Heat Exchangers";24 Brief = "Basic Model for Detailed Shell and Tube Heat Exchanger."; 25 25 Info = 26 26 "to be documented."; … … 28 28 PARAMETERS 29 29 30 HotSide as Switcher (Brief="Hot Side in the Exchanger",Valid=["shell","tubes"],Default="shell");30 HotSide as Switcher (Brief="Hot Side in the Exchanger",Valid=["shell","tubes"],Default="shell"); 31 31 ShellType as Switcher (Brief="TEMA Designation",Valid=["Eshell","Fshell"],Default="Eshell"); 32 32 33 Pattern as Switcher (Brief="Tube Layout Characteristic Angle",Valid=["Triangle","Rotated Square","Square"],Default="Triangle"); 34 33 35 VARIABLES 34 36 35 in InletTube as stream (Brief="Inlet Tube Stream", PosX=0.08, PosY=0, Symbol="_{inTube}"); 36 out OutletTube as streamPH (Brief="Outlet Tube Stream", PosX=0.08, PosY=1, Symbol="_{outTube}"); 37 in InletShell as stream (Brief="Inlet Shell Stream", PosX=0.2237, PosY=0, Symbol="_{inShell}"); 38 out OutletShell as streamPH (Brief="Outlet Shell Stream", PosX=0.8237, PosY=1, Symbol="_{outShell}"); 39 40 Details as Details_Main (Brief="Details in Heat Exchanger"); 41 Tubes as Tube_Side_Main (Brief="Tube Side"); 42 Shell as Shell_Side_Main (Brief="Shell Side"); 43 Baffles as Baffles_Main (Brief="Baffles"); 44 37 Tubes as Tube_Side_Main (Brief="Tube Side Section"); 38 Shell as Shell_Side_Main (Brief="Shell Side Section"); 39 Baffles as Baffles_Main (Brief="Baffle Section", Symbol=" "); 40 Clearances as Clearances_Main (Brief="Diametral Clearances", Symbol=" "); 41 42 in InletTube as stream (Brief="Inlet Tube Stream", PosX=0.08, PosY=0, Symbol="_{inTube}"); 43 out OutletTube as streamPH (Brief="Outlet Tube Stream", PosX=0.08, PosY=1, Symbol="_{outTube}"); 44 in InletShell as stream (Brief="Inlet Shell Stream", PosX=0.2237, PosY=0, Symbol="_{inShell}"); 45 out OutletShell as streamPH (Brief="Outlet Shell Stream", PosX=0.8237, PosY=1, Symbol="_{outShell}"); 46 Details as Details_Main (Brief="Details in Heat Exchanger"); 47 45 48 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 46 49 # Auxiliar Variables - Must be hidden 47 50 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 48 Nc as Real (Brief = "Number of Tube rows Crossed in one Crossflow Section",Lower=1); 49 Ncw as Real (Brief = "Number of Effective Crossflow rows in Each Window",Lower=1); 50 a as Real (Brief = "Variable for calculating Ji heat transfer correction Factor",Lower=1e-3); 51 b as Real (Brief = "Variable for calculating shell side pressure drop friction Factor",Lower=1e-3); 52 Rb as Real (Brief = "ByPass Correction Factor for Pressure Drop",Lower=1e-3); 53 Rss as Real (Brief = "Correction Factor for Pressure Drop",Lower=1e-3); 54 Rspd as Real (Brief = "Pressure Drop Correction Factor for Unequal Baffle Spacing",Lower=1e-3); 55 mw as Real (Brief = "Mass Velocity in Window Zone", Unit='kg/m^2/s'); 56 51 Nc as Real (Brief = "Number of Tube rows Crossed in one Crossflow Section", Hidden = true, Lower=1); 52 Ncw as Real (Brief = "Number of Effective Crossflow rows in Each Window", Hidden = true, Lower=1); 53 a as Real (Brief = "Variable for calculating Ji heat transfer correction Factor", Hidden = true, Lower=1e-3); 54 b as Real (Brief = "Variable for calculating shell side pressure drop friction Factor", Hidden = true, Lower=1e-3); 55 Rb as Real (Brief = "ByPass Correction Factor for Pressure Drop", Hidden = true, Lower=1e-3); 56 Rss as Real (Brief = "Correction Factor for Pressure Drop", Hidden = true, Lower=1e-3); 57 Rspd as Real (Brief = "Pressure Drop Correction Factor for Unequal Baffle Spacing", Hidden = true, Lower=1e-3); 58 mw as Real (Brief = "Mass Velocity in Window Zone", Hidden = true, Unit='kg/m^2/s'); 59 Ji as constant (Brief="Shell Side Ji Factor", Hidden = true, Default=0.05); 60 Jr as positive (Brief="Shell Side Jr Factor", Hidden = true, Lower=10e-6); 61 Jl as positive (Brief="Shell Side Jl Factor", Hidden = true, Lower=10e-6); 62 Jb as positive (Brief="Shell Side Jb Factor", Hidden = true, Lower=10e-6); 63 Jc as positive (Brief="Shell Side Jc Factor", Hidden = true, Lower=10e-6); 64 Js as positive (Brief="Shell Side Js Factor", Hidden = true, Lower=10e-6); 65 Jtotal as positive (Brief="Shell Side Jtotal Factor", Hidden = true, Lower=10e-6); 66 Sm as area (Brief="Shell Side Cross Flow Area", Hidden = true, Default=0.05,Lower=10e-6); 67 57 68 PARAMETERS 58 outer PP as Plugin (Brief="External Physical Properties",Type = "PP");69 outer PP as Plugin (Brief="External Physical Properties",Type = "PP"); 59 70 outer NComp as Integer (Brief="Number of Components"); 60 71 61 Pi as constant (Brief="Pi Number",Default=3.14159265); 62 M(NComp) as molweight (Brief="Component Mol Weight"); 63 64 TubeFlowRegime as Switcher (Brief="Tube Side Flow Regime ",Valid=["laminar","transition","turbulent"],Default="laminar"); 65 ShellFlowRegime as Switcher (Brief="Shell Side Flow Regime ",Valid=["deep laminar","laminar","turbulent"],Default="deep laminar"); 66 ShellRange as Switcher (Brief="Shell Side Flow Regime Range for Correction Factor",Valid=["range1","range2","range3", "range4","range5"],Default="range1"); 67 Side as Switcher (Brief="Flag for Fluid Alocation ",Valid=["shell","tubes"],Default="shell"); 68 LaminarCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Laminar Flow",Valid=["Hausen","Schlunder"],Default="Hausen"); 69 TransitionCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Transition Flow",Valid=["Gnielinski","ESDU"],Default="Gnielinski"); 70 TurbulentCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Turbulent Flow",Valid=["Petukhov","SiederTate"],Default="Petukhov"); 72 M(NComp) as molweight (Brief="Component Mol Weight"); 73 74 TubeFlowRegime as Switcher (Brief="Tube Side Flow Regime ",Valid=["laminar","transition","turbulent"],Default="laminar"); 75 ShellFlowRegime as Switcher (Brief="Shell Side Flow Regime ",Valid=["deep laminar","laminar","turbulent"],Default="deep laminar"); 76 ShellRange as Switcher (Brief="Shell Side Flow Regime Range for Correction Factor",Valid=["range1","range2","range3", "range4","range5"],Default="range1"); 77 Side as Switcher (Brief="Flag for Fluid Alocation ",Valid=["shell","tubes"],Default="shell"); 78 LaminarCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Laminar Flow",Valid=["Hausen","Schlunder"],Default="Hausen"); 79 TransitionCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Transition Flow",Valid=["Gnielinski","ESDU"],Default="Gnielinski"); 80 TurbulentCorrelation as Switcher (Brief="Tube Heat Transfer Correlation in Turbulent Flow",Valid=["Petukhov","SiederTate"],Default="Petukhov"); 71 81 72 82 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 73 # Shell Geometrical Parameters83 # Auxiliar Parameters - Must be hidden 74 84 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 75 Tpass as Integer (Brief="Number of Tube Passes",Lower=1); 76 Nss as Integer (Brief="Number of Sealing Strips pairs",Lower=1); 77 Dishell as length (Brief="Inside Shell Diameter",Lower=10e-6); 78 Donozzle_Shell as length (Brief="Shell Outlet Nozzle Diameter",Lower=10e-6); 79 Dinozzle_Shell as length (Brief="Shell Inlet Nozzle Diameter",Lower=10e-6); 80 Aonozzle_Shell as area (Brief="Shell Outlet Nozzle Area",Lower=10e-6); 81 Ainozzle_Shell as area (Brief="Shell Inlet Nozzle Area",Lower=10e-6); 82 Aeonozzle_Shell as area (Brief="Shell Outlet Escape Area Under Nozzle",Lower=10e-6); 83 Aeinozzle_Shell as area (Brief="Shell Inlet Escape Area Under Nozzle",Lower=10e-6); 84 Hinozzle_Shell as length (Brief="Height Under Shell Inlet Nozzle",Lower=10e-6); 85 Honozzle_Shell as length (Brief="Height Under Shell Outlet Nozzle",Lower=10e-6); 86 Lcf as length (Brief="Bundle-to-Shell Clearance",Lower=10e-8); 87 88 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 89 # Tubes Geometrical Parameters 90 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 91 Ntt as Integer (Brief="Total Number of Tubes in Shell",Default=100,Lower=1); 92 Pattern as Switcher (Brief="Tube Layout Characteristic Angle",Valid=["Triangle","Rotated Square","Square"],Default="Triangle"); 93 Ltube as length (Brief="Effective Tube Length",Lower=0.1); 94 pitch as length (Brief="Tube Pitch",Lower=1e-8); 95 Kwall as conductivity (Brief="Tube Wall Material Thermal Conductivity"); 96 Dotube as length (Brief="Tube Outside Diameter",Lower=10e-6); 97 Ditube as length (Brief="Tube Inside Diameter",Lower=10e-6); 98 Donozzle_Tube as length (Brief="Tube Outlet Nozzle Diameter",Lower=10e-6); 99 Dinozzle_Tube as length (Brief="Tube Inlet Nozzle Diameter",Lower=10e-6); 100 Aonozzle_Tube as area (Brief="Tube Outlet Nozzle Area",Lower=10e-6); 101 Ainozzle_Tube as area (Brief="Tube Inlet Nozzle Area",Lower=10e-6); 102 Kinlet_Tube as positive (Brief="Tube Inlet Nozzle Pressure Loss Coeff",Default=1.1); 103 Koutlet_Tube as positive (Brief="Tube Outlet Nozzle Pressure Loss Coeff",Default=0.7); 104 105 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 106 # Baffles Geometrical Parameters 107 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 108 Bc as Integer (Brief="Baffle Cut",Default=25,Lower=25); 109 Nb as Real (Brief="Number of Baffles",Lower=1); 110 Lcd as length (Brief="Baffle-to-Shell Clearance",Lower=10e-8); 111 Ltd as length (Brief="Tube-to-Bafflehole Clearance",Lower=10e-8); 112 113 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 114 # Fouling 115 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 116 Rfi as positive (Brief="Inside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0); 117 Rfo as positive (Brief="Outside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0); 118 119 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 120 # Auxiliar Parameters - Must be hidden 121 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# 122 Ods as Real (Brief="Baffle Cut Angle in Degrees"); 123 Octl as Real (Brief="Baffle Cut Angle relative to the centerline in Degrees"); 124 Ftw as Real (Brief="Fraction of Number of Tubes in Baffle Window"); 125 Scd as area (Brief="Shell to Baffle Leakage Area"); 126 Std as area (Brief="Tube to Baffle Hole Leakage Area"); 127 Rs as Real (Brief="Ratio of the shell to baffle leakage area"); 128 Dw as length (Brief="Hydraulic diameter of the baffle window"); 85 Pi as constant (Brief="Pi Number", Hidden = true, Default=3.14159265); 86 Aonozzle_Shell as area (Brief="Shell Outlet Nozzle Area", Hidden = true, Lower=1E-6); 87 Ainozzle_Shell as area (Brief="Shell Inlet Nozzle Area", Hidden = true, Lower=1E-6); 88 Aeonozzle_Shell as area (Brief="Shell Outlet Escape Area Under Nozzle", Hidden = true, Lower=1E-6); 89 Aeinozzle_Shell as area (Brief="Shell Inlet Escape Area Under Nozzle",Hidden = true, Lower=1E-6); 90 Aonozzle_Tube as area (Brief="Tube Outlet Nozzle Area", Hidden = true, Lower=1E-6); 91 Ainozzle_Tube as area (Brief="Tube Inlet Nozzle Area", Hidden = true, Lower=1E-6); 92 Kinlet_Tube as positive (Brief="Tube Inlet Nozzle Pressure Loss Coeff", Hidden = true, Default=1.1); 93 Koutlet_Tube as positive (Brief="Tube Outlet Nozzle Pressure Loss Coeff",Hidden = true, Default=0.7); 94 Ods as Real (Brief="Baffle cut angle in degrees", Symbol = "\theta _{ds}", Hidden = true); 95 Octl as Real (Brief="Baffle cut angle relative to the centerline in degrees", Symbol = "\theta _{ctl}", Hidden = true); 96 Ftw as Real (Brief="Fraction of number of tubes in baffle window", Symbol = "F _{tw}", Hidden = true); 97 Scd as area (Brief="Shell to baffle leakage area", Symbol = "S _{cd}", Hidden = true); 98 Std as area (Brief="Tube to baffle hole leakage area", Symbol = "S _{td}", Hidden = true); 99 Rs as Real (Brief="Ratio of the shell to baffle leakage area", Symbol = "R_s", Hidden = true); 100 Dw as length (Brief="Hydraulic diameter of the baffle window", Symbol = "D _w", Hidden = true); 129 101 130 102 SET 131 103 132 M = PP.MolecularWeight(); 133 Pi = 3.14159265; 134 135 #"comments" 136 Ods = (360/Pi)*acos(1-0.02*Bc); 137 138 #"comments" 139 Octl = (360/Pi)*acos((Dishell/(Dishell - Lcf - Dotube))*(1-0.02*Bc)); 140 141 #"comments" 104 #"Molecular weight" 105 M = PP.MolecularWeight(); 106 107 #"Pi Number" 108 Pi = 3.14159265; 109 110 #"Baffle cut angle in degrees" 111 Ods = (360/Pi)*acos(1-0.02*Baffles.BaffleCut); 112 113 #"Baffle cut angle relative to the centerline" 114 Octl = (360/Pi)*acos((Shell.ShellID/(Shell.ShellID - Clearances.BundleToShell - Tubes.TubeOD))*(1-0.02*Baffles.BaffleCut)); 115 116 #"Fraction of number of tubes in baffle window" 142 117 Ftw = (Octl/360)-sin(Octl*Pi/180)/(2*Pi); 143 118 144 #" comments"145 Scd = Pi* Dishell*Lcd*((360-Ods)/720);146 147 #" comments"148 Std = Pi*0.25*(( Ltd + Dotube)^2-Dotube*Dotube)*Ntt*(1-Ftw);119 #"Shell to baffle leakage area" 120 Scd = Pi*Shell.ShellID*Clearances.BaffleToShell *((360-Ods)/720); 121 122 #"Tube to baffle hole leakage area" 123 Std = Pi*0.25*((Clearances.TubeToBaffle + Tubes.TubeOD)^2-Tubes.TubeOD*Tubes.TubeOD)*Tubes.NumberOfTubes*(1-Ftw); 149 124 150 125 #"comments" … … 152 127 153 128 #"comments" 154 Dw = (4*abs((Pi* Dishell*Dishell*((Ods/360)-sin(Ods*Pi/180)/(2*Pi))/4)-(Ntt*Pi*Dotube*Dotube*Ftw/4)))/(Pi*Dotube*Ntt*Ftw+ Pi*Dishell*Ods/360);129 Dw = (4*abs((Pi*Shell.ShellID*Shell.ShellID*((Ods/360)-sin(Ods*Pi/180)/(2*Pi))/4)-(Tubes.NumberOfTubes*Pi*Tubes.TubeOD*Tubes.TubeOD*Ftw/4)))/(Pi*Tubes.TubeOD*Tubes.NumberOfTubes*Ftw+ Pi*Shell.ShellID*Ods/360); 155 130 156 131 #"Tube Side Inlet Nozzle Area" 157 Ainozzle_Tube = (Pi*Dinozzle_Tube*Dinozzle_Tube)/4;132 Ainozzle_Tube = 0.25*Pi*Tubes.InletNozzleID^2; 158 133 159 134 #"Tube Side Outlet Nozzle Area" 160 Aonozzle_Tube = (Pi*Donozzle_Tube*Donozzle_Tube)/4;135 Aonozzle_Tube = 0.25*Pi*Tubes.OutletNozzleID^2; 161 136 162 137 #"Tube Inlet Nozzle Pressure Loss Coeff" … … 167 142 168 143 #"Shell Outlet Nozzle Area" 169 Aonozzle_Shell = (Pi*Donozzle_Shell*Donozzle_Shell)/4;144 Aonozzle_Shell = 0.25*Pi*Shell.OutletNozzleID^2; 170 145 171 146 #"Shell Inlet Nozzle Area" 172 Ainozzle_Shell = (Pi*Dinozzle_Shell*Dinozzle_Shell)/4;147 Ainozzle_Shell = 0.25*Pi*Shell.InletNozzleID^2; 173 148 174 149 #"Shell Outlet Escape Area Under Nozzle" 175 Aeonozzle_Shell = Pi* Donozzle_Shell*Honozzle_Shell + 0.6*Aonozzle_Shell*(1-(Dotube/pitch));150 Aeonozzle_Shell = Pi*Shell.OutletNozzleID*Clearances.Honozzle_Shell + 0.6*Aonozzle_Shell*(1-(Tubes.TubeOD/Tubes.TubePitch)); 176 151 177 152 #"Shell Inlet Escape Area Under Nozzle" 178 Aeinozzle_Shell = Pi* Dinozzle_Shell*Hinozzle_Shell + 0.6*Ainozzle_Shell*(1-(Dotube/pitch));153 Aeinozzle_Shell = Pi*Shell.InletNozzleID*Clearances.Hinozzle_Shell + 0.6*Ainozzle_Shell*(1-(Tubes.TubeOD/Tubes.TubePitch)); 179 154 180 155 EQUATIONS … … 348 323 349 324 "Jc Factor" 350 Shell.HeatTransfer.Jc = 0.55+0.72*(1-2*Ftw);325 Jc = 0.55+0.72*(1-2*Ftw); 351 326 352 327 "Jl Factor" 353 Shell.HeatTransfer.Jl = 0.44*(1-Rs)+(1-0.44*(1-Rs))*exp(-2.2*(Scd + Std)/Shell.HeatTransfer.Sm);328 Jl = 0.44*(1-Rs)+(1-0.44*(1-Rs))*exp(-2.2*(Scd + Std)/Sm); 354 329 355 330 "Total J Factor" 356 Shell.HeatTransfer.Jtotal = Shell.HeatTransfer.Jc*Shell.HeatTransfer.Jl*Shell.HeatTransfer.Jb*Shell.HeatTransfer.Jr*Shell.HeatTransfer.Js;331 Jtotal = Jc*Jl*Jb*Jr*Js; 357 332 358 333 "Mass Velocity in Window Zone" 359 mw = Shell.Properties.Inlet.Fw/sqrt(abs(S hell.HeatTransfer.Sm*abs((Pi*Dishell*Dishell*((Ods/360)-sin(Ods*Pi/180)/(2*Pi))/4)-(Ntt*Pi*Dotube*Dotube*Ftw/4))));334 mw = Shell.Properties.Inlet.Fw/sqrt(abs(Sm*abs((Pi*Shell.ShellID*Shell.ShellID*((Ods/360)-sin(Ods*Pi/180)/(2*Pi))/4)-(Tubes.NumberOfTubes*Pi*Tubes.TubeOD*Tubes.TubeOD*Ftw/4)))); 360 335 361 336 switch TubeFlowRegime … … 374 349 375 350 "Nusselt Number in Laminar Flow - Hausen Equation" 376 Tubes.HeatTransfer.Nu = 3.665 + ((0.19*(( Ditube/Ltube)*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR)^0.8)/(1+0.117*((Ditube/Ltube)*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR)^0.467));351 Tubes.HeatTransfer.Nu = 3.665 + ((0.19*((Tubes.TubeID/Tubes.TubeLength)*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR)^0.8)/(1+0.117*((Tubes.TubeID/Tubes.TubeLength)*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR)^0.467)); 377 352 378 353 case "Schlunder": 379 354 380 355 "Nusselt Number in Laminar Flow - Schlunder Equation" 381 Tubes.HeatTransfer.Nu = (49.027896+4.173281*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR*( Ditube/Ltube))^(1/3);356 Tubes.HeatTransfer.Nu = (49.027896+4.173281*Tubes.HeatTransfer.Re*Tubes.HeatTransfer.PR*(Tubes.TubeID/Tubes.TubeLength))^(1/3); 382 357 383 358 end … … 441 416 442 417 "Shell Side Cross Flow Area" 443 S hell.HeatTransfer.Sm= Baffles.Ls*(Lcf+((Dishell-Lcf-Dotube)/pitch)*(pitch-Dotube));418 Sm= Baffles.Central_Spacing*(Clearances.BundleToShell+((Shell.ShellID-Clearances.BundleToShell-Tubes.TubeOD)/Tubes.TubePitch)*(Tubes.TubePitch-Tubes.TubeOD)); 444 419 445 420 "Number of Tube rows Crossed in one Crossflow Section" 446 Nc = Dishell*(1-0.02*Bc)/(0.866*pitch);421 Nc = Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.866*Tubes.TubePitch); 447 422 448 423 "Number of Effective Crossflow rows in Each Window" 449 Ncw = 0.8*( Dishell*0.01*Bc-(Lcf + Dotube)*0.5)/(0.866*pitch);424 Ncw = 0.8*(Shell.ShellID*0.01*Baffles.BaffleCut-(Clearances.BundleToShell + Tubes.TubeOD)*0.5)/(0.866*Tubes.TubePitch); 450 425 451 426 "Variable for calculating Ji heat transfer correction Factor" … … 456 431 457 432 "Correction Factor for Pressure Drop" 458 Rss = Nss/(Dishell*(1-0.02*Bc)/(0.866*pitch)) ;433 Rss = Clearances.SealStrip/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.866*Tubes.TubePitch)) ; 459 434 460 435 "Ideal Shell Side Pressure Drop" 461 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*( Dishell*(1-0.02*Bc)/(0.866*pitch))*(Shell.Properties.Inlet.Fw/Shell.HeatTransfer.Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi);436 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.866*Tubes.TubePitch))*(Shell.Properties.Inlet.Fw/Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi); 462 437 463 438 "Shell Pressure End Zones" 464 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/( Dishell*(1-0.02*Bc)/(0.866*pitch))))*Rb*Rspd;439 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.866*Tubes.TubePitch))))*Rb*Rspd; 465 440 466 441 switch ShellRange … … 469 444 470 445 "Ji Factor" 471 Shell.HeatTransfer.Ji =1.40*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^0.667;446 Ji =1.40*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^0.667; 472 447 473 448 "Shell Side Pressure Drop Friction Factor" 474 Shell.PressureDrop.fi=48*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-1;449 Shell.PressureDrop.fi=48*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-1; 475 450 476 451 when Shell.HeatTransfer.Re > 10 switchto "range2"; … … 479 454 480 455 "Ji Factor" 481 Shell.HeatTransfer.Ji =1.36*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.657;456 Ji =1.36*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.657; 482 457 483 458 "Shell Side Pressure Drop Friction Factor" 484 Shell.PressureDrop.fi=45.10*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.973;459 Shell.PressureDrop.fi=45.10*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.973; 485 460 486 461 when Shell.HeatTransfer.Re > 100 switchto "range3"; … … 489 464 490 465 "Ji Factor" 491 Shell.HeatTransfer.Ji =0.593*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.477;466 Ji =0.593*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.477; 492 467 493 468 "Shell Side Pressure Drop Friction Factor" 494 Shell.PressureDrop.fi=4.570*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.476;469 Shell.PressureDrop.fi=4.570*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.476; 495 470 496 471 when Shell.HeatTransfer.Re > 1000 switchto "range4"; … … 499 474 500 475 "Ji Factor" 501 Shell.HeatTransfer.Ji =0.321*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.388;476 Ji =0.321*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.388; 502 477 503 478 "Shell Side Pressure Drop Friction Factor" 504 Shell.PressureDrop.fi=0.486*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.152;479 Shell.PressureDrop.fi=0.486*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.152; 505 480 506 481 when Shell.HeatTransfer.Re > 10000 switchto "range5"; … … 509 484 510 485 "Ji Factor" 511 Shell.HeatTransfer.Ji =0.321*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.388;486 Ji =0.321*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.388; 512 487 513 488 "Shell Side Pressure Drop Friction Factor" 514 Shell.PressureDrop.fi=0.372*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.123;489 Shell.PressureDrop.fi=0.372*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.123; 515 490 516 491 when Shell.HeatTransfer.Re < 10000 switchto "range4"; … … 521 496 522 497 "Shell Side Cross Flow Area" 523 S hell.HeatTransfer.Sm= Baffles.Ls*(Lcf+((Dishell-Lcf-Dotube)/(0.707*pitch))*(pitch-Dotube));498 Sm= Baffles.Central_Spacing*(Clearances.BundleToShell+((Shell.ShellID-Clearances.BundleToShell-Tubes.TubeOD)/(0.707*Tubes.TubePitch))*(Tubes.TubePitch-Tubes.TubeOD)); 524 499 525 500 "Number of Tube rows Crossed in one Crossflow Section" 526 Nc = Dishell*(1-0.02*Bc)/(0.707*pitch);501 Nc = Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.707*Tubes.TubePitch); 527 502 528 503 "Number of Effective Crossflow rows in Each Window" 529 Ncw = 0.8*( Dishell*0.01*Bc-(Lcf + Dotube)*0.5)/(0.707*pitch);504 Ncw = 0.8*(Shell.ShellID*0.01*Baffles.BaffleCut-(Clearances.BundleToShell + Tubes.TubeOD)*0.5)/(0.707*Tubes.TubePitch); 530 505 531 506 "Variable for calculating Ji heat transfer correction Factor" … … 536 511 537 512 "Correction Factor for Pressure Drop" 538 Rss = Nss/(Dishell*(1-0.02*Bc)/(0.707*pitch)) ;513 Rss = Clearances.SealStrip/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.707*Tubes.TubePitch)) ; 539 514 540 515 "Ideal Shell Side Pressure Drop" 541 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*( Dishell*(1-0.02*Bc)/(0.707*pitch))*(Shell.Properties.Inlet.Fw/Shell.HeatTransfer.Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi);516 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.707*Tubes.TubePitch))*(Shell.Properties.Inlet.Fw/Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi); 542 517 543 518 "Shell Pressure End Zones" 544 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/( Dishell*(1-0.02*Bc)/(0.707*pitch))))*Rb*Rspd;519 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/(0.707*Tubes.TubePitch))))*Rb*Rspd; 545 520 546 521 switch ShellRange … … 549 524 550 525 "Ji Factor" 551 Shell.HeatTransfer.Ji =1.550*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^0.667;526 Ji =1.550*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^0.667; 552 527 553 528 "Shell Side Pressure Drop Friction Factor" 554 Shell.PressureDrop.fi=32*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-1;529 Shell.PressureDrop.fi=32*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-1; 555 530 556 531 when Shell.HeatTransfer.Re > 10 switchto "range2"; … … 559 534 560 535 "Ji Factor" 561 Shell.HeatTransfer.Ji =0.498*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^0.656;536 Ji =0.498*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^0.656; 562 537 563 538 "Shell Side Pressure Drop Friction Factor" 564 Shell.PressureDrop.fi=26.20*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.913;539 Shell.PressureDrop.fi=26.20*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.913; 565 540 566 541 when Shell.HeatTransfer.Re > 100 switchto "range3"; … … 569 544 570 545 "Ji Factor" 571 Shell.HeatTransfer.Ji =0.730*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^0.500;546 Ji =0.730*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^0.500; 572 547 573 548 "Shell Side Pressure Drop Friction Factor" 574 Shell.PressureDrop.fi=3.50*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.476;549 Shell.PressureDrop.fi=3.50*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.476; 575 550 576 551 when Shell.HeatTransfer.Re > 1000 switchto "range4"; … … 579 554 580 555 "Ji Factor" 581 Shell.HeatTransfer.Ji =0.370*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.396;556 Ji =0.370*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.396; 582 557 583 558 "Shell Side Pressure Drop Friction Factor" 584 Shell.PressureDrop.fi=0.333*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.136;559 Shell.PressureDrop.fi=0.333*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.136; 585 560 586 561 when Shell.HeatTransfer.Re > 10000 switchto "range5"; … … 589 564 590 565 "Ji Factor" 591 Shell.HeatTransfer.Ji =0.370*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.396;566 Ji =0.370*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.396; 592 567 593 568 "Shell Side Pressure Drop Friction Factor" 594 Shell.PressureDrop.fi=0.303*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.126;569 Shell.PressureDrop.fi=0.303*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.126; 595 570 596 571 when Shell.HeatTransfer.Re < 10000 switchto "range4"; … … 601 576 602 577 "Shell Side Cross Flow Area" 603 S hell.HeatTransfer.Sm= Baffles.Ls*(Lcf+((Dishell-Lcf-Dotube)/pitch)*(pitch-Dotube));578 Sm= Baffles.Central_Spacing*(Clearances.BundleToShell+((Shell.ShellID-Clearances.BundleToShell-Tubes.TubeOD)/Tubes.TubePitch)*(Tubes.TubePitch-Tubes.TubeOD)); 604 579 605 580 "Number of Tube rows Crossed in one Crossflow Section" 606 Nc = Dishell*(1-0.02*Bc)/pitch;581 Nc = Shell.ShellID*(1-0.02*Baffles.BaffleCut)/Tubes.TubePitch; 607 582 608 583 "Number of Effective Crossflow rows in Each Window" 609 Ncw = 0.8*( Dishell*0.01*Bc-(Lcf + Dotube)*0.5)/pitch;584 Ncw = 0.8*(Shell.ShellID*0.01*Baffles.BaffleCut-(Clearances.BundleToShell + Tubes.TubeOD)*0.5)/Tubes.TubePitch; 610 585 611 586 "Variable for calculating Ji heat transfer correction Factor" … … 616 591 617 592 "Correction Factor for Pressure Drop" 618 Rss = Nss/(Dishell*(1-0.02*Bc)/pitch) ;593 Rss = Clearances.SealStrip/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/Tubes.TubePitch) ; 619 594 620 595 "Ideal Shell Side Pressure Drop" 621 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*( Dishell*(1-0.02*Bc)/pitch)*(Shell.Properties.Inlet.Fw/Shell.HeatTransfer.Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi);596 Shell.PressureDrop.Pideal= 2*Shell.PressureDrop.fi*(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/Tubes.TubePitch)*(Shell.Properties.Inlet.Fw/Sm)^2/(Shell.Properties.Average.rho*Shell.HeatTransfer.Phi); 622 597 623 598 "Shell Pressure End Zones" 624 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/( Dishell*(1-0.02*Bc)/pitch)))*Rb*Rspd;599 Shell.PressureDrop.PdEndZones = Shell.PressureDrop.Pideal*(1+ (Ncw/(Shell.ShellID*(1-0.02*Baffles.BaffleCut)/Tubes.TubePitch)))*Rb*Rspd; 625 600 626 601 switch ShellRange … … 629 604 630 605 "Ji Factor" 631 Shell.HeatTransfer.Ji =0.970*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.667;606 Ji =0.970*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.667; 632 607 633 608 "Shell Side Pressure Drop Friction Factor" 634 Shell.PressureDrop.fi=35*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-1;609 Shell.PressureDrop.fi=35*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-1; 635 610 636 611 when Shell.HeatTransfer.Re > 10 switchto "range2"; … … 639 614 640 615 "Ji Factor" 641 Shell.HeatTransfer.Ji =0.900*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.631;616 Ji =0.900*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.631; 642 617 643 618 "Shell Side Pressure Drop Friction Factor" 644 Shell.PressureDrop.fi=32.10*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.963;619 Shell.PressureDrop.fi=32.10*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.963; 645 620 646 621 when Shell.HeatTransfer.Re > 100 switchto "range3"; … … 649 624 650 625 "Ji Factor" 651 Shell.HeatTransfer.Ji =0.408*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.460;626 Ji =0.408*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.460; 652 627 653 628 "Shell Side Pressure Drop Friction Factor" 654 Shell.PressureDrop.fi=6.090*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.602;629 Shell.PressureDrop.fi=6.090*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.602; 655 630 656 631 when Shell.HeatTransfer.Re > 1000 switchto "range4"; … … 659 634 660 635 "Ji Factor" 661 Shell.HeatTransfer.Ji =0.107*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.266;636 Ji =0.107*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.266; 662 637 663 638 "Shell Side Pressure Drop Friction Factor" 664 Shell.PressureDrop.fi=0.0815*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^0.022;639 Shell.PressureDrop.fi=0.0815*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^0.022; 665 640 666 641 when Shell.HeatTransfer.Re > 10000 switchto "range5"; … … 669 644 670 645 "Ji Factor" 671 Shell.HeatTransfer.Ji =0.370*((1.33*Dotube/pitch)^a)*Shell.HeatTransfer.Re^-0.395;646 Ji =0.370*((1.33*Tubes.TubeOD/Tubes.TubePitch)^a)*Shell.HeatTransfer.Re^-0.395; 672 647 673 648 "Shell Side Pressure Drop Friction Factor" 674 Shell.PressureDrop.fi=0.391*((1.33* Dotube/pitch)^b)*Shell.HeatTransfer.Re^-0.148;649 Shell.PressureDrop.fi=0.391*((1.33*Tubes.TubeOD/Tubes.TubePitch)^b)*Shell.HeatTransfer.Re^-0.148; 675 650 676 651 when Shell.HeatTransfer.Re < 10000 switchto "range4"; … … 685 660 686 661 "Jr Factor" 687 Shell.HeatTransfer.Jr = (10/((Nc +Ncw)*(Nb+1)))^0.18;662 Jr = (10/((Nc +Ncw)*(Baffles.NumberOfBaffles+1)))^0.18; 688 663 689 664 "Js Factor" 690 Shell.HeatTransfer.Js = (Nb-1+(Baffles.Lsi/Baffles.Ls)^0.7 + (Baffles.Lso/Baffles.Ls)^0.7)/(Nb-1+(Baffles.Lsi/Baffles.Ls) + (Baffles.Lso/Baffles.Ls));665 Js = (Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing)^0.7 + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)^0.7)/(Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing) + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)); 691 666 692 667 "Jb Factor" 693 Shell.HeatTransfer.Jb = exp(-1.35*( Lcf+ Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm*(1-(2*(Nss/Nc)^(1/3))));668 Jb = exp(-1.35*( Clearances.BundleToShell+ Tubes.TubeOD)*Baffles.Central_Spacing/Sm*(1-(2*(Clearances.SealStrip/Nc)^(1/3)))); 694 669 695 670 "ByPass Correction Factor for Pressure Drop" 696 Rb = exp(-4.7*(( Lcf + Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm)*(1-(2*Rss)^(1/3)));671 Rb = exp(-4.7*((Clearances.BundleToShell + Tubes.TubeOD)*Baffles.Central_Spacing/Sm)*(1-(2*Rss)^(1/3))); 697 672 698 673 "Pressure Drop Correction Factor for Unequal Baffle Spacing" 699 Rspd = (Baffles. Ls/Baffles.Lso) + (Baffles.Ls/Baffles.Lsi);674 Rspd = (Baffles.Central_Spacing/Baffles.Outlet_Spacing) + (Baffles.Central_Spacing/Baffles.Inlet_Spacing); 700 675 701 676 "Shell Pressure Drop Baffle Window" 702 Shell.PressureDrop.Pdwindow = Nb*((26/Shell.Properties.Average.rho)*mw*Shell.Properties.Average.Mu*(Ncw/(pitch-Dotube)+ Baffles.Ls/(Dw*Dw))+ 0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Shell.HeatTransfer.Sm)^(-0.15*(1+Rs) + 0.8));677 Shell.PressureDrop.Pdwindow = Baffles.NumberOfBaffles*((26/Shell.Properties.Average.rho)*mw*Shell.Properties.Average.Mu*(Ncw/(Tubes.TubePitch-Tubes.TubeOD)+ Baffles.Central_Spacing/(Dw*Dw))+ 0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Sm)^(-0.15*(1+Rs) + 0.8)); 703 678 704 679 when Shell.HeatTransfer.Re > 20 switchto "laminar"; … … 707 682 708 683 "Jr Factor" 709 Shell.HeatTransfer.Jr = (10/((Nc +Ncw)*(Nb+1)))^0.18 + (0.25-0.0125*Shell.HeatTransfer.Re)*((10/((Nc +Ncw)*(Nb+1)))^0.18 - 1);684 Jr = (10/((Nc +Ncw)*(Baffles.NumberOfBaffles+1)))^0.18 + (0.25-0.0125*Shell.HeatTransfer.Re)*((10/((Nc +Ncw)*(Baffles.NumberOfBaffles+1)))^0.18 - 1); 710 685 711 686 "Js Factor" 712 Shell.HeatTransfer.Js = (Nb-1+(Baffles.Lsi/Baffles.Ls)^0.7 + (Baffles.Lso/Baffles.Ls)^0.7)/(Nb-1+(Baffles.Lsi/Baffles.Ls) + (Baffles.Lso/Baffles.Ls));687 Js = (Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing)^0.7 + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)^0.7)/(Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing) + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)); 713 688 714 689 "Jb Factor" 715 Shell.HeatTransfer.Jb = exp(-1.35*( Lcf+ Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm*(1-(2*(Nss/Nc)^(1/3))));690 Jb = exp(-1.35*( Clearances.BundleToShell+ Tubes.TubeOD)*Baffles.Central_Spacing/Sm*(1-(2*(Clearances.SealStrip/Nc)^(1/3)))); 716 691 717 692 "ByPass Correction Factor for Pressure Drop" 718 Rb = exp(-4.7*(( Lcf + Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm)*(1-(2*Rss)^(1/3)));693 Rb = exp(-4.7*((Clearances.BundleToShell+ Tubes.TubeOD)*Baffles.Central_Spacing/Sm)*(1-(2*Rss)^(1/3))); 719 694 720 695 "Pressure Drop Correction Factor for Unequal Baffle Spacing" 721 Rspd = (Baffles. Ls/Baffles.Lso) + (Baffles.Ls/Baffles.Lsi);696 Rspd = (Baffles.Central_Spacing/Baffles.Outlet_Spacing) + (Baffles.Central_Spacing/Baffles.Inlet_Spacing); 722 697 723 698 "Shell Pressure Drop Baffle Window" 724 Shell.PressureDrop.Pdwindow = Nb*((26/Shell.Properties.Average.rho)*mw*Shell.Properties.Average.Mu*(Ncw/(pitch-Dotube)+ Baffles.Ls/(Dw*Dw))+ 0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Shell.HeatTransfer.Sm)^(-0.15*(1+Rs) + 0.8));699 Shell.PressureDrop.Pdwindow = Baffles.NumberOfBaffles*((26/Shell.Properties.Average.rho)*mw*Shell.Properties.Average.Mu*(Ncw/(Tubes.TubePitch-Tubes.TubeOD)+ Baffles.Central_Spacing/(Dw*Dw))+ 0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Sm)^(-0.15*(1+Rs) + 0.8)); 725 700 726 701 when Shell.HeatTransfer.Re < 20 switchto "deep laminar"; … … 730 705 731 706 "Jr Factor" 732 Shell.HeatTransfer.Jr = 1;707 Jr = 1; 733 708 734 709 "Js Factor" 735 Shell.HeatTransfer.Js = (Nb-1+(Baffles.Lsi/Baffles.Ls)^0.4 + (Baffles.Lso/Baffles.Ls)^0.4)/(Nb-1+(Baffles.Lsi/Baffles.Ls) + (Baffles.Lso/Baffles.Ls));710 Js = (Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing)^0.4 + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)^0.4)/(Baffles.NumberOfBaffles-1+(Baffles.Inlet_Spacing/Baffles.Central_Spacing) + (Baffles.Outlet_Spacing/Baffles.Central_Spacing)); 736 711 737 712 "Jb Factor" 738 Shell.HeatTransfer.Jb = exp(-1.25*( Lcf+ Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm*(1-(2*(Nss/Nc)^(1/3))));713 Jb = exp(-1.25*( Clearances.BundleToShell+ Tubes.TubeOD)*Baffles.Central_Spacing/Sm*(1-(2*(Clearances.SealStrip/Nc)^(1/3)))); 739 714 740 715 "ByPass Correction Factor for Pressure Drop" 741 Rb = exp(-3.7*(( Lcf + Dotube)*Baffles.Ls/Shell.HeatTransfer.Sm)*(1-(2*Rss)^(1/3)));716 Rb = exp(-3.7*((Clearances.BundleToShell + Tubes.TubeOD)*Baffles.Central_Spacing/Sm)*(1-(2*Rss)^(1/3))); 742 717 743 718 "Pressure Drop Correction Factor for Unequal Baffle Spacing" 744 Rspd = (Baffles. Ls/Baffles.Lso)^1.8 + (Baffles.Ls/Baffles.Lsi)^1.8;719 Rspd = (Baffles.Central_Spacing/Baffles.Outlet_Spacing)^1.8 + (Baffles.Central_Spacing/Baffles.Inlet_Spacing)^1.8; 745 720 746 721 "Shell Pressure Drop Baffle Window" 747 Shell.PressureDrop.Pdwindow = Nb*((2+0.6*Ncw)*0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Shell.HeatTransfer.Sm)^(-0.15*(1+Rs) + 0.8));722 Shell.PressureDrop.Pdwindow = Baffles.NumberOfBaffles*((2+0.6*Ncw)*0.5*mw*mw/Shell.Properties.Average.rho)*exp(-1.33*(1+Rs)*((Scd + Std)/Sm)^(-0.15*(1+Rs) + 0.8)); 748 723 749 724 when Shell.HeatTransfer.Re < 100 switchto "laminar"; … … 752 727 753 728 "Shell Pressure Drop Cross Flow" 754 Shell.PressureDrop.PdCross = Shell.PressureDrop.Pideal*Rb*( Nb-1)*exp(-1.33*(1+Rs)*((Scd + Std)/Shell.HeatTransfer.Sm)^(-0.15*(1+Rs) + 0.8));729 Shell.PressureDrop.PdCross = Shell.PressureDrop.Pideal*Rb*(Baffles.NumberOfBaffles-1)*exp(-1.33*(1+Rs)*((Scd + Std)/Sm)^(-0.15*(1+Rs) + 0.8)); 755 730 756 731 "Shell Side Phi correction" … … 767 742 768 743 "Tube Side Pressure Drop" 769 Tubes.PressureDrop.PdTube = 2*Tubes.PressureDrop.fi* Ltube*Tubes.Properties.Average.rho*(Tubes.HeatTransfer.Vtube^2)*Tpass/(Ditube*Tubes.HeatTransfer.Phi);744 Tubes.PressureDrop.PdTube = 2*Tubes.PressureDrop.fi*Tubes.TubeLength*Tubes.Properties.Average.rho*(Tubes.HeatTransfer.Vtube^2)*Tubes.Tubepasses/(Tubes.TubeID*Tubes.HeatTransfer.Phi); 770 745 771 746 "Pressure Drop Tube Side Inlet Nozzle" … … 806 781 807 782 "Tube Side Velocity" 808 Tubes.HeatTransfer.Vtube = Tubes.Properties.Inlet.Fw*T pass/((Pi*Ditube*Ditube/4)*Tubes.Properties.Average.rho*Ntt);783 Tubes.HeatTransfer.Vtube = Tubes.Properties.Inlet.Fw*Tubes.Tubepasses/((Pi*Tubes.TubeID*Tubes.TubeID/4)*Tubes.Properties.Average.rho*Tubes.NumberOfTubes); 809 784 810 785 "Tube Side Reynolds Number" 811 Tubes.HeatTransfer.Re = (Tubes.Properties.Average.rho*Tubes.HeatTransfer.Vtube* Ditube)/Tubes.Properties.Average.Mu;786 Tubes.HeatTransfer.Re = (Tubes.Properties.Average.rho*Tubes.HeatTransfer.Vtube*Tubes.TubeID)/Tubes.Properties.Average.Mu; 812 787 813 788 "Tube Side Prandtl Number" … … 815 790 816 791 "Tube Side Film Coefficient" 817 Tubes.HeatTransfer.htube= (Tubes.HeatTransfer.Nu*Tubes.Properties.Average.K/ Ditube)*Tubes.HeatTransfer.Phi;792 Tubes.HeatTransfer.htube= (Tubes.HeatTransfer.Nu*Tubes.Properties.Average.K/Tubes.TubeID)*Tubes.HeatTransfer.Phi; 818 793 819 794 "Shell Side Prandtl Number" … … 821 796 822 797 "Overall Heat Transfer Coefficient Dirty" 823 Details.Ud=1/( Dotube/(Tubes.HeatTransfer.htube*Ditube)+Rfo+Rfi*(Dotube/Ditube)+(Dotube*ln(Dotube/Ditube)/(2*Kwall))+(1/(Shell.HeatTransfer.hshell)));798 Details.Ud=1/(Tubes.TubeOD/(Tubes.HeatTransfer.htube*Tubes.TubeID)+Shell.Fouling+Tubes.Fouling*(Tubes.TubeOD/Tubes.TubeID)+(Tubes.TubeOD*ln(Tubes.TubeOD/Tubes.TubeID)/(2*Tubes.Kwall))+(1/(Shell.HeatTransfer.hshell))); 824 799 825 800 "Overall Heat Transfer Coefficient Clean" 826 Details.Uc=1/( Dotube/(Tubes.HeatTransfer.htube*Ditube)+(Dotube*ln(Dotube/Ditube)/(2*Kwall))+(1/(Shell.HeatTransfer.hshell)));801 Details.Uc=1/(Tubes.TubeOD/(Tubes.HeatTransfer.htube*Tubes.TubeID)+(Tubes.TubeOD*ln(Tubes.TubeOD/Tubes.TubeID)/(2*Tubes.Kwall))+(1/(Shell.HeatTransfer.hshell))); 827 802 828 803 "Exchange Surface Area" 829 Details.A=Pi* Dotube*Ntt*Ltube;830 831 "Baffle s Spacing"832 Ltube = Baffles.Lsi+Baffles.Lso+Baffles.Ls*(Nb-1);804 Details.A=Pi*Tubes.TubeOD*Tubes.NumberOfTubes*Tubes.TubeLength; 805 806 "Baffle Spacing Constraint" 807 Tubes.TubeLength = Baffles.Inlet_Spacing+Baffles.Outlet_Spacing+Baffles.Central_Spacing*(Baffles.NumberOfBaffles-1); 833 808 834 809 "Shell Side Reynolds Number" 835 Shell.HeatTransfer.Re = ( Dotube*Shell.Properties.Inlet.Fw/Shell.HeatTransfer.Sm)/Shell.Properties.Average.Mu;810 Shell.HeatTransfer.Re = (Tubes.TubeOD*Shell.Properties.Inlet.Fw/Sm)/Shell.Properties.Average.Mu; 836 811 837 812 "Shell Heat Transfer Coefficient" 838 Shell.HeatTransfer.hshell = Shell.HeatTransfer.Ji*(Shell.Properties.Average.Cp/Shell.Properties.Average.Mw)*(Shell.Properties.Inlet.Fw/Shell.HeatTransfer.Sm)*(Shell.HeatTransfer.PR^(-2/3))*Shell.HeatTransfer.Jtotal*Shell.HeatTransfer.Phi;813 Shell.HeatTransfer.hshell = Ji*(Shell.Properties.Average.Cp/Shell.Properties.Average.Mw)*(Shell.Properties.Inlet.Fw/Sm)*(Shell.HeatTransfer.PR^(-2/3))*Jtotal*Shell.HeatTransfer.Phi; 839 814 840 815 end … … 856 831 857 832 "Number of Units Transference" 858 Method.NTU*Method.Cmin = Details.Ud*Pi* Dotube*Ntt*Ltube;833 Method.NTU*Method.Cmin = Details.Ud*Pi*Tubes.TubeOD*Tubes.NumberOfTubes*Tubes.TubeLength; 859 834 860 835 "Minimum Heat Capacity" … … 947 922 948 923 "Exchange Surface Area" 949 Details.Q = Details.Ud*Pi* Dotube*Ntt*Ltube*Method.LMTD*Method.Fc;924 Details.Q = Details.Ud*Pi*Tubes.TubeOD*Tubes.NumberOfTubes*Tubes.TubeLength*Method.LMTD*Method.Fc; 950 925 951 926 switch HotSide -
trunk/sample/heat_exchangers/sample_Detailed.mso
r382 r490 62 62 # Shell Geometrical Parameters 63 63 #===================================================================== 64 exchanger.T pass = 2;65 exchanger. Dishell= 0.75 *'m';66 exchanger. Lcf= 0.043 *'m';67 exchanger. Nss= 2;68 exchanger. Donozzle_Shell= 0.1937 *'m';69 exchanger. Dinozzle_Shell= 0.1937 *'m';70 exchanger. Honozzle_Shell = 0.0225 *'m';71 exchanger. Hinozzle_Shell = 0.02155 *'m';64 exchanger.Tubes.Tubepasses = 2; 65 exchanger.Shell.ShellID = 0.75 *'m'; 66 exchanger.Clearances.BundleToShell = 0.043 *'m'; 67 exchanger.Clearances.SealStrip = 2; 68 exchanger.Shell.InletNozzleID = 0.1937 *'m'; 69 exchanger.Shell.OutletNozzleID = 0.1937 *'m'; 70 exchanger.Clearances.Honozzle_Shell = 0.0225 *'m'; 71 exchanger.Clearances.Hinozzle_Shell = 0.02155 *'m'; 72 72 #===================================================================== 73 73 # Tubes Geometrical Parameters 74 74 #===================================================================== 75 exchanger. Ntt= 500;75 exchanger.Tubes.NumberOfTubes = 500; 76 76 exchanger.Pattern = "Triangle"; 77 exchanger. pitch= 0.0254 *'m';78 exchanger. Ltube= 5.5 *'m';79 exchanger. Ditube= 0.013395 *'m';80 exchanger. Dotube= 0.015875 *'m';81 exchanger. Kwall = 0.057 *'kW/m/K';82 exchanger. Donozzle_Tube= 0.203 *'m';83 exchanger. Dinozzle_Tube= 0.203 *'m';77 exchanger.Tubes.TubePitch = 0.0254 *'m'; 78 exchanger.Tubes.TubeLength = 5.5 *'m'; 79 exchanger.Tubes.TubeID = 0.013395 *'m'; 80 exchanger.Tubes.TubeOD = 0.015875 *'m'; 81 exchanger.Tubes.Kwall = 0.057 *'kW/m/K'; 82 exchanger.Tubes.InletNozzleID = 0.203 *'m'; 83 exchanger.Tubes.OutletNozzleID = 0.203 *'m'; 84 84 #===================================================================== 85 85 # Baffles Geometrical Parameters 86 86 #===================================================================== 87 exchanger. Lcd= 0.0047 *'m';88 exchanger.B c= 30;89 exchanger. Ltd= 0.00039 *'m';90 exchanger. Nb= 6;87 exchanger.Clearances.BaffleToShell = 0.0047 *'m'; 88 exchanger.Baffles.BaffleCut = 30; 89 exchanger.Clearances.TubeToBaffle = 0.00039 *'m'; 90 exchanger.Baffles.NumberOfBaffles = 6; 91 91 92 92 #===================================================================== 93 93 # Fouling 94 94 #===================================================================== 95 exchanger. Rfi= 0.001*'m^2*K/kW';96 exchanger. Rfo= 0.001*'m^2*K/kW';95 exchanger.Tubes.Fouling = 0.001*'m^2*K/kW'; 96 exchanger.Shell.Fouling = 0.001*'m^2*K/kW'; 97 97 98 98 SPECIFY … … 114 114 # Baffle Spacing 115 115 #===================================================================== 116 exchanger.Baffles. Ls= 0.622 *'m';117 exchanger.Baffles. Lsi= 0.807 *'m';116 exchanger.Baffles.Central_Spacing = 0.622 *'m'; 117 exchanger.Baffles.Inlet_Spacing= 0.807 *'m'; 118 118 119 119 OPTIONS … … 153 153 exchanger.ShellType = "Eshell"; 154 154 155 exchanger.LMTDcorrection = " Fakeri";155 exchanger.LMTDcorrection = "Bowmann"; 156 156 157 157 # Heat Transfer Correlation … … 163 163 # Shell Geometrical Parameters 164 164 #===================================================================== 165 exchanger.T pass = 2;166 exchanger. Dishell= 0.75 *'m';167 exchanger. Lcf= 0.043 *'m';168 exchanger. Nss= 2;169 exchanger. Donozzle_Shell= 0.1937 *'m';170 exchanger. Dinozzle_Shell= 0.1937 *'m';171 exchanger. Honozzle_Shell = 0.0225 *'m';172 exchanger. Hinozzle_Shell = 0.02155 *'m';165 exchanger.Tubes.Tubepasses = 2; 166 exchanger.Shell.ShellID = 0.75 *'m'; 167 exchanger.Clearances.BundleToShell = 0.043 *'m'; 168 exchanger.Clearances.SealStrip = 2; 169 exchanger.Shell.InletNozzleID = 0.1937 *'m'; 170 exchanger.Shell.OutletNozzleID = 0.1937 *'m'; 171 exchanger.Clearances.Honozzle_Shell = 0.0225 *'m'; 172 exchanger.Clearances.Hinozzle_Shell = 0.02155 *'m'; 173 173 #===================================================================== 174 174 # Tubes Geometrical Parameters 175 175 #===================================================================== 176 exchanger. Ntt= 500;176 exchanger.Tubes.NumberOfTubes = 500; 177 177 exchanger.Pattern = "Triangle"; 178 exchanger. pitch= 0.0254 *'m';179 exchanger. Ltube= 5.5 *'m';180 exchanger. Ditube= 0.013395 *'m';181 exchanger. Dotube= 0.015875 *'m';182 exchanger. Kwall = 0.057 *'kW/m/K';183 exchanger. Donozzle_Tube= 0.203 *'m';184 exchanger. Dinozzle_Tube= 0.203 *'m';178 exchanger.Tubes.TubePitch = 0.0254 *'m'; 179 exchanger.Tubes.TubeLength = 5.5 *'m'; 180 exchanger.Tubes.TubeID = 0.013395 *'m'; 181 exchanger.Tubes.TubeOD = 0.015875 *'m'; 182 exchanger.Tubes.Kwall = 0.057 *'kW/m/K'; 183 exchanger.Tubes.InletNozzleID = 0.203 *'m'; 184 exchanger.Tubes.OutletNozzleID = 0.203 *'m'; 185 185 #===================================================================== 186 186 # Baffles Geometrical Parameters 187 187 #===================================================================== 188 exchanger. Lcd= 0.0047 *'m';189 exchanger.B c= 30;190 exchanger. Ltd= 0.00039 *'m';191 exchanger. Nb= 6;188 exchanger.Clearances.BaffleToShell = 0.0047 *'m'; 189 exchanger.Baffles.BaffleCut = 30; 190 exchanger.Clearances.TubeToBaffle = 0.00039 *'m'; 191 exchanger.Baffles.NumberOfBaffles = 6; 192 192 193 193 #===================================================================== 194 194 # Fouling 195 195 #===================================================================== 196 exchanger. Rfi= 0.001*'m^2*K/kW';197 exchanger. Rfo= 0.001*'m^2*K/kW';196 exchanger.Tubes.Fouling = 0.001*'m^2*K/kW'; 197 exchanger.Shell.Fouling = 0.001*'m^2*K/kW'; 198 198 199 199 SPECIFY … … 215 215 # Baffle Spacing 216 216 #===================================================================== 217 exchanger.Baffles. Ls= 0.622 *'m';218 exchanger.Baffles. Lsi= 0.807 *'m';217 exchanger.Baffles.Central_Spacing = 0.622 *'m'; 218 exchanger.Baffles.Inlet_Spacing= 0.807 *'m'; 219 219 220 220 OPTIONS
Note: See TracChangeset
for help on using the changeset viewer.