This component transports fluid between its two ports, without storing mass or energy. It is based on Modelica.Fluid.Interfaces.PartialTwoPortTransport but it does use a different implementation for handling reverse flow because in this component, mass flow rate can be added or removed from the medium.
If dp_nominal > Modelica.Constants.eps, this component computes
pressure drop due to flow friction.
The pressure drop is defined by a quadratic function that goes through
the point (m_flow_nominal, dp_nominal). At |m_flow| < deltaM * m_flow_nominal,
the pressure drop vs. flow relation is linearized.
If the parameter linearizeFlowResistance is set to true,
then the whole pressure drop vs. flow resistance curve is linearized.
Q_flow, which is the sensible and latent heat flow rate added to the medium.
mWat_flow, which is the moisture mass flow rate added to the medium.
Set the constant sensibleOnly=true if the model that extends
or instantiates this model sets mWat_flow = 0.
To increase the numerical robustness of the model, the constant
prescribedHeatFlowRate can be set.
Use the following settings:
prescribedHeatFlowRate=true if the only means of heat transfer
at the heatPort is a prescribed heat flow rate that
is not a function of the temperature difference
between the medium and an ambient temperature. Examples include an ideal electrical heater,
a pump that rejects heat into the fluid stream, or a chiller that removes heat based on a performance curve.
If the heatPort is not connected, then set prescribedHeatFlowRate=true as
in this case, heatPort.Q_flow=0.
prescribedHeatFlowRate=false if there is heat flow at the heatPort
computed as K * (T-heatPort.T), for some temperature T and some conductance K,
which may itself be a function of temperature or mass flow rate.prescribedHeatFlowRate=false.
If prescribedHeatFlow=true, then energy and mass balance
equations are formulated to guard against numerical problems near
zero flow that can occur if Q_flow or m_flow
are the results of an iterative solver.
homotopyInitialization to a constant.Q_flow
includes latent heat flow rate.use_dh is no longer a parameter in the pressure drop model.sensibleOnly in bal1 and bal2
as this constant has been removed in
AixLib.Fluid.Interfaces.StaticTwoPortHeatMassExchanger.
showDesignFlowDirection in extends statement.
This is for
#349.
port_a
if allowFlowReversal=false and
updated documentation.
See
issue 281 for a discussion.
use_safeDivision into
prescribedHeatFlowRate.
See
issue 282 for a discussion.
homotopyInitialization as
it has been removed in the base class.
show_V_flow
to pressure drop calculation, as this model no longer has
that parameter.
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.
COut,
and added min and max attributes for XiOut.
hOut, XiOut and
COut to no longer declare that it is continuous.
The declaration of continuity, i.e, the
smooth(0, if (port_a.m_flow >= 0) then ...) declaration,
was required for Dymola 2012 to simulate, but it is no longer needed
for Dymola 2012 FD01.
hOut, XiOut and
COut to declare that it is not differentiable.
m_flow=0.
homotopy operator.
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.
sensibleOnly to
simplify species balance equation.