Flow models for pressure drop calculations
This package contains a basic flow model that is used by the various models that compute pressure drop.
Because the density does not change signficantly in heating, ventilation and air conditioning systems for buildings, the flow models compute the pressure drop based on the mass flow rate and not the volume flow rate. This typically leads to simpler equations because it does not require the mass density, which changes when the flow is reversed. Although, for conceptual design of building energy system, there is in general not enough information available that would warrant a more detailed pressure drop calculation. If a more detailed computation of the flow resistance is needed, then a user can use models from the Modelica.Fluid library.
All functions have an argument m_flow_turbulent
that determines where the
flow transitions to fully turbulent flow. For smaller mass flow rates,
the quadratic relation is replaced by a function that has finite slope
near zero pressure drop. This is done for numerical reasons, and to approximate
laminar flow, although the implementation does not use a linear function.
The two main functions are
Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_dp
and
Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_m_flow
that compute the mass flow rate or the pressure drop, respectively.
Both functions are two times continuously differentiable.
First and second order derivatives are provided
in the function that have the suffix _der
and _der2
.
Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).
Name | Description |
---|---|
basicFlowFunction_dp | Function that computes mass flow rate for given pressure drop |
basicFlowFunction_dp_der | 1st derivative of function that computes mass flow rate for given pressure drop |
basicFlowFunction_dp_der2 | 2nd derivative of flow function2nd derivative of function that computes mass flow rate for given pressure drop |
basicFlowFunction_m_flow | Function that computes pressure drop for given mass flow rate |
basicFlowFunction_m_flow_der | 1st derivative of function that computes pressure drop for given mass flow rate |
basicFlowFunction_m_flow_der2 | 2nd derivative of function that computes pressure drop for given mass flow rate |
Validation | Collection of validation models |
Function that computes mass flow rate for given pressure drop
Function that computes the pressure drop of flow elements as
m = sign(Δp) k √ Δp
with regularization near the origin. Therefore, the flow coefficient is
k = m ⁄ √ Δp
The input m_flow_turbulent
determines the location of the regularization.
Type | Name | Default | Description |
---|---|---|---|
PressureDifference | dp | Pressure difference between port_a and port_b (= port_a.p - port_b.p) [Pa] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] |
Type | Name | Description |
---|---|---|
MassFlowRate | m_flow | Mass flow rate in design flow direction [kg/s] |
1st derivative of function that computes mass flow rate for given pressure drop
Function that implements the first order derivative of Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_dp with respect to the mass flow rate.
Extends from Modelica.Icons.Function (Icon for functions).
Type | Name | Default | Description |
---|---|---|---|
PressureDifference | dp | Pressure difference between port_a and port_b (= port_a.p - port_b.p) [Pa] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] | |
Real | dp_der | Derivative of pressure difference between port_a and port_b (= port_a.p - port_b.p) |
Type | Name | Description |
---|---|---|
Real | m_flow_der | Derivative of mass flow rate in design flow direction [kg/s2] |
2nd derivative of flow function2nd derivative of function that computes mass flow rate for given pressure drop
Function that implements the second order derivative of Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_dp with respect to the mass flow rate.
Extends from Modelica.Icons.Function (Icon for functions).
Type | Name | Default | Description |
---|---|---|---|
PressureDifference | dp | Pressure difference between port_a and port_b (= port_a.p - port_b.p) [Pa] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] | |
Real | dp_der | 1st derivative of pressure difference between port_a and port_b (= port_a.p - port_b.p) | |
Real | dp_der2 | 2nd derivative of pressure difference between port_a and port_b (= port_a.p - port_b.p) |
Type | Name | Description |
---|---|---|
Real | m_flow_der2 | 2nd derivative of mass flow rate in design flow direction |
Function that computes pressure drop for given mass flow rate
Function that computes the pressure drop of flow elements as
Δp = sign(m) (m ⁄ k)2
with regularization near the origin. Therefore, the flow coefficient is
k = m ⁄ √ Δp
The input m_flow_turbulent
determines the location of the regularization.
Type | Name | Default | Description |
---|---|---|---|
MassFlowRate | m_flow | Mass flow rate in design flow direction [kg/s] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] |
Type | Name | Description |
---|---|---|
PressureDifference | dp | Pressure difference between port_a and port_b (= port_a.p - port_b.p) [Pa] |
1st derivative of function that computes pressure drop for given mass flow rate
Function that implements the first order derivative of Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_m_flow with respect to the mass flow rate.
Extends from Modelica.Icons.Function (Icon for functions).
Type | Name | Default | Description |
---|---|---|---|
MassFlowRate | m_flow | Mass flow rate in design flow direction [kg/s] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] | |
Real | m_flow_der | Derivative of mass flow rate in design flow direction [kg/s2] |
Type | Name | Description |
---|---|---|
Real | dp_der | Derivative of pressure difference between port_a and port_b (= port_a.p - port_b.p) |
2nd derivative of function that computes pressure drop for given mass flow rate
Function that implements the second order derivative of Annex60.Fluid.BaseClasses.FlowModels.basicFlowFunction_m_flow with respect to the mass flow rate.
Extends from Modelica.Icons.Function (Icon for functions).
Type | Name | Default | Description |
---|---|---|---|
MassFlowRate | m_flow | Mass flow rate in design flow direction [kg/s] | |
Real | k | Flow coefficient, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2) | |
MassFlowRate | m_flow_turbulent | Mass flow rate where transition to turbulent flow occurs [kg/s] | |
Real | m_flow_der | 1st derivative of mass flow rate in design flow direction [kg/s2] | |
Real | m_flow_der2 | 2nd derivative of mass flow rate in design flow direction [kg/s3] |
Type | Name | Description |
---|---|---|
Real | dp_der2 | 2nd derivative of pressure difference between port_a and port_b (= port_a.p - port_b.p) |