modelHexElementLatent

Element of a heat exchanger with humidity condensation of fluid 2

Extends from Buildings.Fluid.HeatExchangers.BaseClasses.PartialHexElement (Element of a heat exchanger 2).

Information

Element of a heat exchanger with humidity condensation of fluid 2 and with dynamics of the fluids and the solid.

See Buildings.Fluid.HeatExchangers.BaseClasses.PartialHexElement for a description of the physics of the sensible heat exchange. For the latent heat exchange, this model removes water vapor from the air stream, as computed by the instance masExc, and deposits it on the coil. Hence, the latent heat is treated such that it transfers to the coil surface. The latent heat is removed from the air stream using heat flow source heaConVapAir and deposited on the coil surface using heat flow source heaConVapCoi.

Note that the driving potential for latent heat transfer is the temperature of the instance mas. This is an approximation as it neglects the thermal resistance of the water film that builds up on the coil.

Parameters

TypeNameDefaultDescription
BooleanhomotopyInitialization (from FourPortHeatMassExchanger)true= true, use homotopy method
Modelica.Units.SI.HeatCapacityC (from PartialHexElement)2*UA_nominal*tau_mHeat capacity of metal (= cp*m)
Booleansimplify_mWat_flowtrueSet to true to cause port_a.m_flow + port_b.m_flow = 0 even if mWat_flow is non-zero. Used only if Medium.nX > 1
Assumptions
BooleanallowFlowReversal1 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1
BooleanallowFlowReversal2 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2
Nominal condition
Modelica.Units.SI.MassFlowRatem1_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.MassFlowRatem2_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.PressureDifferencedp1_nominal (from FourPortFlowResistanceParameters)Pressure difference
Modelica.Units.SI.PressureDifferencedp2_nominal (from FourPortFlowResistanceParameters)Pressure difference
Modelica.Units.SI.ThermalConductanceUA_nominal (from PartialHexElement)Thermal conductance at nominal flow, used to compute time constant
Advanced
Medium1.MassFlowRatem1_flow_small (from PartialFourPortInterface)1E-4*abs(m1_flow_nominal)Small mass flow rate for regularization of zero flow
Medium2.MassFlowRatem2_flow_small (from PartialFourPortInterface)1E-4*abs(m2_flow_nominal)Small mass flow rate for regularization of zero flow
Booleaninitialize_p1 (from PartialHexElement)not Medium1.singleStateSet to true to initialize the pressure of volume 1
Booleaninitialize_p2 (from PartialHexElement)not Medium2.singleStateSet to true to initialize the pressure of volume 2
Advanced › Diagnostics
Booleanshow_T (from PartialFourPortInterface)false= true, if actual temperature at port is computed
Flow resistance › Medium 1
BooleancomputeFlowResistance1 (from FourPortFlowResistanceParameters)true=true, compute flow resistance. Set to false to assume no friction
Booleanfrom_dp1 (from FourPortFlowResistanceParameters)false= true, use m_flow = f(dp) else dp = f(m_flow)
Realn1 (from FourPortFlowResistanceParameters)2Flow exponent for side 1, n=1 for laminar, n=2 for turbulent
BooleanlinearizeFlowResistance1 (from FourPortFlowResistanceParameters)false= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM1 (from FourPortFlowResistanceParameters)0.1Fraction of nominal flow rate where flow transitions to laminar
Flow resistance › Medium 2
BooleancomputeFlowResistance2 (from FourPortFlowResistanceParameters)true=true, compute flow resistance. Set to false to assume no friction
Booleanfrom_dp2 (from FourPortFlowResistanceParameters)false= true, use m_flow = f(dp) else dp = f(m_flow)
Realn2 (from FourPortFlowResistanceParameters)2Flow exponent for side 2, n=1 for laminar, n=2 for turbulent
BooleanlinearizeFlowResistance2 (from FourPortFlowResistanceParameters)false= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM2 (from FourPortFlowResistanceParameters)0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics › Nominal condition
Modelica.Units.SI.Timetau1 (from FourPortHeatMassExchanger)30Time constant at nominal flow
Modelica.Units.SI.Timetau2 (from FourPortHeatMassExchanger)30Time constant at nominal flow
Dynamics › Conservation equations
Modelica.Fluid.Types.DynamicsenergyDynamics (from FourPortHeatMassExchanger)Modelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state
Initialization › Medium 1
Medium1.AbsolutePressurep1_start (from FourPortHeatMassExchanger)Medium1.p_defaultStart value of pressure
Medium1.TemperatureT1_start (from FourPortHeatMassExchanger)Medium1.T_defaultStart value of temperature
Medium1.MassFraction[Medium1.nX]X1_start (from FourPortHeatMassExchanger)Medium1.X_defaultStart value of mass fractions m_i/m
Medium1.ExtraProperty[Medium1.nC]C1_start (from FourPortHeatMassExchanger)fill(0, Medium1.nC)Start value of trace substances
Medium1.ExtraProperty[Medium1.nC]C1_nominal (from FourPortHeatMassExchanger)fill(1E-2, Medium1.nC)Nominal value of trace substances. (Set to typical order of magnitude.)
Initialization › Medium 2
Medium2.AbsolutePressurep2_start (from FourPortHeatMassExchanger)Medium2.p_defaultStart value of pressure
Medium2.TemperatureT2_start (from FourPortHeatMassExchanger)Medium2.T_defaultStart value of temperature
Medium2.MassFraction[Medium2.nX]X2_start (from FourPortHeatMassExchanger)Medium2.X_defaultStart value of mass fractions m_i/m
Medium2.ExtraProperty[Medium2.nC]C2_start (from FourPortHeatMassExchanger)fill(0, Medium2.nC)Start value of trace substances
Medium2.ExtraProperty[Medium2.nC]C2_nominal (from FourPortHeatMassExchanger)fill(1E-2, Medium2.nC)Nominal value of trace substances. (Set to typical order of magnitude.)
General › Nominal condition
Modelica.Units.SI.Timetau_m (from PartialHexElement)60Time constant of metal at nominal UA value

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a1 (from PartialFourPort)Fluid connector a1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_bport_b1 (from PartialFourPort)Fluid connector b1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_aport_a2 (from PartialFourPort)Fluid connector a2 (positive design flow direction is from port_a2 to port_b2)
Modelica.Fluid.Interfaces.FluidPort_bport_b2 (from PartialFourPort)Fluid connector b2 (positive design flow direction is from port_a2 to port_b2)
Modelica.Blocks.Interfaces.RealInputGc_1 (from PartialHexElement)Signal representing the convective thermal conductance medium 1 in [W/K]
Modelica.Blocks.Interfaces.RealInputGc_2 (from PartialHexElement)Signal representing the convective thermal conductance medium 2 in [W/K]
Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_aheaPor1 (from PartialHexElement)Heat port for heat exchange with the control volume 1
Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_aheaPor2 (from PartialHexElement)Heat port for heat exchange with the control volume 2

