Name | Description |
---|---|

FluidPort | Interface for quasi one-dimensional fluid flow in a piping network (incompressible or compressible, one or more phases, one or more substances) |

FluidPort_a | Generic fluid connector at design inlet |

FluidPort_b | Generic fluid connector at design outlet |

FluidPorts_a | Fluid connector with filled, large icon to be used for vectors of FluidPorts (vector dimensions must be added after dragging) |

FluidPorts_b | Fluid connector with outlined, large icon to be used for vectors of FluidPorts (vector dimensions must be added after dragging) |

PartialTwoPort | Partial component with two ports |

PartialTwoPortTransport | Partial element transporting fluid between two ports without storage of mass or energy |

HeatPorts_a | HeatPort connector with filled, large icon to be used for vectors of HeatPorts (vector dimensions must be added after dragging) |

HeatPorts_b | HeatPort connector with filled, large icon to be used for vectors of HeatPorts (vector dimensions must be added after dragging) |

PartialHeatTransfer | Common interface for heat transfer models |

PartialLumpedVolume | Lumped volume with mass and energy balance |

PartialLumpedFlow | Base class for a lumped momentum balance |

PartialDistributedVolume | Base class for distributed volume models |

PartialDistributedFlow | Base class for a distributed momentum balance |

PartialPressureLoss | Base flow model for pressure loss functions with the same area at port_a and at port_b |

Name | Description |
---|---|

replaceable package Medium | Medium model |

Name | Description |
---|---|

replaceable package Medium | Medium model |

m_flow | Mass flow rate from the connection point into the component [kg/s] |

p | Thermodynamic pressure in the connection point [Pa] |

h_outflow | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 [J/kg] |

Xi_outflow[Medium.nXi] | Independent mixture mass fractions m_i/m close to the connection point if m_flow < 0 [kg/kg] |

C_outflow[Medium.nC] | Properties c_i/m close to the connection point if m_flow < 0 |

Name | Description |
---|---|

replaceable package Medium | Medium model |

Name | Description |
---|---|

m_flow | Mass flow rate from the connection point into the component [kg/s] |

p | Thermodynamic pressure in the connection point [Pa] |

h_outflow | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 [J/kg] |

Xi_outflow[Medium.nXi] | Independent mixture mass fractions m_i/m close to the connection point if m_flow < 0 [kg/kg] |

C_outflow[Medium.nC] | Properties c_i/m close to the connection point if m_flow < 0 |

Name | Description |
---|---|

replaceable package Medium | Medium model |

Name | Description |
---|---|

m_flow | Mass flow rate from the connection point into the component [kg/s] |

p | Thermodynamic pressure in the connection point [Pa] |

h_outflow | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 [J/kg] |

Xi_outflow[Medium.nXi] | Independent mixture mass fractions m_i/m close to the connection point if m_flow < 0 [kg/kg] |

C_outflow[Medium.nC] | Properties c_i/m close to the connection point if m_flow < 0 |

Name | Description |
---|---|

replaceable package Medium | Medium model |

Name | Description |
---|---|

m_flow | Mass flow rate from the connection point into the component [kg/s] |

p | Thermodynamic pressure in the connection point [Pa] |

h_outflow | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 [J/kg] |

Xi_outflow[Medium.nXi] | Independent mixture mass fractions m_i/m close to the connection point if m_flow < 0 [kg/kg] |

C_outflow[Medium.nC] | Properties c_i/m close to the connection point if m_flow < 0 |

Name | Description |
---|---|

replaceable package Medium | Medium model |

Name | Description |
---|---|

m_flow | Mass flow rate from the connection point into the component [kg/s] |

p | Thermodynamic pressure in the connection point [Pa] |

h_outflow | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 [J/kg] |

Xi_outflow[Medium.nXi] | Independent mixture mass fractions m_i/m close to the connection point if m_flow < 0 [kg/kg] |

C_outflow[Medium.nC] | Properties c_i/m close to the connection point if m_flow < 0 |

This partial model defines an interface for components with two ports.
The treatment of the design flow direction and of flow reversal are predefined based on the parameter

.
The component may transport fluid and may have internal storage for a given fluid **allowFlowReversal**

.
**Medium**

An extending model providing direct access to internal storage of mass or energy through port_a or port_b
should redefine the protected parameters

and **port_a_exposesState**

appropriately.
This will be visualized at the port icons, in order to improve the understanding of fluid model diagrams.
**port_b_exposesState**

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

Assumptions | |

allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

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) |

This component transports fluid between its two ports, without storing mass or energy.
Energy may be exchanged with the environment though, e.g., in the form of work.
`PartialTwoPortTransport`

is intended as base class for devices like orifices, valves and simple fluid machines.

Three equations need to be added by an extending class using this component:

- the momentum balance specifying the relationship between the pressure drop
`dp`

and the mass flow rate`m_flow`

, `port_b.h_outflow`

for flow in design direction, and`port_a.h_outflow`

for flow in reverse direction.

Moreover appropriate values shall be assigned to the following parameters:

`dp_start`

