The Commercial Module uses a simple Equivalent Thermal Parameters (ETP) model for small single-zone office buildings (Taylor and Pratt 1988), shown in Figure 1, with first-order ordinary differential equations (ODEs):

\begin{align} T_i' & = \frac{1}{C_a} \left [ T_m H_m - T_i \left ( U_a - H_m \right ) + \sum_{end\ uses}Q_x + T_o U_a \right ] \\ T_m' & = \frac{1}{C_m} \left [ H_m \left ( T_i - T_m \right ) + Q_m \right ] \end{align}

where

• $T_i$ = the temperature of the air inside the building
• $T_i'$ = dTi/dt
• $T_m$ = the temperature of the mass inside the building (for example, furniture, inside walls)
• $T_m'$ = dTm/dt
• $T_o$ = the ambient temperature outside air
• $U_a$ = the UA of the building envelope
• $H_m$ = the UA of the mass of the furniture, inside walls, etc.
• $C_m$ = the heat capacity of the mass of the furniture inside the walls, etc.
• $C_a$ = the heat capacity of the air inside the building
• $Q_i$ = the heat rate from internal heat gains of the building (for example, plugs, lights, people)
• $Q_h$ = the heat rate from heating, ventilating, and air conditioning unit
• $Q_s$ = the heat rate from the sun to air (solar heating through windows, etc.)
• $Q_m$ = the heat rate direct to the mass (e.g, solar radiation direct to mass)

The general first order ODEs (C1-C5 defined by inspection above) is

\begin{align} T_i' & = c_1 T_i + c_2 T_m + c_3 \\ T_m' & = c_4 T_i + c_5 T_m + c_6 \end{align}

with the constants $c_1$ through $c_6$ defined as

• $c_1 = - (U_a+U_m)/C_a$
• $c_2 = U_m/C_a$
• $c_3 = (Q_a+U_a T_o)/C_a$
• $c_4 = U_m/C_m$
• $c_5 = - U_m/C_m$
• $c_6 = Q_m/C_m$

The general form of the second-order ODE is $p_1 T_i'' + p_2 T_i' + p_3 T_i = p_4$. The solutions to the second-order ODEs for indoor and mass temperatures are