Components

TypeNameDefaultDescription
Medium1.MassFlowRatem1_flow (from PartialFourPortInterface)port_a1.m_flowMass flow rate from port_a1 to port_b1 (m1_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp1 (from PartialFourPortInterface)port_a1.p - port_b1.pPressure difference between port_a1 and port_b1
Medium2.MassFlowRatem2_flow (from PartialFourPortInterface)port_a2.m_flowMass flow rate from port_a2 to port_b2 (m2_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp2 (from PartialFourPortInterface)port_a2.p - port_b2.pPressure difference between port_a2 and port_b2
Medium1.ThermodynamicStatesta_a1 (from PartialFourPortInterface)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.ThermodynamicStatesta_b1 (from PartialFourPortInterface)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.ThermodynamicStatesta_a2 (from PartialFourPortInterface)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.ThermodynamicStatesta_b2 (from PartialFourPortInterface)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
Modelica.Units.SI.HeatFlowRateQ1_flow (from FourPortHeatMassExchanger)vol1.heatPort.Q_flowHeat flow rate into medium 1
Modelica.Units.SI.HeatFlowRateQ2_flow (from FourPortHeatMassExchanger)vol2.heatPort.Q_flowHeat flow rate into medium 2
Buildings.Fluid.MixingVolumes.BaseClasses.MixingVolumeHeatPortvol1 (from FourPortHeatMassExchanger)
Buildings.Fluid.MixingVolumes.MixingVolumevol2 (from FourPortHeatMassExchanger)
Buildings.Fluid.FixedResistances.PressureDroppreDro1 (from FourPortHeatMassExchanger)Flow resistance of fluid 1
Buildings.Fluid.FixedResistances.PressureDroppreDro2 (from FourPortHeatMassExchanger)Flow resistance of fluid 2
Modelica.Thermal.HeatTransfer.Components.HeatCapacitormas (from PartialHexElement)Mass of metal
Modelica.Thermal.HeatTransfer.Components.Convectioncon1 (from PartialHexElement)Convection (and conduction) on fluid side 1
Modelica.Thermal.HeatTransfer.Components.Convectioncon2 (from PartialHexElement)Convection (and conduction) on fluid side 2
MassExchangemasExcModel for mass exchange
Modelica.Blocks.Math.GaingainChange sign

Revisions

  • July 5, 2022, by Antoine Gautier:
    Restored the addition of heat to mas.T.
    This is for #3065.
  • May 26, 2022, by Michael Wetter:
    Removed addition of heat to mas.T.
    This is for #3027.
  • March 11, 2021, by Michael Wetter:
    Changed constant simplify_mWat_flow from protected to public because it is assigned by Buildings.Fluid.HeatExchangers.WetCoilCounterFlow.
    This is for #2387.
  • May 1, 2020, by Michael Wetter:
    Added constant simplify_mWat_flow.
    This is for #1920.
  • April 14, 2017, by David Blum:
    Added heat of condensation to coil surface heat balance and removed it from the air stream.
    This is for issue Buildings #711.
  • April 12, 2017, by Michael Wetter:
    Removed temperature that is no longer needed.
    This is for issue Buildings #704.
  • June 18, 2014, by Michael Wetter:
    Added initialization for mas to avoid a warning during translation.
  • September 11, 2013, by Michael Latentter:
    First implementation.