for a guess of the pressure drop`m_flow_small`

for regularization of zero flow.

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

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] |

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) |

Name | Description |
---|---|

T | Port temperature [K] |

Q_flow | Heat flow rate (positive if flowing from outside into the component) [W] |

Name | Description |
---|---|

T | Port temperature [K] |

Q_flow | Heat flow rate (positive if flowing from outside into the component) [W] |

This component is a common interface for heat transfer models. The heat flow rates `Q_flows[n]`

through the boundaries of n flow segments
are obtained as function of the thermodynamic `states`

of the flow segments for a given fluid `Medium`

,
the `surfaceAreas[n]`

and the boundary temperatures `heatPorts[n].T`

.

The heat loss coefficient `k`

can be used to model a thermal isolation between `heatPorts.T`

and `T_ambient`

.

An extending model implementing this interface needs to define one equation: the relation between the predefined fluid temperatures `Ts[n]`

,
the boundary temperatures `heatPorts[n].T`

, and the heat flow rates `Q_flows[n]`

.

Name | Description |
---|---|

Ambient | |

k | Heat transfer coefficient to ambient [W/(m2.K)] |

T_ambient | Ambient temperature [K] |

Internal Interface | |

replaceable package Medium | Medium in the component |

n | Number of heat transfer segments |

use_k | = true to use k value for thermal isolation |

Name | Description |
---|---|

heatPorts[n] | Heat port to component boundary |

Internal Interface | |

replaceable package Medium | Medium in the component |

Interface and base class for an ideally mixed fluid volume with the ability to store mass and energy. The following boundary flow and source terms are part of the energy balance and must be specified in an extending class:

, e.g., convective or latent heat flow rate across segment boundary, and**Qb_flow**

, work term, e.g., p*der(fluidVolume) if the volume is not constant.**Wb_flow**

The component volume

is an input that needs to be set in the extending class to complete the model.
**fluidVolume**

Further source terms must be defined by an extending class for fluid flow across the segment boundary:

, enthalpy flow,**Hb_flow**

, mass flow,**mb_flow**

, substance mass flow, and**mbXi_flow**

, trace substance mass flow.**mbC_flow**

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

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 |
---|---|

replaceable package Medium | Medium in the component |

Interface and base class for a momentum balance, defining the mass flow rate

of a given **m_flow**`Medium`

in a flow model.

The following boundary flow and force terms are part of the momentum balance and must be specified in an extending model (to zero if not considered):

, the flow of momentum across model boundaries,**Ib_flow**

, pressure force, and**F_p[m]**

, friction and gravity forces.**F_fg[m]**

The length of the flow path

is an input that needs to be set in an extending class to complete the model.
**pathLength**

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

Assumptions | |

allowFlowReversal | = true to allow flow reversal, false restricts to design direction (m_flow >= 0) |

Dynamics | |

momentumDynamics | Formulation of momentum balance |

Initialization | |

m_flow_start | Start value of mass flow rates [kg/s] |

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

Interface and base class for

ideally mixed fluid volumes with the ability to store mass and energy.
It is intended to model a one-dimensional spatial discretization of fluid flow according to the finite volume method.
The following boundary flow and source terms are part of the energy balance and must be specified in an extending class:
**n**

, heat flow term, e.g., conductive heat flows across segment boundaries, and**Qb_flows[n]**

, work term.**Wb_flows[n]**

The component volumes

are an input that needs to be set in an extending class to complete the model.
**fluidVolumes[n]**

Further source terms must be defined by an extending class for fluid flow across the segment boundary:

, enthalpy flow,**Hb_flows[n]**

, mass flow,**mb_flows[n]**

, substance mass flow, and**mbXi_flows[n]**

, trace substance mass flow.**mbC_flows[n]**

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

n | Number of discrete volumes |

Assumptions | |

Dynamics | |

energyDynamics | Formulation of energy balances |

massDynamics | Formulation of mass balances |

Initialization | |

p_a_start | Start value of pressure at port a [Pa] |

p_b_start | Start value of pressure at port b [Pa] |

use_T_start | Use T_start if true, 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 |
---|---|

replaceable package Medium | Medium in the component |

Interface and base class for

momentum balances, defining the mass flow rates **m**

of a given **m_flows[m]**`Medium`

in

flow segments.
**m**

The following boundary flow and force terms are part of the momentum balances and must be specified in an extending model (to zero if not considered):

, the flows of momentum across segment boundaries,**Ib_flows[m]**

, pressure forces, and**Fs_p[m]**

, friction and gravity forces.**Fs_fg[m]**

The lengths along the flow path

are an input that needs to be set in an extending class to complete the model.
**pathLengths[m]**

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

m | Number of flow segments |

Assumptions | |

allowFlowReversal | = true to allow flow reversal, false restricts to design direction (m_flows >= zeros(m)) |

Dynamics | |

momentumDynamics | Formulation of momentum balance |

Initialization | |

m_flow_start | Start value of mass flow rates [kg/s] |

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

Name | Description |
---|---|

replaceable package Medium | Medium in the component |

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] |

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) |