modelPartialThreeWayResistance

Flow splitter with partial resistance model at each port

Extends from BuildingSystems.Fluid.Interfaces.LumpedVolumeDeclarations.

Information

Partial model for flow resistances with three ports such as a flow mixer/splitter or a three way valve.

If energyDynamics ≠ Modelica.Fluid.Types.Dynamics.SteadyState, then at the junction of the three flows, a mixing volume will be present. This will introduce a dynamic energy and momentum balance, which often breaks algebraic loops. The time constant of the mixing volume is determined by the parameter tau.

Parameters

TypeNameDefaultDescription
Dynamics › Nominal condition
Modelica.Units.SI.Timetau10Time constant at nominal flow for dynamic energy and momentum balance
Dynamics › Conservation equations
Modelica.Units.SI.MassFlowRatemDyn_flow_nominalNominal mass flow rate for dynamic momentum and energy balance
Advanced
Booleanfrom_dptrue= true, use m_flow = f(dp) else dp = f(m_flow)
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_1Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_1
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_2Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_2
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_3Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_3
BooleanverifyFlowReversalfalse=true, to assert that the flow does not reverse when portFlowDirection_* does not equal Bidirectional
Modelica.Units.SI.MassFlowRatem_flow_smallSmall mass flow rate for checking flow reversal

Components

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_1First port, typically inlet
Modelica.Fluid.Interfaces.FluidPort_bport_2Second port, typically outlet
Modelica.Fluid.Interfaces.FluidPort_aport_3Third port, can be either inlet or outlet
BuildingSystems.Fluid.Interfaces.PartialTwoPortInterfaceres1
BuildingSystems.Fluid.Interfaces.PartialTwoPortInterfaceres2
BuildingSystems.Fluid.Interfaces.PartialTwoPortInterfaceres3
BuildingSystems.Fluid.Delays.DelayFirstOrdervolFluid volume to break algebraic loop

Revisions

  • March 7, 2022, by Michael Wetter:
    Set final massDynamics=energyDynamics.
    This is for #1542.
  • March 22, 2020, by Filip Jorissen:
    Corrected error message of asserts that verify whether flow reversal occurs when verifyFlowReversal=true and portFlowDirection<>Bidirectional. See #1327.
  • July 7, 2018, by Filip Jorissen:
    Added asserts that verify whether flow reversal occurs when verifyFlowReversal=true and portFlowDirection<>Bidirectional. See #963.
  • July 8, 2018, by Filip Jorissen:
    Added nominal value of h_outflow in FluidPorts. See #977.
  • March 30, 2018, by Filip Jorissen:
    Added graphical illustrations for the values of portFlowDirection. Added asserts that verify the consistency of the values of portFlowDirection. See #902.
  • February 22, 2016, by Michael Wetter:
    Conditionally removed control volume vol, and added the conditional connnector port_internal. This was already done when the parameter dynamicBalance was present, but was updated wrong when this parameter was removed. Without these conditional components, the regression test for BuildingSystems.Fluid.Examples.ResistanceVolumeFlowReversal fails to simulate.
  • December 17, 2015, by Michael Wetter:
    Added assignment redeclare final package Medium=Medium as this is required for OpenModelica. This is for https://github.com/lbl-srg/modelica-buildings/issues/475.
  • February 20, 2016, by Ruben Baetens:
    Removal of dynamicBalance as parameter for massDynamics and energyDynamics.
  • April 13 2015, by Filip Jorissen:
    Exposed options for flow reversal to users and added corresponding implementation.
  • March 23 2010, by Michael Wetter:
    Changed start values from system.p_start or (code T_start) to Medium.p_default.
  • September 18, 2008 by Michael Wetter:
    Replaced splitter model with a fluid port since the splitter model in Modelica.Fluid 1.0 beta does not transport mC_flow.
  • June 11, 2008 by Michael Wetter:
    First implementation.