Radiant heating modelling

TODO

Model a smaller room - say 4x5x2.4m, with 280W/m² heating.

Structure of model

The model contains a collection of nodes, each of which has an associated temperature and thermal mass (possibly zero). The nodes are joined by conductors, each of which has an associated conductance and power. I.e. it is a lumped element model, although the thermal model described in Wikipedia differs in that temperatures are discontinous across surface boundaries.

Nodes are used to represent walls, ceilings, floors, spaces in rooms and surfaces.

The model also contains power sources, which inject power into nodes. A power source may have an associated controller, which attempts to maintain the temperature of a node.

The model structure is analogous to an electrical circuit, with the correspondence:

Thermal Electrical
Temperature Voltage
Thermal mass Capacitance
Conductance Conductance
Power Current
Heat energy Charge

Simulation

Simulation is performed by repeating the steps:

  1. Output the current state, if required.
  2. Compute a new temperature for each node.
  3. Perform controller actions.
  4. Increment the model time.

The model time increment is configurable, but ideally should be small enough that temperature increments on each simulation cycle should be relatively small.

Computing the new node temperature

The net power flow into a node with temperature T, connected through conductances Gi to nodes Ni, and with heaters with power Hi is:

P = Σ (Ti - T) . Gi + Σ Hi = ΣTi.Gi + T. ΣGi + Σ Hi

If the node has thermal mass M, the change in temperature after a time increment δt is:

δT = P.δt / M

and the new temperature is:

Tnewi = T + δT = T + P.δt / M

If M is zero (or very small) this method of computing the new temperature isn't sensible. In this case, the new temperature can be computed by requiring that the net power flow into the node should be zero:

Σ (Ti - Tnewz) . Gi + Σ Hi = 0
Σ Ti.Gi - Tnewz. Σ Gi + Σ Hi = 0
Tnewz =  (Σ Ti.Gi + Σ Hi) / Σ Gi

We can test whether M is too small to use the increment method by testing whether Tnewi lies between T and Tnewz. If it doesn't, we use Tnewz as the new temperature instead of Tnewi.

Rooms

A room has walls, floor, ceiling and the space within it.

The space within a room is represented by 2 nodes: one for the air in the room and one for the radiation in the room.

The air and radiation nodes each have 6 conductors going to the surface nodes of the walls, floor and ceiling.

Walls, floors and ceilings

When modelling a slab, such as a wall, the internal temperature gradient would ideally be represented. However, I'm hoping it will be adequate to model just 3 temperatures: the 2 surface temperatures and one internal temperature. The heat stored in the slab will be proportional to the internal temperature. The heat flow through each surface will be proportional to the difference between the internal temperature and the surface temperature, and also proportional to double the thermal conductance of the slab. This corresponds to the electrical analog:

If necessary, this could be expanded into a ladder network:

The more elements are used in the ladder, the better the simulation would be.

Heaters

A convection heater is represented by a power source injecting into the air node of a room. A radiant heater is represented by a power source injecting into a surface node (e.g. the ceiling surface).

A heater has a controller, which is used to attempt to keep a specified node temperature at a specified setpoint.

A simple program is used for each heater, consisting of a sequence of steps. Each step specifies a time period and a setpoint.

Ventilation

According to CIBSE Guide B Section 1.3.3.5 Ventilation heat loss a reasonable approximation for the heat loss due to ventilation is given by equation 1.9:

φv = 1.2 qv (tai – tao)

where φv is the heat loss due to ventilation (W), qv is the volume flow rate of air (litre·s –1 ), tai is the inside air temperature (°C), tao the outside air temperature (°C)

Outside

The outside of the building is represented by two nodes: one for the air, and one for the ground. Both these nodes have effectively infinite thermal mass - i.e. their temperature is unaffected by heat leaving or entering the building.

Convection

No attempt is made to model convection currents. However, I do need to model the transfer of heat from a surface to the air in a room. In this case, the factor involved is called the " heat transfer coefficient" and it is measured in W/m².K. The units are the same as for U-value and the model handles it in exactly the same way.

DesignBuilder gives a convective transfer coefficient of 3.076 for a vertical surface and 0.948 for a horizontal surface.

CIBSE Guide C Section 3.3.2.1 provides the following equations for convective heat flow:

For a heated wall: hcn = 1.823 (Δθsa) 0.293 / dh0.121
For a heated floor:
hcn = 2.175 (Δθsa) 0.308 / dh0.076
For a heated ceiling:
hcn = 0.704 (Δθsa) 0.133 / dh0.601

Here, Δθsa was the difference between the surface and air temperatures (measured at 0.1 m from the surface for wall and floor and at the centre of the enclosure for the case of the ceiling); Δθsa values ranged between 5 and 25 K. In these expressions, the value for dh was evaluated as 4 As/P, where As is the surface area (m²) and P is the perimeter (m).

These equations are weird - the units don't work - but trying plugging some plausible values into them I get values of around 1 for a ceiling, 3 to 4 for a wall, and 4 to 5 for a floor.