This is a model of a heat conductor with multiple material layers and energy storage. The construction has at least one material layer, and each layer has at least one temperature node. The layers are modeled using an instance of Buildings.HeatTransfer.Conduction.SingleLayer. See this model for an explanation of the equations that are applied to each material layer.
The construction material is defined by a record of the package Buildings.HeatTransfer.Data.OpaqueConstructions. This record allows specifying materials that store energy, and material that are a thermal conductor only with no heat storage. To assign the material properties to this model, do the following:
parameter
, which may not be
assigned automatically when you drop the model in a graphical editor. For
example, an instanciation may look like
parameter Data.OpaqueConstructions.Insulation100Concrete200 layers "Material layers of construction" annotation (Placement(transformation(extent={{-80,60},{-60,80}})));
The parameters stateAtSurface_a
and
stateAtSurface_b
determine whether there is a state variable at these surfaces,
as described above.
Note that if stateAtSurface_a = true
,
then there is temperature state on the surface a with prescribed
value, as determined by the differential equation of the heat conduction.
Hence, in this situation, it is not possible to
connect a temperature boundary condition such as
Buildings.HeatTransfer.Sources.FixedTemperature as this would
yield to specifying the same temperature twice.
To avoid this, either set stateAtSurface_a = false
,
or place a thermal resistance
between the boundary condition and the surface of this model.
The same applies for surface b.
See the examples in
Buildings.HeatTransfer.Examples.
R
and UA
.
These variables are only used for reporting.
All other calculations were not affected by this error.
nSta2
.
nSta2
to avoid translation error
in Dymola 2107. This is a work-around for a bug in Dymola
which will be addressed in future releases.
T
.
This is for
issue 426.
nLay
in the sum()
of the parameter assignment
with size(layers.material, 1)
to avoid incorrect results in OpenModelica.
See github note.
nLay
to avoid a translation error
in OpenModelica.
R
to be in the extends
statement
to avoid a division by zero in OpenModelica.
initial equation
section and assigned the protected parameters
_T_a_start
and _T_b_start
directly to avoid a warning during
translation.