modelStaticFourPortHeatMassExchanger

Partial model transporting two fluid streams between four ports without storing mass or energy

Extends from Buildings.Fluid.Interfaces.PartialFourPortInterface, Buildings.Fluid.Interfaces.FourPortFlowResistanceParameters.

Information

This component transports two fluid streams between four ports, without storing mass or energy. It is similar to Buildings.Fluid.Interfaces.StaticTwoPortHeatMassExchanger, but it has four ports instead of two.

If dpN_nominal > Modelica.Constants.eps, where N denotes the fluid 1 or 2, then the model computes pressure drop due to flow friction in the respective fluid stream. The pressure drop is defined by a quadratic function that goes through the point (mN_flow_nominal, dpN_nominal). At |mN_flow| < deltaMN * mN_flow_nominal, the pressure drop vs. flow relation is linearized. If the parameter linearizeFlowResistanceN is set to true, then the whole pressure drop vs. flow resistance curve is linearized.

Implementation

This model uses inputs and constants that need to be set by models that extend or instantiate this model. The following inputs need to be assigned, where N denotes 1 or 2:

  • QN_flow, which is the sensible and latent heat flow rate added to the medium N.
  • mWatN_flow, which is the moisture mass flow rate added to the medium N.

Set the constant sensibleOnlyN=true if the model that extends or instantiates this model sets mWatN_flow = 0.

Note that the model does not implement 0 = Q1_flow + Q2_flow or 0 = mXi1_flow + mXi2_flow. If there is no heat or mass transfer with the environment, then a model that extends this model needs to provide these equations.

Parameters

TypeNameDefaultDescription
BooleanprescribedHeatFlowRate1falseSet to true if the heat flow rate into fluid 1 is not a function of the component temperature
BooleanprescribedHeatFlowRate2falseSet to true if the heat flow rate into fluid 2 is not a function of the component temperature
BooleanhomotopyInitializationtrue= true, use homotopy method
BooleansensibleOnly1Set to true if sensible exchange only for medium 1
BooleansensibleOnly2Set to true if sensible exchange only for medium 2

Components

TypeNameDefaultDescription
Modelica.Units.SI.HeatFlowRateQ1_flowHeat transferred into the medium 1
Medium1.MassFlowRatemWat1_flowMoisture mass flow rate added to the medium 1
Modelica.Units.SI.HeatFlowRateQ2_flowHeat transferred into the medium 2
Medium2.MassFlowRatemWat2_flowMoisture mass flow rate added to the medium 2

Revisions

  • April 14, 2020, by Michael Wetter:
    Changed homotopyInitialization to a constant.
    This is for IBPSA, #1341.
  • April 11, 2017, by Michael Wetter:
    Updated documentation to make clear that Q1_flow and Q2_flow include latent heat flow rate.
    This is for issue Buildings #704.
  • January 22, 2016 by Michael Wetter:
    Removed assignment of sensibleOnly in bal1 and bal2 as this constant has been removed in Buildings.Fluid.Interfaces.StaticTwoPortHeatMassExchanger.
  • November 13, 2013 by Michael Wetter:
    Added parameter homotopyInitialization as it has been removed in the base class.
  • November 13, 2013, by Michael Wetter:
    Removed import Modelica.Constants; statement.
  • October 8, 2013, by Michael Wetter:
    Removed parameter show_V_flow.
  • July 30, 2013 by Michael Wetter:
    Changed connector mXi_flow[Medium.nXi] to a scalar input connector mWat_flow. The reason is that mXi_flow does not allow to compute the other components in mX_flow and therefore leads to an ambiguous use of the model. By only requesting mWat_flow, the mass balance and species balance can be implemented correctly.
  • March 29, 2011, by Michael Wetter:
    Changed energy and mass balance to avoid a division by zero if m_flow=0.
  • March 27, 2011, by Michael Wetter:
    Added homotopy operator.
  • August 19, 2010, by Michael Wetter:
    Fixed bug in energy and moisture balance that affected results if a component adds or removes moisture to the air stream. In the old implementation, the enthalpy and species outflow at port_b was multiplied with the mass flow rate at port_a. The old implementation led to small errors that were proportional to the amount of moisture change. For example, if the moisture added by the component was 0.005 kg/kg, then the error was 0.5%. Also, the results for forward flow and reverse flow differed by this amount. With the new implementation, the energy and moisture balance is exact.
  • March 22, 2010, by Michael Wetter:
    Added constants sensibleOnly1 and sensibleOnly2 to simplify species balance equations.
  • April 13, 2009, by Michael Wetter:
    Added model to compute flow friction.
  • March 25, 2008, by Michael Wetter:
    First implementation.