honeybee_energy.construction.windowshade module

Window Construction with shades/blinds or a dynamically-controlled glass pane.

class honeybee_energy.construction.windowshade.WindowConstructionShade(identifier, window_construction, shade_material, shade_location='Interior', control_type='AlwaysOn', setpoint=None, schedule=None)[source]

Bases: object

Window Construction with shades/blinds or a dynamically-controlled glass pane.

Parameters:
  • identifier – Text string for a unique Construction ID. Must be < 100 characters and not contain any EnergyPlus special characters. This will be used to identify the object across a model and in the exported IDF.

  • window_construction – A WindowConstruction object that serves as the “switched off” version of the construction (aka. the “bare construction”). The shade_material and shade_location will be used to modify this starting construction.

  • shade_material – An EnergyWindowMaterialShade or an EnergyWindowMaterialBlind that serves as the shading layer for this construction. This can also be an EnergyWindowMaterialGlazing, which will indicate that the WindowConstruction has a dynamically-controlled glass pane like an electrochromic window assembly.

  • shade_location

    Text to indicate where in the window assembly the shade_material is located. (Default: “Interior”). Choose from the following 3 options:

    • Interior

    • Between

    • Exterior

    Note that the WindowConstruction must have at least one gas gap to use the “Between” option. Also note that, for a WindowConstruction with more than one gas gap, the “Between” option defaults to using the inner gap as this is the only option that EnergyPlus supports.

  • control_type

    Text to indicate how the shading device is controlled, which

    determines when the shading is “on” or “off.” (Default: “AlwaysOn”). Choose from the options below (units for the values of the corresponding setpoint are noted in parentheses next to each option):

    • AlwaysOn

    • OnIfHighSolarOnWindow (W/m2)

    • OnIfHighHorizontalSolar (W/m2)

    • OnIfHighOutdoorAirTemperature (C)

    • OnIfHighZoneAirTemperature (C)

    • OnIfHighZoneCooling (W)

    • OnNightIfLowOutdoorTempAndOffDay (C)

    • OnNightIfLowInsideTempAndOffDay (C)

    • OnNightIfHeatingAndOffDay (W)

  • setpoint – A number that corresponds to the specified control_type. This can be a value in (W/m2), (C) or (W) depending upon the control type.

  • schedule – An optional ScheduleRuleset or ScheduleFixedInterval to be applied on top of the control_type. If None, the control_type will govern all behavior of the construction. (Default: None).

Properties:
  • identifier

  • display_name

  • window_construction

  • shade_material

  • shade_location

  • control_type

  • setpoint

  • schedule

  • materials

  • layers

  • unique_materials

  • frame

  • r_value

  • u_value

  • u_factor

  • r_factor

  • is_symmetric

  • is_switchable_glazing

  • has_frame

  • has_shade

  • is_dynamic

  • inside_emissivity

  • outside_emissivity

  • solar_transmittance

  • visible_transmittance

  • shgc

  • thickness

  • glazing_count

  • gap_count

  • is_groupable

  • is_zone_groupable

  • inside_material

  • outside_material

  • user_data

  • properties

ToString()[source]

Overwrite .NET ToString.

duplicate()[source]

Get a copy of this construction.

classmethod from_dict(data)[source]

Create a WindowConstructionShade from a dictionary.

Note that the dictionary must be a non-abridged version for this classmethod to work.

Parameters:

data – A python dictionary in the following format

{
"type": 'WindowConstructionShade',
"identifier": 'Double Pane U-250 IntBlind-0025',
"display_name": 'Double Pane with Interior Blind',
"window_construction": {}  # a WindowConstruction dictionary representation
"shade_material": {}  # a shade/blind/glass dictionary representation
"shade_location": 'Interior',  # text for shade layer location
"control_type": 'OnIfHighSolarOnWindow',  # text for shade control type
"setpoint": 200,  # number for control setpoint
"schedule": {}  # optional ScheduleRuleset or ScheduleFixedInterval dict
}
classmethod from_dict_abridged(data, materials, schedules)[source]

