# Surface Heat Balances With Moveable Insulation[LINK]

In EnergyPlus, moveable insulation can be present either on the interior or exterior side of a particular construction. Different heat balances are impacted depending on the location of the moveable insulation. Having moveable insulation on the interior side results in a modified form of the inside surface heat balance equation. Having moveable insulation on the exterior side results in different cases for the outside surface heat balance. Information on the modeling equations for each of these types of moveable insulation are shown in the next several sections.

## Inside Heat Balance with Interior Moveable Insulation[LINK]

There are two different heat balances which must be maintained to model interior moveable insulation. At both the interface between the zone air and the moveable insulation and the interface between the moveable insulation and the surface (wall, roof, etc.), the following general heat balance must be maintained:

One significant complication of the inside heat balance is the fact that surfaces within the same zone can interact with each other radiatively. This means that a solution for all surface temperatures must be done at the same time to maintain a radiation heat balance among the surfaces. This requires some iteration of the inside surface heat balance as will be seen in the equations that are shown later in this subsection.

Another complication of the inside heat balance relates to the presense of moveable insulation. When moveable insulation is present, a second heat balance equation is required to determine the temperature at both the air-moveable insulation interface as well as the moveable insulation-surface interface. This sets up a system of two equations with two unknowns: the temperatures at the air-moveable insulation interface and the moveable insulation-surface interface.

Applying the basic steady state heat balance equation at each of these interfaces results in the following two equations:

Hc(TaTmi)+Qlw+Hmi(TiTmi)+It(ToldTmi)=0

Hmi(TmiTi)+Qsw+Qcond=0

where:

Hc is the convective heat transfer coefficient between the moveable insulation and the air

Ta is the zone air temperature

Tmi is the temperature at the interface between the air and the moveable insulation

Qlw is the long wavelength radiation incident on the interface between the air and the moveable insulation

Hmi is the U-value of the moveable insulation material

Ti is the temperature at the interface between the moveable insulation and the surface

It is a damping constant for iterating to achieve a stable radiant exchange between zone surfaces

Told is the previous surface temperature at the last solution iteration

Qsw is the short wavelength radiation incident on the interface between the moveable insulation and the surface

Qcond is the conduction heat transfer through the surface.

Equation [eq:InsideHBAirMovInsInterface] is the heat balance at the air-moveable insulation interface and can be rearranged to solve for the temperature at this interface, Tmi. Equation [eq:InsideHBMovInsSurfInterface] is the heat balance at the moveable insulation-surface interface and provides a second equation for Tmi. Both equations leave Tmi as a function of Ti and other known quantities as shown below.

It should be noted that there are some assumptions built into these equations. First, all long wavelength radiation whether from other surfaces or other elements (such as heat sources which add radiation to the zone) is all assumed to be incident at and influence the air-moveable insulation interface. This also means that no long wavelength radiation is transmitted through the moveable insulation to the moveable insulation-surface interface. Second, all short wavelength radiation is assumed to be transmitted through the moveable insulation to the moveable-insulation interface. This is a simplification that is consistent with transparent insulation and assumes that the moveable insulation material itself does not absorb any short wavelength as it passes through it. Third, the term Qcond includes several terms that all relate to the method for calculating heat conduction through the actual surface to which the moveable insulation is attached. Finally, the moveable insulation material is sufficiently lightweight thermally that it has no thermal mass and it can be treated as an equivalent resistance.

Equation [eq:InsideHBAirMovInsInterface] can be rearranged to obtain:

(Hc+Hmi+It)Tm=HcTa+HmTi+Qlw+ItTold

When Equation [eq:InsideHBMovInsSurfInterface] is rearranged to solve for Tm and this is substituted back into Equation [eq:RearrangedHBAirMovIns], one obtains a single equation that allows for the solution of Ti. This can then be used to solve for Tmi.

The C++ code that is used to solve for Ti and Tmi for cases where moveable insulation is present on the interior side is shown below.

F1 = HMovInsul / (HMovInsul + HConvIn_surf + IterDampConst);

SurfTempIn(SurfNum) = (SurfCTFConstInPart(SurfNum) + SurfOpaqQRadSWInAbs(SurfNum) + construct.CTFCross(0) * TH11 +
F1 * (SurfQRadThermInAbs(SurfNum) + HConvIn_surf * RefAirTemp(SurfNum) +
IterDampConst * SurfTempInsOld(SurfNum)))
/ (construct.CTFInside(0) + HMovInsul - F1 * HMovInsul);

SurfTempInTmp(SurfNum) = (construct.CTFInside(0) * SurfTempIn(SurfNum) +
HMovInsul * SurfTempIn(SurfNum) -
SurfOpaqQRadSWInAbs(SurfNum) - SurfCTFConstInPart(SurfNum) -
construct.CTFCross(0) * TH11) / (HMovInsul);

