Single-zone office building
[Commercial buildings (commercial)]


Detailed Description

The building simultion uses a single zone ETP model with first order ODEs:.

\[ T'_i = \frac{1}{c_a} \left[ T_m U_m - T_i (U_a+U_m) + T_o U_a + \Sigma Q_x \right] \]

\[ T'_m = \frac{U_m}{c_m} \left[ T_i - T_m \right] \]

where:

General first order ODEs (with $C_1 - C_5$ defined by inspection above):

\[ T'_i = T_i C_1 + T_m C_2 + C_3 \]

\[ T'_m = T_i C_4 + T_m C_5 \]

where

General form of second order ODE

\[ p_4 = p_1 T"_i + p_2 T'_i + p_3 T_i \]

where

Solution to second order ODEs for indoor and mass temperatures are

\[ T_i(t) = K_1 e^{r_1 t} + K_1 e^{r_2 t} + \frac{p4}{p3} \]

\[ T_m(t) = \frac{T'_i(t) - C_1 T_i(t) - C_3}{C_2} \]

where:


Classes

class  office
struct  s_conditions
struct  s_controls
struct  s_enduse
struct  s_hvac
struct  s_hvacdesign
struct  s_lighting
struct  s_plugs
struct  s_zonedata

Enumerations

enum  HCMODE {
  HC_OFF, HC_HEAT, HC_AUX, HC_COOL,
  HC_ECON
}

Functions

int office::create ()
EXPORT int create_office (OBJECT **obj, OBJECT *parent)
int office::init (OBJECT *parent)
EXPORT int init_office (OBJECT *obj, OBJECT *parent)
 office::office (MODULE *module)
TIMESTAMP office::plc (TIMESTAMP t0, TIMESTAMP t1)
EXPORT TIMESTAMP plc_office (OBJECT *obj, TIMESTAMP t1, PASSCONFIG pass)
TIMESTAMP office::presync (TIMESTAMP t0, TIMESTAMP t1)
TIMESTAMP office::sync (TIMESTAMP t0, TIMESTAMP t1)
EXPORT TIMESTAMP sync_office (OBJECT *obj, TIMESTAMP t1, PASSCONFIG pass)

Variables

static officeoffice::defaults = NULL
static CLASSoffice::oclass = NULL


Enumeration Type Documentation

enum HCMODE

Enumerator:
HC_OFF  HVAC is off.
HC_HEAT  HVAC is heating.
HC_AUX  HVAC is supplemental heating.
HC_COOL  HVAC is cooling.
HC_ECON  HVAC is economizing.

Definition at line 27 of file office.h.


Function Documentation

int office::create (  )  [inherited]

Todo:
set the static initial value of properties (no ticket)

Definition at line 208 of file office.cpp.

References defaults.

Referenced by create_office().

int office::init ( OBJECT parent  )  [inherited]

Todo:
set the dynamic initial value of properties (no ticket)

Todo:
link climate data (no ticket)

Todo:
sanity check the initial values (no ticket)

Todo:
list simple tests to be made on data (no ticket)

Definition at line 216 of file office.cpp.

References s_hvacdesign::balance_temperature, s_plugs::capacity, s_lighting::capacity, s_hvacdesign::capacity, s_zonedata::control, s_hvac::cooling, s_controls::cooling_setpoint, s_hvacdesign::cop, s_zonedata::current, s_zonedata::design, s_hvacdesign::design_temperature, s_zonedata::exterior_ua, FL_NEW, s_zonedata::floor_area, s_zonedata::floor_height, FT_CLASS, FT_END, GETADDR, gl_find_next, gl_find_objects, gl_get_property, gl_set_dependent, gl_warning, s_zonedata::glazing_coeff, s_hvac::heating, s_controls::heating_setpoint, s_findlist::hit_count, s_zonedata::hvac, s_zonedata::interior_mass, s_zonedata::interior_ua, s_zonedata::lights, OBJECTHDR, s_conditions::pHumidity, s_zonedata::plugs, s_conditions::pSolar, s_conditions::pTemperature, s_object_list::rank, SAME, s_controls::setpoint_deadband, s_zonedata::window_area, and zone.

TIMESTAMP office::sync ( TIMESTAMP  t0,
TIMESTAMP  t1 
) [inherited]

Todo:
compute solar gains (no ticket)

Definition at line 292 of file office.cpp.

References s_conditions::air_temperature, s_zonedata::current, s_zonedata::design, s_hvac::enduse, s_plugs::enduse, s_lighting::enduse, s_enduse::energy, s_zonedata::exterior_ua, s_zonedata::floor_area, s_zonedata::floor_height, s_zonedata::hvac, s_zonedata::interior_mass, s_zonedata::interior_ua, s_zonedata::lights, s_conditions::mass_temperature, s_hvac::mode, s_zonedata::plugs, s_enduse::power, s_conditions::pSolar, s_conditions::pTemperature, s_conditions::temperature_change, s_zonedata::total, TS_NEVER, TS_SECOND, s_zonedata::window_area, and zone.

Referenced by sync_office().


GridLAB-DTM Version 1.0
An open-source project initiated by the US Department of Energy