modelPipeFlowBase
Extends from Pipe (Pipe with two ports fluid ports and an internal fluid).
Information
It is the base model for flow, and heat transfer, in pipes. The flow may be reversible, dispite it is against the Modelica requirements when using input and output variables.
It contains the momentum and energy conservation equations, with two missing variables: the pressure drop and the exchanged heat. The last only in the case of a detailed heat transfer model. It is important to take care of the parameter isCompressibleFlow, as it will determine the equations to use.
Regarding energy: Only if the thermalType parameter is set to detailed, an extra equation is needed in order to calculate the heat transfer. But you can choose isenthalpic, adiabatic, isothermal, fixed power, or fixed temperature change behaviours.
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 | |
| 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 | false | indicates if there is a two phase flow |
| Heat transfer | |||
| FreeFluids.Types.ThermalType | thermalType | 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 | 0 | Heat exchange if thermaltype = fixedPower. Positive if heat enters the tube |
| Modelica.Units.SI.TemperatureDifference | fixedDeltaT | 0 | fixed T diff. between ports if thermalType = fixedDeltaT. Positive if Tb > Ta |
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 | ||
| Modelica.Units.SI.Velocity | Vb | ||
| Medium.Density | RhoA | density at Port A | |
| Medium.Density | RhoB | density at PortB | |
| Medium.ThermodynamicState | StateA | state at PortA | |
| Medium.ThermodynamicState | StateB | state at PortB | |
| Modelica.Units.SI.VolumeFlowRate | Qa | volume flow rate at PortA | |
| Modelica.Units.SI.VolumeFlowRate | Qb | volume flow rate at PortB | |
| Medium.Temperature | Ta | ||
| Medium.Temperature | Tb | ||
| Modelica.Units.SI.Power | W | heat transfer between fluid and wall. Positive if fluid inputs heat |