## Outside Heat Balance Cases for Exterior Moveable Insulation[LINK]

Just like at the inside surface-air interface, a heat balance must exist at the outside surface-air interface. The incoming conductive, convective, and radiative fluxes must sum up to zero as shown in Equation [eq:BasicSteadyStateHeatBalanceEquation].

In contrast to the internal surface heat balance that treats all surfaces simultaneously, the external thermal balance for each surface is performed independent of all other surfaces. This implies that there is no direct interaction between the individual surfaces.

TARP includes four possible representations for the basic outside surface heat balance. The first two depend on which of the optimal surface conductance algorithms the user selects. The simple outside surface conductance that includes both the convective and thermal interchange between the surface and the environment in a single coefficient, is represented by the thermal network in Figure 1. Equation [eq:BasicSteadyStateHeatBalanceEquation] can also be expressed as:

[KOPt+Y0TItX0TOt]+[HO(TaTOt)]+QSO=0

This can be solved for the outside surface temperature.

TOt=[KOPt+QSO+Y0TIt+HOTaX0+HO]

The detailed outside surface conductance model considers convection and radiant interchange with the sky and with the ground as separate factors. Its use in the outside thermal balance is shown in Figure 2. In this case, Equation [eq:BasicSteadyStateHeatBalanceEquation] can be expanded to give:

[KOPt+Y0TItX0TOt]+[HA(TaTOt)+HS(TsTOt)+HG(TgTOt)]+QSO=0

This can be solved for the outside surface temperature:

TOt=[KOPt+QSO+Y0TIt+HATa+HSTs+HGTgX0+HA+HS+HG]

The third and fourth representations occur when the outside surface has been covered with movable insulation. The insulation has a conductance of UM. The thermal network in Figure 3 represents this case.The insulation must be mass-less because it is not generally possible to perform a correct thermal balance at the juncture of two surfaces each modeled by CTF.

The equation for the thermal balance between the surface and the insulation is:

[KOPt+Y0TItX0TOt+UM(TMTOt)]+QSO=0

Which can be rewritten to solve for TO:

TOt=[KOPt+QSO+Y0TIt+UMTMX0+UM]

Depending on whether or not the detailed or simple algorithm for surface conductance is being used, there are two expressions for TM, the outside temperature of the insulation. For the simple conductance:

TM=[QSM+UMTOt+HOTaUM+HO]

For the detailed conductance:

TOt=[QSM+UMTOt+HATa+HSTs+HGTgUM+HA+HS+HG]

In this case the values of HA, HS and HG must be found by using an estimated value of TM in place of TO.

## Heat Balance Cases[LINK]

TOt and TIt are related through the Y0CTF. However TIt is also unknown. While it is possible to combine the outside and the inside surface heat balances to compute TOt and TIt simultaneously, TARP uses a simpler procedure where TOt is based on a previous value of TI. When Y0 is small, as occurs in well insulated or very massive surfaces, TIt can be replaced by TIt1 (which is known for the previous hour’s heat balance) without significantly effecting the value of TOt When Y0 is large, TO and TI can so strongly be coupled that separate outside and inside heat balances do not work because the environment and zone temperatures have negligible influence on the heat balances. The TARP uses the inside surface heat balance to couple TOt with TZ and TR. These two temperatures are less strongly influenced by TO and allow a reasonable heat balance. On the first heat balance iteration, TZ and TR are the values at time t-1. The user may optionally require that TOt be recomputed with every iteration of TIt. In this case TZ and TR have values from the previous iteration and a true simultaneous solution is achieved. In most conventional constructions, recomputing TOt does not significantly change the computed zone loads and temperatures. The inside surface heat balance is given by:

TIt=[KIPt+QSI+HCTZ+HRTR+Y0TOZ0+HC+HR]

The surface heat balances can be combined in eight ways according to conditions for calculations of the outside surface temperature:

F1=[Y0Z0+HI+HR]

F2=[UMUM+HO]

F3=[UMUM+HA+HS+HG]

### Case1: Y0 small, simple conductance, no movable insulation:[LINK]

From Equation [eq:OutsideSurfTempHeatBalEq],

TOt=[KOPt+QSO+Y0TIt1+HOTaX0+HO]

### Case2: Y0 not small, simple conductance, no movable insulation:[LINK]

From Equations [eq:OutsideSurfTempHeatBalEq] and [eq:InsideSurfTempHeatBalEq]:

TOt=[KOPt+QSO+HOTa+F1(KIPt+QSI+HITZ+HRTR)X0+HOF1Y0]

### Case3: Y0 small, detailed conductance, no movable insulation:[LINK]

From Equation [eq:MoreDetailedOutsideSurfHeatBalEq]:

