class archetypal.template.ZoneDefinition(Name, Constructions=None, Loads=None, Conditioning=None, Ventilation=None, DomesticHotWater=None, DaylightMeshResolution=1, DaylightWorkplaneHeight=0.8, InternalMassConstruction=None, InternalMassExposedPerFloorArea=1.05, Windows=None, area=1, volume=1, occupants=1, is_part_of_conditioned_floor_area=True, is_part_of_total_floor_area=True, multiplier=1, zone_surfaces=None, is_core=False, **kwargs)[source]

Zone settings class.


Initialize Zone object.

property Constructions

Get or set the ZoneConstructionSet object.

property Loads

Get or set the ZoneLoad object.

property Conditioning

Get or set the ZoneConditioning object.

property Ventilation

Get or set the VentilationSetting object.

property DomesticHotWater

Get or set the DomesticHotWaterSetting object.

property DaylightMeshResolution

Get or set the daylight mesh resolution [m].

property Category

Get or set the Category attribute.

property Comments

Get or set the object comments.

property DataSource

Get or set the datasource of the object.

property Name

Get or set the name of the object.

property allow_duplicates

Get or set the use of duplicates [bool].


Get copy of self.

extend(other, allow_duplicates)

Append other to self. Modify and return self.


other (UmiBase) –



Return type


float_mean(other, attr, weights=None)

Calculates the average attribute value of two floats. Can provide weights.

  • other (UmiBase) – The other UmiBase object to calculate average value with.

  • attr (str) – The attribute of the UmiBase object.

  • weights (iterable, optional) – Weights of [self, other] to calculate weighted average.


Return first object matching equality in the list of instantiated objects.

property id

Get or set the id.

property predecessors

Get or set the predecessors of self.

Of which objects is self made of. If from nothing else then self, return self.


renames self as well as the cached object


name (str) – the name.


Return a ref pointer to self.

property DaylightWorkplaneHeight

Get or set the DaylightWorkplaneHeight [m].

property InternalMassConstruction

Get or set the internal mass construction object.

property InternalMassExposedPerFloorArea

Get or set the internal mass exposed per floor area [-].

property Windows

Get or set the WindowSetting object.

property occupants

Get or set the number of occupants in the zone.

property area

Get or set the area of the zone [m²].

property volume

Get or set the volume of the zone [m³].

property is_core

Get or set if the zone is a core zone [bool].

property multiplier

Get or set the zone multiplier.

Note: Zone multiplier is designed as a “multiplier” for floor area, zone loads, and energy consumed by internal gains.

property is_part_of_conditioned_floor_area

Get or set is part of conditioned area [bool].

property is_part_of_total_floor_area

Get or set is part od the total building floor area [bool].

property zone_surfaces

Get or set the list of surfaces for this zone.


Return ZoneDefinition dictionary representation.

classmethod from_dict(data, zone_conditionings, zone_construction_sets, domestic_hot_water_settings, opaque_constructions, zone_loads, ventilation_settings, **kwargs)[source]

Create a ZoneDefinition from a dictionary.

  • data (dict) – The python dictionary.

  • zone_conditionings (dict) – A dictionary of ZoneConditioning objects with their id as keys.

  • zone_construction_sets (dict) – A dictionary of ZoneConstructionSet objects with their id as keys.

  • domestic_hot_water_settings (dict) – A dictionary of DomesticHotWaterSetting objects with their id as keys.

  • opaque_constructions (dict) – A dictionary of OpaqueConstruction objects with their id as keys.

  • zone_loads (dict) – A dictionary of ZoneLoad objects with their id as keys.

  • ventilation_settings (dict) – A dictionary of ZoneConditioning objects with their id as keys.

  • **kwargs – keywords passed to the constructor.

  "$id": "175",
  "Conditioning": {
    "$ref": "165"
  "Constructions": {
    "$ref": "168"
  "DaylightMeshResolution": 1.0,
  "DaylightWorkplaneHeight": 0.8,
  "DomesticHotWater": {
    "$ref": "159"
  "InternalMassConstruction": {
    "$ref": "54"
  "InternalMassExposedPerFloorArea": 1.05,
  "Loads": {
    "$ref": "172"
  "Ventilation": {
    "$ref": "162"
  "Category": "Office Spaces",
  "Comments": null,
  "DataSource": "MIT_SDL",
  "Name": "B_Off_0"
classmethod from_epbunch(ep_bunch, construct_parents=True, **kwargs)[source]

Create a Zone object from an eppy ‘ZONE’ epbunch.

  • ep_bunch (eppy.bunch_subclass.EpBunch) – The Zone EpBunch.

  • construct_parents (bool) – If False, skips construction of parents objects such as Constructions, Conditioning, etc.

combine(other, weights=None, allow_duplicates=False)[source]

Combine two ZoneDefinition objects together.

  • other (ZoneDefinition) – The other object.

  • weights (list-like, optional) – A list-like object of len 2. If None, the volume of the zones for which self and other belongs is used.


Create Equivalent InternalMassConstruction from partitions when combining zones.


the combined Zone object.

Return type



Validate object and fill in missing values.


Get a dict based on the object properties, useful for dict repr.


validate (bool) – If True, try to validate object before returning the mapping.