Interfaces for steady state and unsteady, mixed-phase, multi-substance, incompressible and compressible flow

Extends from `Modelica.Icons.InterfacesPackage`

(Icon for packages containing interfaces).

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

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

`PartialDistributedFlow` | Base class for a distributed momentum balance |

`PartialDistributedVolume` | Base class for distributed volume models |

`PartialHeatTransfer` | Common interface for heat transfer models |

`PartialLumpedFlow` | Base class for a lumped momentum balance |

`PartialLumpedVolume` | Lumped volume with mass and energy balance |

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

`PartialTwoPort` | Partial component with two ports |

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

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

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

`MassFlowRate` | `m_flow` | Mass flow rate from the connection point into the component |

`AbsolutePressure` | `p` | Thermodynamic pressure in the connection point |

`SpecificEnthalpy` | `h_outflow` | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 |

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

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

Generic fluid connector at design inlet

Extends from `Modelica.Fluid.Interfaces.FluidPort`

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

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

`MassFlowRate` | `m_flow` | Mass flow rate from the connection point into the component |

`AbsolutePressure` | `p` | Thermodynamic pressure in the connection point |

`SpecificEnthalpy` | `h_outflow` | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 |

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

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

Generic fluid connector at design outlet

Extends from `Modelica.Fluid.Interfaces.FluidPort`

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

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

`MassFlowRate` | `m_flow` | Mass flow rate from the connection point into the component |

`AbsolutePressure` | `p` | Thermodynamic pressure in the connection point |

`SpecificEnthalpy` | `h_outflow` | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 |

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

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

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

Extends from `Modelica.Fluid.Interfaces.FluidPort`

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

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

`MassFlowRate` | `m_flow` | Mass flow rate from the connection point into the component |

`AbsolutePressure` | `p` | Thermodynamic pressure in the connection point |

`SpecificEnthalpy` | `h_outflow` | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 |

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

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

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

`Modelica.Fluid.Interfaces.FluidPort`

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

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

`MassFlowRate` | `m_flow` | Mass flow rate from the connection point into the component |

`AbsolutePressure` | `p` | Thermodynamic pressure in the connection point |

`SpecificEnthalpy` | `h_outflow` | Specific thermodynamic enthalpy close to the connection point if m_flow < 0 |

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

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

Partial component with two ports

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

Type | Name | Default | Description |
---|---|---|---|

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

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

`FluidPort_a` | `port_a` | Fluid connector a (positive design flow direction is from port_a to port_b) |

`FluidPort_b` | `port_b` | Fluid connector b (positive design flow direction is from port_a to port_b) |

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

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.

Extends from `Modelica.Fluid.Interfaces.PartialTwoPort`

(Partial component with two ports).

Type | Name | Default | Description |
---|---|---|---|

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

`AbsolutePressure` | `dp_start` | `0.01 * system.p_start` | Guess value of dp = port_a.p - port_b.p |

`MassFlowRate` | `m_flow_start` | `system.m_flow_start` | Guess value of m_flow = port_a.m_flow |

`MassFlowRate` | `m_flow_small` | `if system.use_eps_Re then system.eps_m_flow * system.m_flow_nominal else system.m_flow_small` | Small mass flow rate for regularization of zero flow |

`Boolean` | `show_T` | `true` | = true, if temperatures at port_a and port_b are computed |

`Boolean` | `show_V_flow` | `true` | = true, if volume flow rate at inflowing port is computed |

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

`FluidPort_a` | `port_a` | Fluid connector a (positive design flow direction is from port_a to port_b) |

`FluidPort_b` | `port_b` | Fluid connector b (positive design flow direction is from port_a to port_b) |

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

Extends from `Modelica.Thermal.HeatTransfer.Interfaces.HeatPort`

(Thermal port for 1-dim. heat transfer).

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

`Temperature` | `T` | Port temperature |

`HeatFlowRate` | `Q_flow` | Heat flow rate (positive if flowing from outside into the component) |

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

Extends from `Modelica.Thermal.HeatTransfer.Interfaces.HeatPort`

(Thermal port for 1-dim. heat transfer).

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

`Temperature` | `T` | Port temperature |

`HeatFlowRate` | `Q_flow` | Heat flow rate (positive if flowing from outside into the component) |

Common interface for heat transfer models

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

.

Type | Name | Default | Description |
---|---|---|---|

`Integer` | `n` | `1` | Number of heat transfer segments |

`Boolean` | `use_k` | `false` | = true to use k value for thermal isolation |

`CoefficientOfHeatTransfer` | `k` | `0` | Heat transfer coefficient to ambient |

`Temperature` | `T_ambient` | `system.T_ambient` | Ambient temperature |

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

`HeatPorts_a` | `heatPorts[n]` | Heat port to component boundary |

Lumped volume with mass and energy balance

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

