modelPoint_m_flow
Powerlaw with flow coeffient fitted based on flow exponent and 1 datapoint
Extends from Buildings.Airflow.Multizone.Coefficient_m_flow (Powerlaw with coefficient for mass flow rate).
Information
Model that fits the flow coefficient of the massflow version of the orifice equation based on 1 datapoint of mass flow rate and pressure difference, and given flow exponent.
A similar model is also used in the CONTAM software (Dols and Walton, 2015).
References
- W. S. Dols and B. J. Polidoro,2015. CONTAM User Guide and Program Documentation Version 3.2, National Institute of Standards and Technology, NIST TN 1887, Sep. 2015. doi: 10.6028/NIST.TN.1887.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real | m (from PowerLawResistanceParameters) | Flow exponent, m=0.5 for turbulent, m=1 for laminar | |
| Real | k (from Coefficient_m_flow) | Flow coefficient, k = m_flow/ dp^m | |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Boolean | forceErrorControlOnFlow (from ErrorControl) | true | Flag to force error control on m_flow. Set to true if interested in flow rate |
| Boolean | homotopyInitialization (from PartialOneWayFlowElement) | true | = true, use homotopy method |
| Boolean | useDefaultProperties (from PartialOneWayFlowElement) | true | Set to false to use density and viscosity based on actual medium state, rather than using default values |
| Modelica.Units.SI.PressureDifference | dp_turbulent (from PartialOneWayFlowElement) | 0.1 | Pressure difference where laminar and turbulent flow relation coincide. Recommended = 0.1 |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Test data | |||
| Modelica.Units.SI.PressureDifference | dpMea_nominal | Pressure difference of test point | |
| Modelica.Units.SI.MassFlowRate | mMea_flow_nominal | Mass flow rate of test point | |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow)) | Medium properties in port_b |
| Modelica.Units.SI.VolumeFlowRate | V_flow (from PartialOneWayFlowElement) | m_flow/rho | Volume flow rate through the component |
| Modelica.Units.SI.Density | rho (from PartialOneWayFlowElement) | Fluid density at port_a |
Revisions
-
February 2, 2022, by Michael Wetter:
Revised implementation.
This is for IBPSA, #1436. -
Apr 6, 2021, 2020, by Klaas De Jonge:
First implementation.