\begin{align} T_i(t) & = k_1 e^{r_1 t} + k_2 e^{r_2 t} + \frac{p_4}{p_3} \\ T_m(t) & = \frac{T_i'(t) - c_1 T_i(t) - c3}{c2} \end{align}

where:

• $p_1 = 1/c_2$
• $p_2 = -(c_1+c_5)/c_2$
• $p_3 = c_1 c_5 / c_2 - c_4$
• $p_4 = -c_3 c_5 / c_2 + c_6$
• $r_1,r_2$ are the roots of the $p_1 r^2 + p_2 r + p_3 = 0$
• $k_1 = [ r_1 T_i(0) - r_2 p_4/p_3 - T_i'(0) ] / (r_2 - r1)$
• $k_2 = [T_i'(0) - r_1 k_1] / r_2$
• $t$ = the elapsed time
• $T_i(t)$ = the temperature of the air inside the building at time $t$
• $T_i'(t)$ = the rate of temperature change of the air inside the building at time $t$

so that

$T_i'(0) = c_2 T_m(0) + c_1 T_i(0) - \left ( c_1 + c_2) T_o + c_7 \right )$

and

$T_m(t) = k_1 \frac{r_1 - c_1}{c_2} e^{r_1 t} + k_2 \frac{r_2-c_1}{c_2} e^{r_2 t} + \frac{p_4}{p_3} + \frac{c_6}{c_2}$

with

• $c_7 = Q_a / C_a$

## Defaults

All end-use power factor default to 1.0.

The outdoor air defaults to 59 F, relative humidity to 75%, and solar exposures as follows

• South : 0
• South-east : 0
• South-west : 0
• East : 0
• West : 0
• North-east : 0
• North-west : 0
• North : 0
• Horizontal : 0

The default interior air and mass temperatures are set to the default outdoor air temperature.

The control defaults are as follows:

• Heating setpoint : 70F
• Cooling setpoint : 75F
• Auxiliary cut-in: 20F
• Economizer cut-in: 60F
• Ventilation fraction : 1 /h
• Lighting fraction : 0.5 pu

The default occupancy schedule is M-F 8-17h. When occupied, the default occupancy is 0.002 occupants/sf.

## Initialization

The default heating capacity is computed by solving the heat flow equation for the peak heating condition, which gives:

$Q_{max_{heat}}=UA ( T_{set_{heat}}-T_{design_{heat}} )$

The default cooling capacity is computed by solving the heat flow equation for the peak cooling condition, which gives:

$Q_{max_{cool}} = UA ( T_{design_{cool}}-T_{set_{cool}}) + \sum_{windows}{A_{window} Q_{solar} c_{glazing}} + \sum_{loads}{Q_{load}} +Q_{vent}$

where

• $Q_{vent}=0.2402 \times 0.0735(T_{design_{cool}}-T_{set_{cool}}) \times V_{air} \times ACH$

The heating COP is given by $COP_{heat} = Dist_{triangle}(1,2)$ and the cooling COP is given by $COP_{cool} = Dist_{triangle}(3,5)$.

## Controls

The HVAC system has 6 control modes:

OFF
In the OFF mode, the HVAC system is completely off. No ventilation and

no heating or cooling of any kind of performed. This mode is engaged whenever $T_{off_{heat}} \lt T_{air} \lt T_{off_{cool}}$ and $occupancy = 0$.

VENT
In the VENT mode, the HVAC system is ventilating the zone at the

minimum_ach rate. This mode is engaged whenever $T_{off_{heat}} \lt T_{air} \lt T_{off_{cool}}$ and $occupancy \gt 0$.

HEAT
In the HEAT mode, the primary heating (COP>1) system is on and the building is

ventilating at the minimum_ach rate only if occupancy is non-zero. This mode is engaged whenever $T_{cutin_{aux}} \lt T_{air} \le T_{on_{heat}}$.

AUX
In the AUX mode, the secondary heating (COP=1) system is on and the building is

ventilating at the minimum_ach rate only if occupancy is non-zero. This mode is engaged whenever $T_{air} \le T_{cutin_{aux}}$.

COOL
In the COOL mode, the active cooling (COP>1) system is on and the building

ventilating at the minimum_ach rate only if occupancy is non-zero. This mode is engaged whenever $T_{air} \ge T_{on_{cool}} and T_{out} \gt T_{cutin_{econ}}$.

ECON
In the ECON mode, the passive cooling (COP=&infty;) system is on and the building

is ventilating using the rate required to cool using outdoor air only. This mode is engaged whenever $T_{air} \ge T_{on_{cool}} and T_{out} \le T_{cutin_{econ}}$.

## Power calculations

Except as noted below, when ventilation is required, $Pvent = floor_area (0.1 - 0.01\imath)$ VA/sf, and $Qvent=0.2402 \times 0.0735 (T_{out}-T_{air}) V_{air} \times ventilation_rate$.

### HVAC

OFF
COP = 0, Qactive = Qpassive = 0, Pvent = 0
VENT
COP = 0, Qactive = 0, Qpassive = Qvent
HEAT
COP = 1.0 + (COP_{heating}-1) (T_{out} - T_{aux}) / Trange, zone.hvac.heating.capacity + zone.hvac.heating.capacity_perF*(zone.hvac.heating.balance_temperature-Tout), Qpassive = Qvent
AUX
COP = 1.0, Qactive = COP * heating_capacity, Qpassive = Qvent
COOL
COP = -1.0 - (zone.hvac.cooling.cop+1)*(Tout-TmaxCool)/(TmaxCool-Tecon), zone.hvac.cooling.capacity - zone.hvac.cooling.capacity_perF*(Tout-zone.hvac.cooling.balance_temperature), Qpassive = Qvent
ECON
COP = 0, Qactive = 0, Qpassive = Qvent

### Lighting

lights.load = lights.fraction*(lights.capacity + (lights.capacity/lights.power_factor)*(sin(arccos(lights.power_factor)))J) (kW)