TOt=[KOPt+QSO+Y0TIt1+HATa+HSTs+HGTgX0+HA+HS+HG]

### Case4: Y0 not small, detailed conductance, no movable insulation:[LINK]

From Equations [eq:MoreDetailedOutsideSurfHeatBalEq] and [eq:InsideSurfTempHeatBalEq]:

TOt=[KOPt+QSO+HATa+HSTs+HGTg+F1(KIPt+QSI+HITZ+HRTR)X0+HA+HS+HGF1Y0]

### Case5: Y0 small, simple conductance, with movable insulation:[LINK]

From Equations [eq:HeatBalEqforTo] and [eq:OutTempMovableInsulation]:

TOt=[KOPt+QSO+Y0TIt1+F2(QSM+HOTM)X0+UMF2UM]

### Case6: Y0 not small, simple conductance, with movable insulation:[LINK]

From Equations [eq:HeatBalEqforTo], [eq:OutTempMovableInsulation] and [eq:InsideSurfTempHeatBalEq]:

TOt=[KOPt+QSO+F2(QSM+HOTa)+F1(KIPt+QSI+HITZ+HRTR)X0+UMF2UMF1Y0]

### Case7: Y0 small, detailed conductance, with movable insulation:[LINK]

From Equations [eq:HeatBalEqforTo] and [eq:TOtEquationDetailedConductance]:

TOt=[KOPt+QSO+Y0TIt1+F3(QSM+HATa+HSTs+HGTg)X0+UMF3UM]

### Case8: Y0 not small, detailed conductance, with movable insulation:[LINK]

TOt=[KOPt+QSO+F1(KIPt+QSI+HITZ+HRTR)+F3(QSM+HATa+HSTs+HGTg)X0+UMF3UMF1Y0]

## C++ Algorithm Examples {#c++-algorithm-examples}[LINK]

These C++ code snippets show the implementation of these different cases.

### Case5: Y0 small, simple conductance, with movable insulation:[LINK]

From Equation [eq:HeatBalanceEquationCase5]:

