modelDiscretizedCounterFlowHEX

Discretized heat exchanger for single- or two-phase working fluids without pressure drop

Extends from Internal.PartialDiscretizedHEX (Base class for discretized heat exchangers).

Information

The counter-flow discretized heat exchanger uses a number of conduction elements (which is set by the parameter nCells) as discrete control volumes to exchange heat between two fluid streams.

For each side the elements are numbered 1 to nCells in the flow direction and the elements' heatports are connected via a thermal conductor that models the wall. The connections are ordered to result in a counter-flow configuration.

The conduction elements are computing a heat transfer coefficient between their heatport and the fluid contained. They are replaceable with a choice between a single-phase and a two-phase version, both can be further parametrized. Although the single-phase version works for two-phase media (not the other way around), using the two-phase one for two-phase media enables to set different heat transfer coefficients depending on the phase (liquid/gaseous/2-phase) state of the medium.

Note that since the model uses conductionElements as discrete control volumes that in turn assume quasi-stationary mass and therefore are part of a fluid stream rather than break it into two (like a full volume would), the same holds for both sides of the heat exchanger; they are part of a fluid stream and don't break it. The quasi-stationary mass assumption also implies that for (fast) changing masses/densities in any of the conduction elements the heat exchanger will (slightly) violate the conservation of energy. Furthermore, the conduction elements change their behavior for reversed mass-flow, therefore this model asserts for negative mass-flow with the level dropOfCommons.assertionLevel, see composition rules for more detail.

The parameters A (heat transferring area), k_wall (heat transfer coefficient of the wall between the streams) and the heat transfer coefficients in the conduction elements scale the transferred heat (the middle only if the wall and the latter only of the heat transfer into a fluid is the choke of the heatflow).

The parameter V determines the amount of fluid in the heat exchanger and therefore the dynamic for non-steady states.

The initialization tab allows for a mass-flow initialization for both paths.

The Advanced tab allows to modify the massflow that triggers the reverse-massflow-assertion and has an option to enforce global conservation of energy. The latter is done by feeding back any energy the conduction elements accumulated over time, basically making it impossible to store energy in their fluid long-term. While this enforces long-term conservation of energy it changes the medium-/short-term dynamics of the system and is therefore disabled by default.

Parameters

TypeNameDefaultDescription
StringinstanceName (from DropOfCommonsPlus)getInstanceName()Instance name
IntegernCells (from PartialDiscretizedHEX)3Number of discretization elements
Booleancalculate_efficiency (from PartialDiscretizedHEX)false= true, if heat exchanger efficiency is calculated
Booleand1A (from PartialDiscretizedHEX)displayParameters and displayAreadisplayArea at position 1
Layout
BooleandisplayInstanceName (from DropOfCommonsPlus)dropOfCommons.displayInstanceNames= true, if instance name is displayed
BooleandisplayParameters (from DropOfCommonsPlus)dropOfCommons.displayParameters= true, if displaying parameters is enabled
Heat transfer parameters
SI.AreaA (from PartialDiscretizedHEX)10Heat transfer area
SI.VolumeV_Hex (from PartialDiscretizedHEX)0.001Volume for heat transfer calculation
SI.CoefficientOfHeatTransferk_wall (from PartialDiscretizedHEX)100Coefficient of heat transfer for pipe wall
Initialization › Mass flow rate
BooleaninitializeMassFlow (from PartialDiscretizedHEX)false= true, if inlet mass flow rates are initialized
SI.MassFlowRatem_flow_0_A (from PartialDiscretizedHEX)0Initial mass flow rate for side A
SI.MassFlowRatem_flow_0_B (from PartialDiscretizedHEX)0Initial mass flow rate for side B
Advanced
SI.MassFlowRatem_flow_assert (from PartialDiscretizedHEX)-dropOfCommons.m_flow_regAssertion threshold for negative mass flow rate
Booleanenforce_global_energy_conservation (from PartialDiscretizedHEX)false= true, if global conservation of energy is enforced
Layout › Display parameters
BooleandisplayArea (from PartialDiscretizedHEX)true= true, if heat transfer area A is displayed

Connectors

TypeNameDefaultDescription
Interfaces.InletinletB
Interfaces.OutletoutletB
Interfaces.InletinletA
Interfaces.OutletoutletA

Components

TypeNameDefaultDescription
SI.HeatFlowRateQ_flow_A (from PartialDiscretizedHEX)sum(thermalElementA.heatPort.Q_flow)Heat flow rate into medium A
SI.HeatFlowRateQ_flow_B (from PartialDiscretizedHEX)sum(thermalElementB.heatPort.Q_flow)Heat flow rate into medium B
SI.MassM_A (from PartialDiscretizedHEX)sum(thermalElementA.M)Mass of medium A
SI.MassM_B (from PartialDiscretizedHEX)sum(thermalElementB.M)Mass of medium B
SI.EnergydeltaE_system (from PartialDiscretizedHEX)sum(thermalElementA.deltaE_system) + sum(thermalElementB.deltaE_system)Error in global conservation of energy
ThermofluidStream.HeatExchangers.Internal.DiscretizedHEXSummarysummary (from PartialDiscretizedHEX)Summary record of Quantities
Modelica.Thermal.HeatTransfer.Components.ThermalConductor[nCells]thermalConductor (from PartialDiscretizedHEX)
ConductionElementB[nCells]thermalElementB (from PartialDiscretizedHEX)
ConductionElementA[nCells]thermalElementA (from PartialDiscretizedHEX)