Create a WindowConstructionShade from an abridged dictionary.

Parameters:
  • data – An WindowConstructionShade dictionary with the format below.

  • materials – A dictionary with identifiers of materials as keys and Python material objects as values.

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

{
"type": 'WindowConstructionShadeAbridged',
"identifier": 'Double Pane U-250 IntBlind-0025',
"display_name": 'Double Pane with Interior Blind',
"window_construction": {}  # a WindowConstructionAbridged dictionary
"shade_material": 'Blind-0025'  # a shade/blind/glass identifier
"shade_location": 'Interior',  # text for shade layer location
"control_type": 'OnIfHighSolarOnWindow',  # text for shade control type
"setpoint": 200,  # number for control setpoint
"schedule": 'DayNight_Schedule'  # optional schedule identifier
}
lock()[source]

The lock() method will also lock the shade_material.

to_dict(abridged=False)[source]

Window construction dictionary representation.

Parameters:

abridged – Boolean to note whether the full dictionary describing the object should be returned (False) or just an abridged version (True), which only specifies the identifiers of material layers and schedules. (Default: False).

to_idf()[source]

IDF string representation of construction object.

Note that this method only outputs a single string for the bare window construction and, to write the full construction into an IDF, the construction’s unique_materials must also be written along with the output of to_shaded_idf, which contains the shaded construction. Also, for each Aperture to which this construction is assigned, a ShadingControl object must also be written, which can be obtained from the to_shading_control_idf. If the construction has a frame, the frame definition must also be written.

Returns:

Text string representation of the bare (unshaded) construction.

Construction,
    Generic Double Pane,      !- name
    Generic Low-e Glass,      !- layer 1
    Generic Window Air Gap,   !- layer 2
    Generic Clear Glass;      !- layer 3
to_radiance_solar()[source]

Honeybee Radiance material for the bare (unshaded) construction.

to_radiance_visible()[source]

Honeybee Radiance material for the bare (unshaded) construction.

to_shaded_idf()[source]

IDF string representation of construction in its shaded state.

Returns:

Text string representation of the shaded construction.

to_shading_control_idf(aperture_identifier, room_identifier)[source]

IDF string representation of a WindowShadingControl object.

This has to be written for every Aperture to which this construction is assigned in order for EnergyPlus to simulate it correctly.

Parameters:
  • aperture_identifier – The identifier of the honeybee Aperture to which this construction is assigned.

  • room_identifier – The identifier of the honeybee Room to which the aperture belongs.

Returns:

Text string representation of the WindowShadingControl.

unlock()[source]

The unlock() method will also unlock the shade_material.

CONTROL_TYPES = ('AlwaysOn', 'OnIfHighSolarOnWindow', 'OnIfHighHorizontalSolar', 'OnIfHighOutdoorAirTemperature', 'OnIfHighZoneAirTemperature', 'OnIfHighZoneCooling', 'OnNightIfLowOutdoorTempAndOffDay', 'OnNightIfLowInsideTempAndOffDay', 'OnNightIfHeatingAndOffDay')
GROUPABLE_TYPES = ('AlwaysOn', 'OnIfHighHorizontalSolar', 'OnIfHighOutdoorAirTemperature', 'OnNightIfLowOutdoorTempAndOffDay')
ROOM_GROUPABLE_TYPES = ('OnIfHighZoneAirTemperature', 'OnIfHighZoneCooling', 'OnNightIfLowInsideTempAndOffDay', 'OnNightIfHeatingAndOffDay')
SHADE_LOCATIONS = ('Interior', 'Between', 'Exterior')
property control_type

Get or set the text indicating how the shading device is controlled.

Choose from the options below:

  • AlwaysOn

  • OnIfHighSolarOnWindow

  • OnIfHighHorizontalSolar

  • OnIfHighOutdoorAirTemperature

  • OnIfHighZoneAirTemperature

  • OnIfHighZoneCooling

  • OnNightIfLowOutdoorTempAndOffDay

  • OnNightIfLowInsideTempAndOffDay

  • OnNightIfHeatingAndOffDay

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 frame

