Model of a discretized coil with no water vapor condensation.
The coil consists of nReg
registers
that are perpendicular to the air flow path. Each register consists of nPipPar
parallel pipes, and each pipe can be divided into nPipSeg
pipe segments along
the pipe length. Thus, the smallest element of the coil consists of a pipe
segment. Each pipe segment is modeled by an instance of
Buildings.Fluid.HeatExchangers.BaseClasses.HexElementSensible.
Each element has a state variable for the metal.
If the parameter energyDynamics
is different from
Modelica.Fluid.Types.Dynamics.SteadyState
, then
a mixing volume of length dl
is added to the duct connection. This can
help reducing the dimension of the nonlinear system of equations.
The convective heat transfer coefficients can, for each fluid individually, be computed as a function of the flow rate and/or the temperature, or assigned to a constant. This computation is done using an instance of Buildings.Fluid.HeatExchangers.BaseClasses.HADryCoil.
In this model, the water (or liquid) flow path
needs to be connected to port_a1
and port_b1
, and
the air flow path need to be connected to the other two ports.
To model humidity condensation, use the model Buildings.Fluid.HeatExchangers.WetCoilDiscretized instead of this model, as this model computes only sensible heat transfer.
At very small flow rates, which may be caused when the fan is off but there is wind pressure
on the building that entrains outside air through the HVAC system, large temperature differences
could occur if diffusion were neglected.
This model therefore approximates a small diffusion between the elements to have more uniform
medium temperatures if the flow is near zero.
The approximation is done using the heat conductors heaCon1
and heaCon2
.
As this is a rough approximation, neighboring elements are connected through these heat conduction
elements, ignoring the actual geometrical configuration.
Also, radiation between the coil surfaces on the air side is not modelled explicitly, but
rather may be considered as approximated by these heat conductors.
hexReg[nReg].m2_flow_nominal
.constant
to a parameter
.initalize_p
from a parameter
to a
constant
. This is only required in finite volume models
of heat exchangers (to avoid consistent but redundant initial conditions)
and hence it should be set as a constant
.
m1_flow_nominal
, as this parameter is already
declared in its base class
Buildings.Fluid.Interfaces.PartialFourPortInterface.
This change avoids an error in OpenModelica as the two declarations
had a different value for the min
attribute, which is not valid
in Modelica.initialize_p1
and initialize_p2
.
This is required to enable the coil models to initialize the pressure in the
first volume, but not in the downstream volumes. Otherwise,
the initial equations will be overdetermined, but consistent.
This change was done to avoid a long information message that appears
when translating models.
dl
which is no longer needed.
energyDynamics1
,
energyDynamics2
and ductConnectionDynamics
,
and used instead of these parameters the new parameter
energyDynamics
.
This was done as this complexity is not required.
connect(hexReg[nReg].port_b1, pipMan_b.port_b)
to
connect(hexReg[nReg].port_a1, pipMan_b.port_b)
.
This closes issue
https://github.com/lbl-srg/modelica-buildings/issues/194,
which caused the last register to have no liquid flow.
show_T=false
to avoid state events near zero flow.
nReg/2
by div(nReg,2)
when instantiating an array of models as the former leads to a syntax error
in Dymola 7.4 FD01.