// Outside heat balance case: Movable insulation, slow conduction, simple convection
F2 = HMovInsul / (HMovInsul + HExtSurf(SurfNum) );
TH(1, 1, SurfNum) = (-SurfCTFConstOutPart(SurfNum) + SurfOpaqQRadSWOutAbs(SurfNum) + construct.CTFCross(0) * SurfTempIn(SurfNum) +
F2 * (SurfQRadSWOutMvIns(SurfNum) + (HExtSurf(SurfNum)) * TempExt) /
(construct.CTFOutside(0) + HMovInsul - F2 * HMovInsul);

### Case6: Y0 not small, simple conductance, with movable insulation:[LINK]

From Equation [eq:HeatBalanceEquationCase6]:

// Outside heat balance case: Movable insulation, quick conduction, simple convection
F1 = construct.CTFCross(0) / (construct.CTFInside(0) + HConvIn(SurfNum));
F2 = HMovInsul / (HMovInsul + HExtSurf(SurfNum) );
TH(1, 1, SurfNum) = (-SurfCTFConstOutPart(SurfNum) + SurfOpaqQRadSWOutAbs(SurfNum) + SurfQRadLWOutSrdSurfs(SurfNum) +
F1 * (SurfCTFConstInPart(SurfNum) + SurfOpaqQRadSWInAbs(SurfNum) + SurfQRadThermInAbs(SurfNum) +
HConvIn(SurfNum) * MAT(ZoneNum) + SurfNetLWRadToSurf(SurfNum)) +
F2 * (SurfQRadSWOutMvIns(SurfNum) + (HExtSurf(SurfNum)) * TempExt) /
(construct.CTFOutside(0) + HMovInsul - F2 * HMovInsul - F1 * construct.CTFCross(0));

### Case7: Y0 small, detailed conductance, with movable insulation:[LINK]

From Equation [eq:HeatBalanceEquationCase7]:

// Outside heat balance case: Movable insulation, slow conduction, detailed convection
F2 = HMovInsul / (HMovInsul + SurfHcExt(SurfNum) + SurfHAirExt(SurfNum) + SurfHSkyExt(SurfNum) + SurfHGrdExt(SurfNum));
TH(1, 1, SurfNum) = (-SurfCTFConstOutPart(SurfNum) + SurfOpaqQRadSWOutAbs(SurfNum) + SurfQRadLWOutSrdSurfs(SurfNum) + construct.CTFCross(0) * SurfTempIn(SurfNum) +
F2 * (SurfQRadSWOutMvIns(SurfNum) + (SurfHcExt(SurfNum) + SurfHAirExt(SurfNum)) *
TempExt + QAdditionalHeatSourceOutside(SurfNum) +
SurfHSkyExt(SurfNum) * TSky + SurfHGrdExt(SurfNum) * TGround)) /
(construct.CTFOutside(0) + HMovInsul - F2 * HMovInsul);

### Case8: Y0 not small, detailed conductance, with movable insulation:[LINK]

From Equation [eq:HeatBalanceEquationCase8]:

// Outside heat balance case: Movable insulation, quick conduction, detailed convection
F1 = construct.CTFCross(0) / (construct.CTFInside(0) + HConvIn(SurfNum));
F2 = HMovInsul / (HMovInsul + SurfHcExt(SurfNum) + SurfHAirExt(SurfNum) + SurfHSkyExt(SurfNum) + SurfHGrdExt(SurfNum));
TH(1, 1, SurfNum) = (-SurfCTFConstOutPart(SurfNum) + SurfOpaqQRadSWOutAbs(SurfNum) + SurfQRadLWOutSrdSurfs(SurfNum) +
F1 * (SurfCTFConstInPart(SurfNum) + SurfOpaqQRadSWInAbs(SurfNum) + SurfQRadThermInAbs(SurfNum) +
HConvIn(SurfNum) * MAT(ZoneNum) + SurfNetLWRadToSurf(SurfNum)) +
F2 * (SurfQRadSWOutMvIns(SurfNum) + (SurfHcExt(SurfNum) + SurfHAirExt(SurfNum)) *
TempExt + QAdditionalHeatSourceOutside(SurfNum) +
SurfHSkyExt(SurfNum) * TSky + SurfHGrdExt(SurfNum) * TGround)) /
(construct.CTFOutside(0) + HMovInsul - F2 * HMovInsul - F1 * construct.CTFCross(0));

## C++ Variable Descriptions {#c++-variable-descriptions}[LINK]

C++ Variables and Descriptions
C++ Variable Description Tarp Variable Units Description
TH(1, 1, SurfNum) Temperature History(SurfNum,Hist Term,In/Out), where: Hist Term (1 = Current Time, 2-MaxCTFTerms = previous times), In/Out (1 = Outside, 2 = Inside) TO C Temperature of outside of surface I at time t
Construct(ConstrNum).CTFCross(0) Cross or Y term of the CTF equation Y0 W/m K Cross CTF term
Construct(ConstrNum).CTFInside(0) Inside or Z terms of the CTF equation Z0 W/m K Inside CTF term
Construct(ConstrNum).CTFOutside(0) Outside or X terms of the CTF equation X0 W/m K Outside CTF term
SurfCTFConstInPart(SurfNum) Constant inside portion of the CTF calculation KIP W/m Portion of inward conductive flux based on previous temperature and flux history terms
SurfCTFConstOutPart(SurfNum) Constant Outside portion of the CTF calculation KOP W/m Portion of outward conductive flux based on previous temperature and flux history terms
F1, F2, F3 Intermediate calculation variables F1, F2, F3 Radiation interchange factor between surfaces
GroundTemp Ground surface temperature T C Temperature of ground at the surface exposed to the outside environment
HConvIn(SurfNum) Inside convection coefficient HI W/m K Inside convection coefficient
HExtSurf(SurfNum) Outside Convection Coefficient HO, HA W/m K Overall outside surface conductance
HGround Radiant exchange (linearized) coefficient HG W/m K Radiative conductance (outside surface to ground temperature
HmovInsul Conductance or “h” value of movable insulation UM W/m K Conductance of Movable insulation
HSky Radiant exchange (linearized) coefficient HS W/m K Radiative conductance (outside surface to sky radiant temperature
MAT(ZoneNum) Zone temperature TZ C Temperature of zone air
SurfNetLWRadToSurf(SurfNum) Net interior longwave radiation to a surface from other surfaces HR*TR W/m Net surface to surface radiant exchange
SurfOpaqQRadSWInAbs(SurfNum) Short-wave radiation absorbed on inside of opaque surface QSI W/m Short wave radiant flux absorbed at inside of surface
SurfOpaqQRadSWOutAbs(SurfNum) Short wave radiation absorbed on outside opaque surface QSO W/m Short wave radiant flux absorbed at outside of surface
SurfQRadSWOutMvIns(SurfNum) Short wave radiation absorbed on outside of movable insulation QSM W/m Short wave radiant flux absorbed at surface of movable insulation
SurfQRadThermInAbs(SurfNum) Thermal Radiation absorbed on inside surfaces W/m Longwave radiant flux from internal gains
SkyTemp Sky temperature T C Sky temp
TempExt Exterior surface temperature or exterior air temperature TM, T C Temperature of external surface of movable insulation or outside ambient air temperature
SurfTempIn(SurfNum) Temperature of inside surface for each heat transfer surface TI C Temperature of inside of surface I at time t-1