Adaptors for connections of fluid components and the regulation of fluid flow
This sublibrary contains models and functions providing pressure loss correlations. All models in this library have the property that no mass and no energy is stored in the component. Therefore, none of the models have a state.
All functions are continuous and have a finite, non-zero, smooth, first derivative. The functions are all guaranteed to be strict monotonically increasing. The mentioned properties guarantee that a unique inverse of every function exists. Note, the usual quadratic pressure loss correlation
The two mentioned problems are solved in this package by approximating the characteristics around zero mass flow rates with appropriate polynomials. The monotonicity is guaranteed using results from:
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
Name | Description |
---|---|
Bends | Flow models for bends |
Orifices | Flow models for orifices |
GenericResistances | Flow models for generic resistances |
SimpleGenericOrifice | Simple generic orifice defined by pressure loss coefficient and diameter (only for flow from port_a to port_b) |
SharpEdgedOrifice | Pressure drop due to sharp edged orifice (for both flow directions) |
AbruptAdaptor | Pressure drop in pipe due to suddenly expanding or reducing area (for both flow directions) |
MultiPort | Multiply a port; useful if multiple connections shall be made to a port exposing a state |
TeeJunctionIdeal | Splitting/joining component with static balances for an infinitesimal control volume |
TeeJunctionVolume | Splitting/joining component with static balances for a dynamic control volume |
BaseClasses | Base classes used in the Fittings package (only of interest to build new component models) |
Simple generic orifice defined by pressure loss coefficient and diameter (only for flow from port_a to port_b)
This pressure drop component defines a simple, generic orifice, where the loss factor ζ is provided for one flow direction (e.g., from loss table of a book):
Δp = 0.5*ζ*ρ*v*|v| = 8*ζ/(π^2*D^4*ρ) * m_flow*|m_flow|
where
Since the pressure loss factor zeta is provided only for a mass flow from port_a to port_b, the pressure loss is not correct when the flow is reversing. If reversing flow only occurs in a short time interval, this is most likely uncritical. If significant reversing flow can appear, this component should not be used.
Extends from Modelica.Fluid.Interfaces.PartialTwoPortTransport (Partial element transporting fluid between two ports without storage of mass or energy), Modelica.Fluid.Interfaces.PartialLumpedFlow (Base class for a lumped momentum balance).
Name | Description |
---|---|
replaceable package Medium | Medium in the component |
pathLength | Length flow path [m] |
diameter | Diameter of orifice [m] |
zeta | Loss factor for flow of port_a -> port_b |
use_zeta | = false to obtain zeta from dp_nominal and m_flow_nominal |
Nominal operating point | |
m_flow_nominal | Mass flow rate for dp_nominal [kg/s] |
dp_nominal | Nominal pressure drop [Pa] |
Assumptions | |
allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
Dynamics | |
momentumDynamics | Formulation of momentum balance |
Advanced | |
dp_start | Guess value of dp = port_a.p - port_b.p [Pa] |
m_flow_start | Guess value of m_flow = port_a.m_flow [kg/s] |
m_flow_small | Small mass flow rate for regularization of zero flow [kg/s] |
use_Re | = true, if turbulent region is defined by Re, otherwise by m_flow_small |
from_dp | = true, use m_flow = f(dp) else dp = f(m_flow) |
Diagnostics | |
show_T | = true, if temperatures at port_a and port_b are computed |
show_V_flow | = true, if volume flow rate at inflowing port is computed |
Name | Description |
---|---|
port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
Pressure drop due to sharp edged orifice (for both flow directions)
Extends from BaseClasses.QuadraticTurbulent.BaseModel (Generic pressure drop component with constant turbulent loss factor data and without an icon).
Name | Description |
---|---|
replaceable package Medium | Medium in the component |
data | Loss factor data |
length | Length of orifice [m] |
diameter | Inner diameter of pipe (= same at port_a and port_b) [m] |
leastDiameter | Smallest diameter of orifice [m] |
alpha | Angle of orifice [deg] |
Nominal operating point | |
m_flow_nominal | Nominal mass flow rate [kg/s] |
Assumptions | |
allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
Advanced | |
dp_start | Guess value of dp = port_a.p - port_b.p [Pa] |
m_flow_start | Guess value of m_flow = port_a.m_flow [kg/s] |
m_flow_small | Small mass flow rate for regularization of zero flow [kg/s] |
use_Re | = true, if turbulent region is defined by Re, otherwise by m_flow_small |
from_dp | = true, use m_flow = f(dp) else dp = f(m_flow) |
Diagnostics | |
show_T | = true, if temperatures at port_a and port_b are computed |
show_V_flow | = true, if volume flow rate at inflowing port is computed |
show_Re | = true, if Reynolds number is included for plotting |
Name | Description |
---|---|
port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
Pressure drop in pipe due to suddenly expanding or reducing area (for both flow directions)
Extends from BaseClasses.QuadraticTurbulent.BaseModelNonconstantCrossSectionArea (Generic pressure drop component with constant turbulent loss factor data and without an icon, for non-constant cross section area).
Name | Description |
---|---|
replaceable package Medium | Medium in the component |
data | Loss factor data |
diameter_a | Inner diameter of pipe at port_a [m] |
diameter_b | Inner diameter of pipe at port_b [m] |
Nominal operating point | |
m_flow_nominal | Nominal mass flow rate [kg/s] |
Assumptions | |
allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
Advanced | |
m_flow_start | Guess value of m_flow = port_a.m_flow [kg/s] |
m_flow_small | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |
show_T | = true, if temperatures at port_a and port_b are computed |
show_V_flow | = true, if volume flow rate at inflowing port is computed |
show_Re | = true, if Reynolds number is included for plotting |
show_totalPressures | = true, if total pressures are included for plotting |
show_portVelocities | = true, if port velocities are included for plotting |
Name | Description |
---|---|
port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
Multiply a port; useful if multiple connections shall be made to a port exposing a state
This model is useful if multiple connections shall be made to a port of a volume model exposing a state, like a pipe with ModelStructure av_vb. The mixing is shifted into the volume connected to port_a and the result is propagated back to each ports_b.
If multiple connections were directly made to the volume, then ideal mixing would take place in the connection set, outside the volume. This is normally not intended.
Name | Description |
---|---|
replaceable package Medium |
Name | Description |
---|---|
replaceable package Medium | |
port_a | |
ports_b[nPorts_b] |
Splitting/joining component with static balances for an infinitesimal control volume
Extends from Modelica.Fluid.Fittings.BaseClasses.PartialTeeJunction (Base class for a splitting/joining component with three ports).
Name | Description |
---|---|
replaceable package Medium | Medium in the component |
Name | Description |
---|---|
port_1 | |
port_2 | |
port_3 |
Splitting/joining component with static balances for a dynamic control volume
Extends from Modelica.Fluid.Fittings.BaseClasses.PartialTeeJunction (Base class for a splitting/joining component with three ports), Modelica.Fluid.Interfaces.PartialLumpedVolume (Lumped volume with mass and energy balance).
Name | Description |
---|---|
replaceable package Medium | Medium in the component |
fluidVolume | Volume [m3] |
V | Mixing volume inside junction [m3] |
Assumptions | |
Dynamics | |
energyDynamics | Formulation of energy balance |
massDynamics | Formulation of mass balance |
Initialization | |
p_start | Start value of pressure [Pa] |
use_T_start | = true, use T_start, otherwise h_start |
T_start | Start value of temperature [K] |
h_start | Start value of specific enthalpy [J/kg] |
X_start[Medium.nX] | Start value of mass fractions m_i/m [kg/kg] |
C_start[Medium.nC] | Start value of trace substances |
Name | Description |
---|---|
port_1 | |
port_2 | |
port_3 |