modelHEXgeneric1Ph
Exchanger model without heat transfer coefficient calculation, for 1 phase flow in tubes
Extends from FreeFluids.Pipes.PipeFlow1Ph (Single pipe(not double) for single phase, full bore flow. With no detailed heat transfer model).
Information
The model is for a tube heat exchanger that can have several passes and extended surface, in an undefined external flowing media. We need to specify the global U, as it is impossible its calculation. We define also the internal media. For the external media only Cp, inlet temperature, and outlet temperature (or mass flow rate) are needed.As an alternative it is also possible to use a fixed exchanged power, or a fixed temperature for the tubes external surface. And, for better convergence when the exchanger is not in use, switch the pipes to isenthalpic or adiabatic.
If the exchanger type is undefined, a global LMTD will be used for the exchanged heat calculation, otherwise a mixed NTU/LTMD method will be used.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Physical data | |||
| Boolean | useTubeLength (from PipePhysical) | true | use the supplied length |
| Modelica.Units.SI.Distance | lTube (from PipePhysical) | 0 | supplied individual tube length |
| Boolean | fixNumTubes (from PipePhysical) | true | if true fixes the number of tubes to numTubes |
| Integer | numTubes (from PipePhysical) | 1 | number of parallel identical paths |
| Boolean | isCircular (from PipePhysical) | true | the pipe is circular in shape |
| Boolean | useDiameter (from PipePhysical) | true | the supplied diameter will be used for calculation of section and perimeter |
| Modelica.Units.SI.Distance | di (from PipePhysical) | 0.0 | supplied internal diameter if path is circular |
| Boolean | useSectionAndPerimeter (from PipePhysical) | false | the supplied section and perimeter will be used |
| Modelica.Units.SI.Area | section (from PipePhysical) | 0 | supplied pipe section if not circular |
| Modelica.Units.SI.Distance | perimeter (from PipePhysical) | 0 | supplied perimeter if not circular |
| Modelica.Units.SI.Distance | thickness (from PipePhysical) | 1e-3 | pipe thickness. Vessel wall thickness for halfcoils |
| Modelica.Units.SI.Distance | roughness (from PipePhysical) | 1.5e-005 | pipe roughness. SS:1.5e-5, Steel new:4.6e-5, Steel old:2.0e-4, Concrete:1.5e-3 |
| Modelica.Units.SI.Distance | thicknessInsul (from PipePhysical) | 0 | insulation thickness |
| Modelica.Units.SI.Density | rhoWall (from PipePhysical) | 8000 | |
| FreeFluids.Types.TemaShell | shellType | FreeFluids.Types.TemaShell.E | |
| Modelica.Units.SI.Length | tubeLength | ||
| Integer | numTubesTotal | ||
| Integer | numPasses | 1 | |
| Ports links | |||
| Boolean | useElevDifference (from TwoFluidPorts) | true | introduces, or not, an equation for the ports elevation. Use only in one connector |
| FreeFluids.Types.ElevationOption | elevCalcMethod (from TwoFluidPorts) | FreeFluids.Types.ElevationOption.differential | if useElevDifference==true, selects the equation to use: differential, or absolute for PortB |
| Modelica.Units.SI.Length | elevDifference (from TwoFluidPorts) | 0.0 | used only if previously selected. Positive if PortB higher than PortA |
| Modelica.Units.SI.Length | portBelevation (from TwoFluidPorts) | 0.0 | used only if previously selected. |
| Boolean | calcEnthalpyDifference (from TwoFluidPorts) | true | if true, will calculate the enthalpy difference between ports. Use only in one connector |
| Boolean | passComposition (from TwoFluidPorts) | true | if true, the equation PortA.X=PortB.X will be activated |
| Flow | |||
| Integer | numActiveTubes (from Pipe) | numTubes | number of parallel identical paths used with flow. Default=numTubes |
| Real | pipeComplexity (from Pipe) | 0 | Approx. estimation of equivalent length,0=not used,0.25=supply lines,0.5=long runs, 1=normal,2=valves,4=complex valves |
| Real | equivL_Di (from Pipe) | 0 | Equivalent length of accesories as multiples of Di |
| Real | numVelocityHeads (from Pipe) | 0 | number of velocity heads for pressure loss |
| Modelica.Units.SI.Area | kv (from Pipe) | 0 | This allows for special head loses to be incorporated inside the pipe calculation via Kv |
| Fraction | aperture (from Pipe) | 1 | Fraction of Kv used |
| Boolean | fullBore (from Pipe) | true | true if the full pipe section is used for flow |
| Boolean | isCompressibleFlow (from Pipe) | false | indicates if kinetic energy and momentum are taken into account or not |
| Boolean | twoPhaseFlow (from PipeFlowBase) | false | indicates if there is a two phase flow |
| Heat transfer | |||
| FreeFluids.Types.ThermalType | thermalType (from PipeFlowBase) | FreeFluids.Types.ThermalType.detailed | Alternatives: detailed, isenthalpic, adiabatic, isothermal, fixed W, fixed deltaT. If detailed, W calculation must be supplied |
| Modelica.Units.SI.HeatFlowRate | fixedW (from PipeFlowBase) | 0 | Heat exchange if thermaltype = fixedPower. Positive if heat enters the tube |
| Modelica.Units.SI.TemperatureDifference | fixedDeltaT (from PipeFlowBase) | 0 | fixed T diff. between ports if thermalType = fixedDeltaT. Positive if Tb > Ta |
| FreeFluids.Types.ExchangerType | exchangerType | FreeFluids.Types.ExchangerType.undefined | if undefined, raw LMTD will be used, otherwise mixed LMTD/NTU method |
| Boolean | counterCurrent | true | for undefined type of exchanger select if flow is counter-current, otherwise will be considered co-current |
| Integer | numRows | 1 | necessary only for crossflow |
| Modelica.Units.SI.SpecificHeatCapacity | extCp | 1003 | fixed specific heat capacity of external media. Air=1003. Water=4194 |
| Modelica.Units.SI.Temperature | extTin | 298.15 | fixed external media inlet temperature |
| Boolean | fixExternalFlow | true | if false the external media outlet temp. will be fixed |
| Modelica.Units.SI.MassFlowRate | extG | fixed external media massic flow | |
| Modelica.Units.SI.Temperature | extTout | 318.15 | fixed external media outlet temperature |
| Modelica.Units.SI.CoefficientOfHeatTransfer | u | fixed overall heat transfer coefficient referenced to external surface | |
| Real | extSratio | (di + 2*thickness)/di | ratio of external surface to internal bare tube surface |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| FreeFluids.Interfaces.FluidPortA | PortA (from TwoFluidPorts) | ||
| FreeFluids.Interfaces.FluidPortB | PortB (from TwoFluidPorts) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.Diameter | Di (from PipePhysical) | pipe internal diameter only if circular, otherwise four times Section/Perimeter | |
| Modelica.Units.SI.Area | PathSection (from PipePhysical) | Internal section of the tube. But not the flow section if double pipe | |
| Modelica.Units.SI.Distance | PathPerimeter (from PipePhysical) | Internal perimeter of the tube. But not the flow perimeter if double pipe | |
| Modelica.Units.SI.Distance | Ltotal (from PipePhysical) | total pipe length, as necessary for obtainning its total weight | |
| Modelica.Units.SI.Distance | Ltube (from PipePhysical) | pipe path length, as necessary for obtainning friction loss | |
| Integer | NumTubes (from PipePhysical) | number of parallel identical paths | |
| Modelica.Units.SI.Area | SiTube (from PipePhysical) | each tube internal surface | |
| Modelica.Units.SI.Area | SiTotal (from PipePhysical) | total pipe internal surface | |
| Modelica.Units.SI.Volume | ViTube (from PipePhysical) | each tube internal volume | |
| Modelica.Units.SI.Volume | ViTotal (from PipePhysical) | total pipe internal volume | |
| Modelica.Units.SI.Diameter | Do (from PipePhysical) | pipe external diameter | |
| Modelica.Units.SI.Diameter | Dinsul (from PipePhysical) | pipe diameter with insulation | |
| Modelica.Units.SI.Area | SoTube (from PipePhysical) | each tube external surface | |
| Modelica.Units.SI.Area | SoTotal (from PipePhysical) | total pipe external surface | |
| Modelica.Units.SI.Volume | VoTube (from PipePhysical) | each tube external volume | |
| Modelica.Units.SI.Volume | VoTotal (from PipePhysical) | total pipe external volume | |
| Modelica.Units.SI.Area | SinsulTube (from PipePhysical) | each tube insulation surface | |
| Modelica.Units.SI.Area | SinsulTotal (from PipePhysical) | total pipe insulation surface | |
| Modelica.Units.SI.Mass | MassPipeTotal (from PipePhysical) | total mass of the pipe | |
| Modelica.Units.SI.SpecificEnthalpy | Hdiff (from TwoFluidPorts) | specific enthalpy difference: Port B - Port A | |
| Modelica.Units.SI.PressureDifference | Pdiff (from TwoFluidPorts) | pressure difference: Port B - Port A | |
| Integer | NumActiveTubes (from Pipe) | number of parallel identical paths used with flow. | |
| Real | Slope (from Pipe) | pipe slope as (PortB.Elevation-PortA.Elevation)/Ltube | |
| Modelica.Units.SI.Area | SiActive (from Pipe) | active pipe internal surface | |
| Modelica.Units.SI.Volume | ViActive (from Pipe) | active pipe internal volume | |
| Modelica.Units.SI.Area | SoActive (from Pipe) | active pipe external surface | |
| Modelica.Units.SI.Volume | VoActive (from Pipe) | active pipe external volume | |
| Modelica.Units.SI.Area | SinsulActive (from Pipe) | active pipe external surface | |
| Modelica.Units.SI.Distance | LeTube (from Pipe) | equivalent length of the pipe for pressure loss | |
| Modelica.Units.SI.Area | PathSectionActive (from Pipe) | section of each tube used for flow calculation | |
| Modelica.Units.SI.Distance | PathPerimeterActive (from Pipe) | perimeter of each tube used for flow calculation | |
| Modelica.Units.SI.Diameter | Dh (from Pipe) | four time the hydraulic radius | |
| Modelica.Units.SI.Mass | MassProductTotal (from Pipe) | Mass of product inside all the tubes | |
| Modelica.Units.SI.Pressure | PLossFriction (from Pipe) | friction head loss | |
| Modelica.Units.SI.Velocity | Va (from PipeFlowBase) | ||
| Modelica.Units.SI.Velocity | Vb (from PipeFlowBase) | ||
| Medium.Density | RhoA (from PipeFlowBase) | density at Port A | |
| Medium.Density | RhoB (from PipeFlowBase) | density at PortB | |
| Medium.ThermodynamicState | StateA (from PipeFlowBase) | state at PortA | |
| Medium.ThermodynamicState | StateB (from PipeFlowBase) | state at PortB | |
| Modelica.Units.SI.VolumeFlowRate | Qa (from PipeFlowBase) | volume flow rate at PortA | |
| Modelica.Units.SI.VolumeFlowRate | Qb (from PipeFlowBase) | volume flow rate at PortB | |
| Medium.Temperature | Ta (from PipeFlowBase) | ||
| Medium.Temperature | Tb (from PipeFlowBase) | ||
| Modelica.Units.SI.Power | W (from PipeFlowBase) | heat transfer between fluid and wall. Positive if fluid inputs heat | |
| Medium.ThermodynamicState | StateAvg (from PipeFlow1Ph) | average state for physical properties calculation | |
| Modelica.Units.SI.Density | Rho (from PipeFlow1Ph) | average density used in calculations | |
| Medium.DynamicViscosity | Mu (from PipeFlow1Ph) | average dynamic viscosity used in calculations | |
| Modelica.Units.SI.ReynoldsNumber | Re (from PipeFlow1Ph) | Reynolds number at average conditions | |
| Real | F (from PipeFlow1Ph) | Darcy's friction factor at average conditions | |
| Modelica.Units.SI.VolumeFlowRate | Q (from PipeFlow1Ph) | volume flow rate in each active tube at average conditions | |
| Modelica.Units.SI.Velocity | V (from PipeFlow1Ph) | velocity at average conditions. Normally between 0.9 and 3.0 m/s for liquids | |
| Modelica.Units.SI.Area | Sext | ||
| Modelica.Units.SI.MassFlowRate | Gext | external media mass flow rate | |
| Modelica.Units.SI.Temperature | TextOut | ||
| Modelica.Units.SI.ThermalConductance | ThConductance | ||
| Modelica.Units.SI.TemperatureDifference | LMTD | ||
| Real | Pntu | ||
| Real | Rntu | ||
| Real | NTU | ||
| Real | Flmtd |