modelPartialEightPortInterface
Partial model with eight ports and declaration of quantities that are used by many models
Extends from Buildings.Fluid.Interfaces.EightPort.
Information
This component defines the interface for models with eight fluid ports and four fluid streams. It is similar to Buildings.Fluid.Interfaces.PartialTwoPortInterface, but it has eight ports instead of two.
The model is used by other models in this package that add heat transfer, mass transfer and pressure drop equations.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m1_flow_nominal | Nominal mass flow rate | |
| Modelica.Units.SI.MassFlowRate | m2_flow_nominal | Nominal mass flow rate | |
| Modelica.Units.SI.MassFlowRate | m3_flow_nominal | Nominal mass flow rate | |
| Modelica.Units.SI.MassFlowRate | m4_flow_nominal | Nominal mass flow rate | |
| Advanced | |||
| Medium1.MassFlowRate | m1_flow_small | 1E-4*abs(m1_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Medium2.MassFlowRate | m2_flow_small | 1E-4*abs(m2_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Medium3.MassFlowRate | m3_flow_small | 1E-4*abs(m3_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Medium4.MassFlowRate | m4_flow_small | 1E-4*abs(m4_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T | false | = true, if actual temperature at port is computed |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Medium1.MassFlowRate | m1_flow | port_a1.m_flow | Mass flow rate from port_a1 to port_b1 (m1_flow > 0 is design flow direction) |
| Modelica.Units.SI.Pressure | dp1 | port_a1.p - port_b1.p | Pressure difference between port_a1 and port_b1 |
| Medium2.MassFlowRate | m2_flow | port_a2.m_flow | Mass flow rate from port_a2 to port_b2 (m2_flow > 0 is design flow direction) |
| Modelica.Units.SI.Pressure | dp2 | port_a2.p - port_b2.p | Pressure difference between port_a2 and port_b2 |
| Medium3.MassFlowRate | m3_flow | port_a3.m_flow | Mass flow rate from port_a3 to port_b3 (m3_flow > 0 is design flow direction) |
| Modelica.Units.SI.Pressure | dp3 | port_a3.p - port_b3.p | Pressure difference between port_a3 and port_b3 |
| Medium4.MassFlowRate | m4_flow | port_a4.m_flow | Mass flow rate from port_a4 to port_b4 (m4_flow > 0 is design flow direction) |
| Modelica.Units.SI.Pressure | dp4 | port_a4.p - port_b4.p | Pressure difference between port_a4 and port_b4 |
| Medium1.ThermodynamicState | sta_a1 | if allowFlowReversal1 then Medium1.setState_phX(port_a1.p, noEvent(actualStream(port_a1.h_outflow)), noEvent(actualStream(port_a1.Xi_outflow))) else Medium1.setState_phX(port_a1.p, inStream(port_a1.h_outflow), inStream(port_a1.Xi_outflow)) | Medium properties in port_a1 |
| Medium1.ThermodynamicState | sta_b1 | if allowFlowReversal1 then Medium1.setState_phX(port_b1.p, noEvent(actualStream(port_b1.h_outflow)), noEvent(actualStream(port_b1.Xi_outflow))) else Medium1.setState_phX(port_b1.p, port_b1.h_outflow, port_b1.Xi_outflow) | Medium properties in port_b1 |
| Medium2.ThermodynamicState | sta_a2 | if allowFlowReversal2 then Medium2.setState_phX(port_a2.p, noEvent(actualStream(port_a2.h_outflow)), noEvent(actualStream(port_a2.Xi_outflow))) else Medium2.setState_phX(port_a2.p, inStream(port_a2.h_outflow), inStream(port_a2.Xi_outflow)) | Medium properties in port_a2 |
| Medium2.ThermodynamicState | sta_b2 | if allowFlowReversal2 then Medium2.setState_phX(port_b2.p, noEvent(actualStream(port_b2.h_outflow)), noEvent(actualStream(port_b2.Xi_outflow))) else Medium2.setState_phX(port_b2.p, port_b2.h_outflow, port_b2.Xi_outflow) | Medium properties in port_b2 |
| Medium3.ThermodynamicState | sta_a3 | if allowFlowReversal3 then Medium3.setState_phX(port_a3.p, noEvent(actualStream(port_a3.h_outflow)), noEvent(actualStream(port_a3.Xi_outflow))) else Medium3.setState_phX(port_a3.p, inStream(port_a3.h_outflow), inStream(port_a3.Xi_outflow)) | Medium properties in port_a3 |
| Medium3.ThermodynamicState | sta_b3 | if allowFlowReversal3 then Medium3.setState_phX(port_b3.p, noEvent(actualStream(port_b3.h_outflow)), noEvent(actualStream(port_b3.Xi_outflow))) else Medium3.setState_phX(port_b3.p, port_b3.h_outflow, port_b3.Xi_outflow) | Medium properties in port_b3 |
| Medium4.ThermodynamicState | sta_a4 | if allowFlowReversal4 then Medium4.setState_phX(port_a4.p, noEvent(actualStream(port_a4.h_outflow)), noEvent(actualStream(port_a4.Xi_outflow))) else Medium4.setState_phX(port_a4.p, inStream(port_a4.h_outflow), inStream(port_a4.Xi_outflow)) | Medium properties in port_a4 |
| Medium4.ThermodynamicState | sta_b4 | if allowFlowReversal4 then Medium4.setState_phX(port_b4.p, noEvent(actualStream(port_b4.h_outflow)), noEvent(actualStream(port_b4.Xi_outflow))) else Medium4.setState_phX(port_b4.p, port_b4.h_outflow, port_b4.Xi_outflow) | Medium properties in port_b4 |
Revisions
-
September 22, 2023, by Michael Wetter:
Improved documentation.
This is for IBPSA, #1796. -
February 3, 2022, by Michael Wetter:
IfallowFlowReversal==false, removednoEvent()declaration forsta_aand forsta_bbecause the variable is either already used withinStream()in the computation ofstate_*_inflow, or the result of a variable of the model that already may generate an event.
This is for IBPSA, #1578. -
February 2, 2022, by Hongxiang Fu:
IfallowFlowReversal==false, replacedactualStream()withinStream()forsta_aand removedactualStream()forsta_b.
This is for IBPSA, #1578. -
March 30, 2021, by Michael Wetter:
Added annotationHideResult=true.
This is for IBPSA, #1459. -
July 12, 2019, by Michael Wetter:
Corrected wrong medium in declaration ofm4_flow. -
July 2014, by Damien Picard:
First implementation.