Type | Name | Default | Description |
---|---|---|---|

`Dynamics` | `energyDynamics` | `system.energyDynamics` | Formulation of energy balance |

`Dynamics` | `massDynamics` | `system.massDynamics` | Formulation of mass balance |

`Dynamics` | `substanceDynamics` | `massDynamics` | Formulation of substance balance |

`Dynamics` | `traceDynamics` | `massDynamics` | Formulation of trace substance balance |

`AbsolutePressure` | `p_start` | `system.p_start` | Start value of pressure |

`Boolean` | `use_T_start` | `true` | = true, use T_start, otherwise h_start |

`Temperature` | `T_start` | `if use_T_start then system.T_start else Medium.temperature_phX(p_start, h_start, X_start)` | Start value of temperature |

`SpecificEnthalpy` | `h_start` | `if use_T_start then Medium.specificEnthalpy_pTX(p_start, T_start, X_start) else Medium.h_default` | Start value of specific enthalpy |

`MassFraction` | `X_start[Medium.nX]` | `Medium.X_default` | Start value of mass fractions m_i/m |

`ExtraProperty` | `C_start[Medium.nC]` | `Medium.C_default` | Start value of trace substances |

Base class for a lumped momentum balance

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

Type | Name | Default | Description |
---|---|---|---|

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

`Dynamics` | `momentumDynamics` | `system.momentumDynamics` | Formulation of momentum balance |

`MassFlowRate` | `m_flow_start` | `system.m_flow_start` | Start value of mass flow rates |

Base class for distributed volume models

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

Type | Name | Default | Description |
---|---|---|---|

`Integer` | `n` | `2` | Number of discrete volumes |

`Dynamics` | `energyDynamics` | `system.energyDynamics` | Formulation of energy balances |

`Dynamics` | `massDynamics` | `system.massDynamics` | Formulation of mass balances |

`Dynamics` | `substanceDynamics` | `massDynamics` | Formulation of substance balances |

`Dynamics` | `traceDynamics` | `massDynamics` | Formulation of trace substance balances |

`AbsolutePressure` | `p_a_start` | `system.p_start` | Start value of pressure at port a |

`AbsolutePressure` | `p_b_start` | `p_a_start` | Start value of pressure at port b |

`AbsolutePressure` | `ps_start[n]` | `if 1 < n then linspace(p_a_start, p_b_start, n) else {0.5 * (p_a_start + p_b_start)}` | Start value of pressure |

`Boolean` | `use_T_start` | `true` | Use T_start if true, otherwise h_start |

`Temperature` | `T_start` | `if use_T_start then system.T_start else Medium.temperature_phX(0.5 * (p_a_start + p_b_start), h_start, X_start)` | Start value of temperature |

`SpecificEnthalpy` | `h_start` | `if use_T_start then Medium.specificEnthalpy_pTX(0.5 * (p_a_start + p_b_start), T_start, X_start) else Medium.h_default` | Start value of specific enthalpy |

`MassFraction` | `X_start[Medium.nX]` | `Medium.X_default` | Start value of mass fractions m_i/m |

`ExtraProperty` | `C_start[Medium.nC]` | `Medium.C_default` | Start value of trace substances |

Base class for a distributed momentum balance

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

Type | Name | Default | Description |
---|---|---|---|

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

`Integer` | `m` | `1` | Number of flow segments |

`Dynamics` | `momentumDynamics` | `system.momentumDynamics` | Formulation of momentum balance |

`MassFlowRate` | `m_flow_start` | `system.m_flow_start` | Start value of mass flow rates |

Base flow model for pressure loss functions with the same area at port_a and at 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.

Extends from `Modelica.Fluid.Interfaces.PartialTwoPortTransport`

(Partial element transporting fluid between two ports without storage of mass or energy).

Type | Name | Default | Description |
---|---|---|---|

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

`AbsolutePressure` | `dp_start` | `0.01 * system.p_start` | Guess value of dp = port_a.p - port_b.p |

`MassFlowRate` | `m_flow_start` | `system.m_flow_start` | Guess value of m_flow = port_a.m_flow |

`MassFlowRate` | `m_flow_small` | `if system.use_eps_Re then system.eps_m_flow * system.m_flow_nominal else system.m_flow_small` | Small mass flow rate for regularization of zero flow |

`Boolean` | `show_T` | `true` | = true, if temperatures at port_a and port_b are computed |

`Boolean` | `show_V_flow` | `true` | = true, if volume flow rate at inflowing port is computed |

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

`FluidPort_a` | `port_a` | Fluid connector a (positive design flow direction is from port_a to port_b) |

`FluidPort_b` | `port_b` | Fluid connector b (positive design flow direction is from port_a to port_b) |

Generated 2018-12-12 12:13:29 EST by *MapleSim*.