Changeset 551 for trunk/eml/heat_exchangers/DoublePipe.mso
- Timestamp:
- Jul 8, 2008, 5:51:28 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/eml/heat_exchangers/DoublePipe.mso
r525 r551 24 24 Pallete = false; 25 25 Brief = "double pipe geometrical parameters."; 26 Info =27 "to be documented.";28 26 29 27 PARAMETERS 30 28 31 outer PP as Plugin (Brief="External Physical Properties", Type="PP");29 outer PP as Plugin (Brief="External Physical Properties", Type="PP"); 32 30 outer NComp as Integer (Brief="Number of Components",Hidden=true); 33 31 34 32 M(NComp) as molweight (Brief="Component Mol Weight",Hidden=true); 35 36 Pi as constant (Brief="Pi Number",Default=3.14159265, Symbol = "\pi",Hidden=true);37 DoInner as length (Brief="Outside Diameter of Inner Pipe",Lower=1e-6);33 34 Pi as constant (Brief="Pi Number",Default=3.14159265, Symbol = "\pi",Hidden=true); 35 DoInner as length (Brief="Outside Diameter of Inner Pipe",Lower=1e-6); 38 36 DiInner as length (Brief="Inside Diameter of Inner Pipe",Lower=1e-10); 39 37 DiOuter as length (Brief="Inside Diameter of Outer pipe",Lower=1e-10); 40 Lpipe as length (Brief="Effective Tube Length of one segment of Pipe",Lower=0.1, Symbol = "L_{pipe}");41 Kwall as conductivity (Brief="Tube Wall Material Thermal Conductivity",Default=1.0, Symbol = "K_{wall}");42 Rfi as positive (Brief="Inside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0);43 Rfo as positive (Brief="Outside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0);38 Lpipe as length (Brief="Effective Tube Length of one segment of Pipe",Lower=0.1, Symbol = "L_{pipe}"); 39 Kwall as conductivity (Brief="Tube Wall Material Thermal Conductivity",Default=1.0, Symbol = "K_{wall}"); 40 Rfi as positive (Brief="Inside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0); 41 Rfo as positive (Brief="Outside Fouling Resistance",Unit='m^2*K/kW',Default=1e-6,Lower=0); 44 42 45 43 SET … … 47 45 #"Component Molecular Weight" 48 46 M = PP.MolecularWeight(); 49 47 50 48 #"Pi Number" 51 49 Pi = 3.14159265; … … 59 57 Brief = "Basic Equations for rigorous double pipe heat exchanger model."; 60 58 Info = 61 "to be documented."; 59 "Thermal analysis of double pipe heat exchanger using the NTU or LMTD Method. 60 61 == References == 62 63 [1] E.A.D. Saunders, Heat Exchangers: Selection, Design and 64 Construction, Longman, Harlow, 1988. 65 66 [2] Serth, Robert W., Process Heat Transfer: Principles and Applications, Elsevier, 2007. 67 68 [3] Gnielinski, V., Forced convection in ducts, in Heat Exchanger Design Handbook, Vol. 2 69 Hemisphere Publishing Corp., New York, 1988."; 62 70 63 71 PARAMETERS 64 72 65 outer PP as Plugin (Brief="External Physical Properties", Type="PP");73 outer PP as Plugin (Brief="External Physical Properties", Type="PP"); 66 74 outer NComp as Integer (Brief="Number of Components",Hidden=true); 67 75 68 76 M(NComp) as molweight (Brief="Component Mol Weight",Hidden=true); 69 77 70 HotSide as Switcher (Brief="Flag for Fluid Alocation ",Valid=["outer","inner"],Default="outer",Hidden=true);78 HotSide as Switcher (Brief="Flag for Fluid Alocation ",Valid=["outer","inner"],Default="outer",Hidden=true); 71 79 innerFlowRegime as Switcher (Brief="Inner Flow Regime ",Valid=["laminar","transition","turbulent"],Default="laminar",Hidden=true); 72 80 outerFlowRegime as Switcher (Brief="Outer Flow Regime ",Valid=["laminar","transition","turbulent"],Default="laminar",Hidden=true); 73 81 74 82 InnerLaminarCorrelation as Switcher (Brief="Heat Transfer Correlation in Laminar Flow for the Inner Side",Valid=["Hausen","Schlunder"],Default="Hausen"); 75 InnerTransitionCorrelation as Switcher (Brief="Heat Transfer Correlation in Transition Flow for the Inner Side",Valid=["Gnielinski","Hausen"],Default="Gnielinski");83 InnerTransitionCorrelation as Switcher (Brief="Heat Transfer Correlation in Transition Flow for the Inner Side",Valid=["Gnielinski","Hausen"],Default="Gnielinski"); 76 84 InnerTurbulentCorrelation as Switcher (Brief="Heat Transfer Correlation in Turbulent Flow for the Inner Side",Valid=["Petukhov","SiederTate"],Default="Petukhov"); 77 85 … … 80 88 OuterTurbulentCorrelation as Switcher (Brief="Heat Transfer Correlation in Turbulent Flow for the Outer Side",Valid=["Petukhov","SiederTate"],Default="Petukhov"); 81 89 82 CalculationApproach as Switcher 83 Qestimated as power (Brief="Estimated Duty", Default=70, Lower=1e-6, Upper=1e10);90 CalculationApproach as Switcher (Brief="Options for convergence Calculations ",Valid=["Simplified","Full"],Default="Full"); 91 Qestimated as power (Brief="Estimated Duty", Default=70, Lower=1e-6, Upper=1e10); 84 92 85 93 VARIABLES 86 94 87 Geometry as DoublePipe_Geometry (Brief="Double pipe geometry",Symbol=" ");88 in InletInner as stream(Brief="Inlet Inner Stream", PosX=0, PosY=0.5225, Symbol="_{inInner}");89 in InletOuter as stream(Brief="Inlet Outer Stream", PosX=0.2805, PosY=0, Symbol="_{inOuter}");90 out OutletInner as streamPH (Brief="Outlet Inner Stream", PosX=1, PosY=0.5225, Symbol="_{outInner}");91 out OutletOuter as streamPH (Brief="Outlet Outer Stream", PosX=0.7264, PosY=1, Symbol="_{outOuter}");92 93 Details as Details_Main (Brief="Some Details in the Heat Exchanger", Symbol=" ");94 Inner as Main_DoublePipe (Brief="Inner Side of the Heat Exchanger", Symbol="_{Inner}");95 Outer as Main_DoublePipe (Brief="Outer Side of the Heat Exchanger", Symbol="_{Outer}");95 Geometry as DoublePipe_Geometry (Brief="Double pipe geometry",Symbol=" "); 96 in InletInner as stream (Brief="Inlet Inner Stream", PosX=0, PosY=0.5225, Symbol="_{inInner}"); 97 in InletOuter as stream (Brief="Inlet Outer Stream", PosX=0.2805, PosY=0, Symbol="_{inOuter}"); 98 out OutletInner as streamPH (Brief="Outlet Inner Stream", PosX=1, PosY=0.5225, Symbol="_{outInner}"); 99 out OutletOuter as streamPH (Brief="Outlet Outer Stream", PosX=0.7264, PosY=1, Symbol="_{outOuter}"); 100 101 Details as Details_Main (Brief="Some Details in the Heat Exchanger", Symbol=" "); 102 Inner as Main_DoublePipe (Brief="Inner Side of the Heat Exchanger", Symbol="_{Inner}"); 103 Outer as Main_DoublePipe (Brief="Outer Side of the Heat Exchanger", Symbol="_{Outer}"); 96 104 97 105 SET 98 106 99 107 #"Inner Pipe Cross Sectional Area for Flow" 100 Inner.HeatTransfer.As =Geometry.Pi*Geometry.DiInner*Geometry.DiInner/4;108 Inner.HeatTransfer.As = 0.25*Geometry.Pi*Geometry.DiInner*Geometry.DiInner; 101 109 102 110 #"Outer Pipe Cross Sectional Area for Flow" 103 Outer.HeatTransfer.As =Geometry.Pi*(Geometry.DiOuter*Geometry.DiOuter - Geometry.DoInner*Geometry.DoInner)/4;111 Outer.HeatTransfer.As = 0.25*Geometry.Pi*(Geometry.DiOuter*Geometry.DiOuter - Geometry.DoInner*Geometry.DoInner); 104 112 105 113 #"Inner Pipe Hydraulic Diameter for Heat Transfer" 106 Inner.HeatTransfer.Dh =Geometry.DiInner;114 Inner.HeatTransfer.Dh = Geometry.DiInner; 107 115 108 116 #"Outer Pipe Hydraulic Diameter for Heat Transfer" 109 Outer.HeatTransfer.Dh =(Geometry.DiOuter*Geometry.DiOuter-Geometry.DoInner*Geometry.DoInner)/Geometry.DoInner;117 Outer.HeatTransfer.Dh = (Geometry.DiOuter*Geometry.DiOuter-Geometry.DoInner*Geometry.DoInner)/Geometry.DoInner; 110 118 111 119 #"Inner Pipe Hydraulic Diameter for Pressure Drop" 112 Inner.PressureDrop.Dh =Geometry.DiInner;120 Inner.PressureDrop.Dh = Geometry.DiInner; 113 121 114 122 #"Outer Pipe Hydraulic Diameter for Pressure Drop" … … 141 149 Inner.Properties.Average.Mw = sum(M*InletInner.z); 142 150 151 "Flow Mass Inlet Inner Stream" 152 Inner.Properties.Inlet.Fw = sum(M*InletInner.z)*InletInner.F; 153 154 "Flow Mass Outlet Inner Stream" 155 Inner.Properties.Outlet.Fw = sum(M*OutletInner.z)*OutletInner.F; 156 157 "Flow Mass Inlet Outer Stream" 158 Outer.Properties.Inlet.Fw = sum(M*InletOuter.z)*InletOuter.F; 159 160 "Flow Mass Outlet Outer Stream" 161 Outer.Properties.Outlet.Fw = sum(M*OutletOuter.z)*OutletOuter.F; 162 163 "Molar Balance Outer Stream" 164 OutletOuter.F = InletOuter.F; 165 166 "Molar Balance Inner Stream" 167 OutletInner.F = InletInner.F; 168 169 "Outer Stream Molar Fraction Constraint" 170 OutletOuter.z=InletOuter.z; 171 172 "Inner Stream Molar Fraction Constraint" 173 OutletInner.z=InletInner.z; 174 175 "Exchange Surface Area for one segment of pipe" 176 Details.A=Geometry.Pi*Geometry.DoInner*Geometry.Lpipe; 177 143 178 if InletInner.v equal 0 144 179 … … 266 301 end 267 302 268 "Flow Mass Inlet Inner Stream"269 Inner.Properties.Inlet.Fw = sum(M*InletInner.z)*InletInner.F;270 271 "Flow Mass Outlet Inner Stream"272 Inner.Properties.Outlet.Fw = sum(M*OutletInner.z)*OutletInner.F;273 274 "Flow Mass Inlet Outer Stream"275 Outer.Properties.Inlet.Fw = sum(M*InletOuter.z)*InletOuter.F;276 277 "Flow Mass Outlet Outer Stream"278 Outer.Properties.Outlet.Fw = sum(M*OutletOuter.z)*OutletOuter.F;279 280 "Molar Balance Outer Stream"281 OutletOuter.F = InletOuter.F;282 283 "Molar Balance Inner Stream"284 OutletInner.F = InletInner.F;285 286 "Outer Stream Molar Fraction Constraint"287 OutletOuter.z=InletOuter.z;288 289 "InnerStream Molar Fraction Constraint"290 OutletInner.z=InletInner.z;291 292 "Exchange Surface Area for one segment of pipe"293 Details.A=Geometry.Pi*Geometry.DoInner*Geometry.Lpipe;294 295 303 switch innerFlowRegime 296 304 … … 304 312 case "transition": 305 313 306 "using Turbulent Flow - to be implemented"314 "using Turbulent Flow" 307 315 (Inner.PressureDrop.fi-0.0035)*(Inner.PressureDrop.Re^0.42) = 0.264; 308 316 … … 312 320 case "turbulent": 313 321 314 "Inner Side Friction Factor - Turbulent Flow"322 "Inner Side Friction Factor" 315 323 (Inner.PressureDrop.fi-0.0035)*(Inner.PressureDrop.Re^0.42) = 0.264; 316 324 … … 330 338 case "transition": 331 339 332 "using Turbulent Flow - Transition Flow must be implemented"340 "using Turbulent Flow" 333 341 (Outer.PressureDrop.fi-0.0035)*(Outer.PressureDrop.Re^0.42) = 0.264; 334 342 … … 338 346 case "turbulent": 339 347 340 "Outer Side Friction Factor - Turbulent Flow"348 "Outer Side Friction Factor" 341 349 (Outer.PressureDrop.fi-0.0035)*(Outer.PressureDrop.Re^0.42) = 0.264; 342 350 … … 491 499 end 492 500 501 switch CalculationApproach 502 503 case "Full": 504 505 "Total Pressure Drop Outer Stream" 506 Outer.PressureDrop.Pdrop = Outer.PressureDrop.Pd_fric; 507 508 "Total Pressure Drop Inner Stream" 509 Inner.PressureDrop.Pdrop = Inner.PressureDrop.Pd_fric; 510 511 "Pressure Drop Outer Stream" 512 OutletOuter.P = InletOuter.P - Outer.PressureDrop.Pdrop; 513 514 "Pressure Drop Inner Stream" 515 OutletInner.P = InletInner.P - Inner.PressureDrop.Pdrop; 516 517 "Outer Pipe Pressure Drop for friction" 518 Outer.PressureDrop.Pd_fric = (2*Outer.PressureDrop.fi*Geometry.Lpipe*Outer.Properties.Average.rho*Outer.HeatTransfer.Vmean^2)/(Outer.PressureDrop.Dh*Outer.HeatTransfer.Phi); 519 520 "Inner Pipe Pressure Drop for friction" 521 Inner.PressureDrop.Pd_fric = (2*Inner.PressureDrop.fi*Geometry.Lpipe*Inner.Properties.Average.rho*Inner.HeatTransfer.Vmean^2)/(Geometry.DiInner*Inner.HeatTransfer.Phi); 522 523 case "Simplified": 524 525 "Total Pressure Drop Outer Stream" 526 Outer.PressureDrop.Pdrop = Outer.PressureDrop.Pd_fric; 527 528 "Total Pressure Drop Inner Stream" 529 Inner.PressureDrop.Pdrop = Inner.PressureDrop.Pd_fric; 530 531 "Pressure Drop Outer Stream" 532 OutletOuter.P = InletOuter.P - Outer.PressureDrop.Pdrop; 533 534 "Pressure Drop Inner Stream" 535 OutletInner.P = InletInner.P - Inner.PressureDrop.Pdrop; 536 537 "Outer Pipe Pressure Drop for friction" 538 Outer.PressureDrop.Pd_fric = 0.01*InletOuter.P; 539 540 "Inner Pipe Pressure Drop for friction" 541 Inner.PressureDrop.Pd_fric = 0.01*InletInner.P; 542 543 end 544 493 545 "Inner Pipe Film Coefficient" 494 546 Inner.HeatTransfer.hcoeff = (Inner.HeatTransfer.Nu*Inner.Properties.Average.K/Geometry.DiInner)*Inner.HeatTransfer.Phi; … … 497 549 Outer.HeatTransfer.hcoeff= (Outer.HeatTransfer.Nu*Outer.Properties.Average.K/Outer.HeatTransfer.Dh)*Outer.HeatTransfer.Phi; 498 550 499 switch CalculationApproach500 501 case "Full":502 503 "Total Pressure Drop Outer Stream"504 Outer.PressureDrop.Pdrop = Outer.PressureDrop.Pd_fric;505 506 "Total Pressure Drop Inner Stream"507 Inner.PressureDrop.Pdrop = Inner.PressureDrop.Pd_fric;508 509 "Pressure Drop Outer Stream"510 OutletOuter.P = InletOuter.P - Outer.PressureDrop.Pdrop;511 512 "Pressure Drop Inner Stream"513 OutletInner.P = InletInner.P - Inner.PressureDrop.Pdrop;514 515 "Outer Pipe Pressure Drop for friction"516 Outer.PressureDrop.Pd_fric = (2*Outer.PressureDrop.fi*Geometry.Lpipe*Outer.Properties.Average.rho*Outer.HeatTransfer.Vmean^2)/(Outer.PressureDrop.Dh*Outer.HeatTransfer.Phi);517 518 "Inner Pipe Pressure Drop for friction"519 Inner.PressureDrop.Pd_fric = (2*Inner.PressureDrop.fi*Geometry.Lpipe*Inner.Properties.Average.rho*Inner.HeatTransfer.Vmean^2)/(Geometry.DiInner*Inner.HeatTransfer.Phi);520 521 522 case "Simplified":523 524 "Total Pressure Drop Outer Stream"525 Outer.PressureDrop.Pdrop = Outer.PressureDrop.Pd_fric;526 527 "Total Pressure Drop Inner Stream"528 Inner.PressureDrop.Pdrop = Inner.PressureDrop.Pd_fric;529 530 "Pressure Drop Outer Stream"531 OutletOuter.P = InletOuter.P - Outer.PressureDrop.Pdrop;532 533 "Pressure Drop Inner Stream"534 OutletInner.P = InletInner.P - Inner.PressureDrop.Pdrop;535 536 "Outer Pipe Pressure Drop for friction"537 Outer.PressureDrop.Pd_fric = 0.01*InletOuter.P;538 539 "Inner Pipe Pressure Drop for friction"540 Inner.PressureDrop.Pd_fric = 0.01*InletInner.P;541 542 end543 544 551 "Outer Pipe Pressure Drop due to return" 545 552 Outer.PressureDrop.Pd_ret = 0*'kPa'; … … 550 557 "Outer Pipe Phi correction" 551 558 Outer.HeatTransfer.Phi = (Outer.Properties.Average.Mu/Outer.Properties.Wall.Mu)^0.14; 552 559 553 560 "Inner Pipe Phi correction" 554 561 Inner.HeatTransfer.Phi = (Inner.Properties.Average.Mu/Inner.Properties.Wall.Mu)^0.14;
Note: See TracChangeset
for help on using the changeset viewer.