Get a window frame for the frame material surrounding the construction.

property gap_count

Get the number of gas gaps contained within the construction.

property glazing_count

The number of glazing materials contained within the construction.

Note that Simple Glazing System materials do not count.

property has_frame

Get a boolean noting whether the construction has a frame assigned to it.

property has_shade

Get a boolean noting whether dynamic materials are in the construction.

This should always be True for this class.

property identifier

Get or set the text string for construction identifier.

property inside_emissivity

“The emissivity of the inside face of the construction.

This will use the emissivity of the shade layer if it is interior.

property inside_material

The the inside material layer of the construction.

Useful for checking that an asymmetric construction is correctly assigned.

property is_dynamic

Get a boolean noting whether the construction is dynamic.

This will always be True for this class.

property is_groupable

Get a boolean for whether controls allow the construction to be grouped.

property is_room_groupable

Get a boolean for whether controls allow grouping by room.

property is_switchable_glazing

Get a boolean to note whether the construction is switchable glazing.

The construction is a switchable glazing if the shade material is a glass material.

property is_symmetric

Get a boolean for whether the construction layers are symmetric.

Symmetric means that the materials in reversed order are equal to those in the current order (eg. ‘Glass’, ‘Air Gap’, ‘Glass’). This is particularly helpful for interior constructions, which need to have matching materials in reversed order between adjacent Faces.

property layers

Get a list of material identifiers in the construction (outside to inside).

This will include the shade material layer in its correct position.

property materials

Get the list of materials in the construction (outside to inside).

This will include the shade material layer in its correct position.

property outside_emissivity

“The emissivity of the outside face of the construction.

This will use the emissivity of the shade layer if it is interior.

property outside_material

The the outside material layer of the construction.

Useful for checking that an asymmetric construction is correctly assigned.

property properties

Get properties for extensions.

property r_factor

Bare window construction R-factor [m2-K/W] (with standard air resistances).

Note that this excludes all effects of the shade layer. Formulas for film coefficients come from EN673 / ISO10292.

property r_value

R-value of the bare window construction [m2-K/W] (excluding air films).

Note that this excludes all effects of the shade layer.

property schedule

Get or set a fractional schedule to be applied on top of the control_type.

If None, the control_type will govern all behavior of the construction.

property setpoint

A number for the setpoint that corresponds to the specified control_type.

This can be a value in (W/m2), (C) or (W) depending upon the control type.

property shade_location

Get text to indicate where in the construction the shade_material is located.

This will be either “Interior”, “Between” or “Exterior”. Note that, for a WindowConstruction with more than one gas gap, the “Between” option defaults to using the inner gap as this is the only option that EnergyPlus supports.

property shade_material

Get the material that serves as the shading layer for this construction.

property shgc

The solar heat gain coefficient (SHGC) of the bare window construction.

Note that this excludes all effects of the shade layer.

property solar_transmittance

The solar transmittance of the bare window construction at normal incidence.

Note that this excludes all effects of the shade layer.

property switched_glass_material

Get material replaced by shade glass when construction is switchable glazing.

This can be used to compare the properties of the glass layer replaced by the shade glass. Will be None if the construction is not a switchable glazing.

property thickness

Thickness of the construction [m], excluding the shade layer.

This is effectively the thickness that EnergyPlus assumes.

property u_factor

Bare window construction U-factor [W/m2-K] (with standard air resistances).

Note that this excludes all effects of the shade layer. Formulas for film coefficients come from EN673 / ISO10292.

property u_value

U-value of the bare window construction [W/m2-K] (excluding air films).

Note that this excludes all effects of the shade layer.

property unique_materials

Get a list of only unique material objects in the construction.

This will include the shade material layer. It will include both types of glass layers if the construction is a switchable glazing.

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)

property visible_transmittance

The visible transmittance of the bare window construction at normal incidence.

Note that this excludes all effects of the shade layer.

property window_construction

Get the WindowConstruction serving as the “switched off” version.