honeybee_energy.hvac.detailed module

Detailed HVAC system object defined using IronBug or OpenStudio .NET bindings.

class honeybee_energy.hvac.detailed.DetailedHVAC(identifier, specification)[source]

Bases: _HVACSystem

Detailed HVAC system object defined using IronBug or OpenStudio .NET bindings.

Parameters
  • identifier – Text string for detailed system identifier. Must be < 100 characters and not contain any EnergyPlus special characters.

  • specification – A JSON-serializable dictionary representing the full specification of the detailed system. This can be obtained by calling the ToJson() method on any IronBug HVAC system and then serializing the resulting JSON string into a Python dictionary using the native Python json package. Note that the Rooms that the HVAC is assigned to must be specified as ThermalZones under this specification in order for the resulting Model this HVAC is a part of to be valid.

Properties:
  • identifier

  • specification

  • air_loop_count

  • thermal_zones

  • display_name

  • user_data

ToString()

Overwrite .NET ToString.

duplicate()

Get a copy of this object.

classmethod from_dict(data)[source]

Create a HVAC object from a dictionary.

Parameters

data – A HVAC dictionary in following the format below.

{
"type": "DetailedHVAC",
"identifier": "Classroom1_System",  # identifier for the HVAC
"display_name": "Custom VAV System",  # name for the HVAC
"specification": {}  # dictionary for the full HVAC specification
}
classmethod from_dict_abridged(data, schedule_dict)[source]

Create a HVAC object from an abridged dictionary.

Parameters
  • data – An abridged dictionary in following the format below.

  • schedule_dict – A dictionary with schedule identifiers as keys and honeybee schedule objects as values.

{
"type": "DetailedHVAC",
"identifier": "Classroom1_System",  # identifier for the HVAC
"display_name": "Custom VAV System",  # name for the HVAC
"specification": {}  # dictionary for the full HVAC specification
}
lock()
to_dict(abridged=False)[source]

DetailedHVAC dictionary representation.

Parameters

abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True). This input currently has no effect but may eventually have one if schedule-type properties are exposed on this object.

to_ideal_air_equivalent()[source]

This method is NOT YET IMPLEMENTED.

unlock()
property air_loop_count

Get an integer for the number of air loops in the system.

property display_name

Get or set a string for the object name without any character restrictions.

If not set, this will be equal to the identifier.

property identifier

Get or set the text string for HVAC system identifier.

property schedules

Get an array of all the schedules associated with the HVAC system.

This property should be overwritten in each of the classes inheriting from the HVACSystem base class since each HVAC system is likely to have it’s own unique places where schedules are assigned. At a minimum, this property should return heating/cooling availability schedules.

property specification

Get or set a dictionary for the full specification of this HVAC.

This can be obtained by calling the SaveAsJson() method on any IronBug HVAC system and then serializing the resulting JSON string into a Python dictionary using the native Python json package.

property thermal_zones

Get a tuple of strings for the Rooms/Zones to which the HVAC is assigned.

property user_data

Get or set an optional dictionary for additional meta data for this object.

This will be None until it has been set. All keys and values of this dictionary should be of a standard Python type to ensure correct serialization of the object to/from JSON (eg. str, float, int, list, dict)