honeybee_energy.material.opaque module

Opaque energy materials.

The materials here are the only ones that can be used in opaque constructions.

class honeybee_energy.material.opaque.EnergyMaterial(identifier, thickness, conductivity, density, specific_heat, roughness='MediumRough', thermal_absorptance=0.9, solar_absorptance=0.7, visible_absorptance=None)[source]

Bases: _EnergyMaterialOpaqueBase

Typical opaque energy material.

Parameters
  • identifier – Text string for a unique Material 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.

  • thickness – Number for the thickness of the material layer [m].

  • conductivity – Number for the thermal conductivity of the material [W/m-K].

  • density – Number for the density of the material [kg/m3].

  • specific_heat – Number for the specific heat of the material [J/kg-K].

  • roughness

    Text describing the relative roughness of the material. (Default: MediumRough). Must be one of the following:

    • VeryRough

    • Rough

    • MediumRough

    • MediumSmooth

    • Smooth

    • VerySmooth

  • thermal_absorptance – A number between 0 and 1 for the fraction of incident long wavelength radiation that is absorbed by the material. (Default: 0.9).

  • solar_absorptance – A number between 0 and 1 for the fraction of incident solar radiation absorbed by the material. (Default: 0.7).

  • visible_absorptance – A number between 0 and 1 for the fraction of incident visible wavelength radiation absorbed by the material. Default is None, which will yield the same value as solar_absorptance.

Properties:
  • identifier

  • display_name

  • roughness

  • thickness

  • conductivity

  • density

  • specific_heat

  • thermal_absorptance

  • solar_absorptance

  • visible_absorptance

  • solar_reflectance

  • visible_reflectance

  • resistivity

  • u_value

  • r_value

  • mass_area_density

  • area_heat_capacity

  • user_data

  • properties

ToString()

Overwrite .NET ToString.

duplicate()

Get a copy of this construction.

classmethod from_dict(data)[source]

Create a EnergyMaterial from a dictionary.

Parameters

data – A python dictionary in the following format

{
"type": 'EnergyMaterial',
"identifier": 'Concrete_020_231_2322_832',
"display_name": 'Concrete Slab',
"roughness": 'MediumRough',
"thickness": 0.2,
"conductivity": 2.31,
"density": 2322,
"specific_heat": 832,
"thermal_absorptance": 0.9,
"solar_absorptance": 0.7,
"visible_absorptance": 0.7
}
classmethod from_idf(idf_string)[source]

Create an EnergyMaterial from an EnergyPlus text string.

Parameters

idf_string – A text string fully describing an EnergyPlus material.

lock()
to_dict()[source]

Energy Material dictionary representation.

to_idf()[source]

Get an EnergyPlus string representation of the material.

to_radiance_solar(specularity=0.0)[source]

Honeybee Radiance material from the solar reflectance of this material.

to_radiance_visible(specularity=0.0)[source]

Honeybee Radiance material from the visible reflectance of this material.

unlock()
RADIANCEROUGHTYPES = {'MediumRough': 0.15, 'MediumSmooth': 0.1, 'Rough': 0.2, 'Smooth': 0.05, 'VeryRough': 0.2, 'VerySmooth': 0}
ROUGHTYPES = ('VeryRough', 'Rough', 'MediumRough', 'MediumSmooth', 'Smooth', 'VerySmooth')
property area_heat_capacity

The heat capacity per unit area of the material [J/K-m2].

property conductivity

Get or set the conductivity of the material layer [W/m-K].

property density

Get or set the density of the material layer [kg/m3].

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 material identifier.

property is_window_material

Boolean to note whether the material can be used for window surfaces.

property mass_area_density

The area density of the material [kg/m2].

property properties

Get properties for extensions.

property r_value

Get or set the R-value of the material in [m2-K/W] (excluding air films).

Note that, when setting the R-value, the thickness of the material will remain fixed and only the conductivity will be adjusted.

property resistivity

Get or set the resistivity of the material layer [m-K/W].

property roughness

Get or set the text describing the roughness of the material layer.

property solar_absorptance

Get or set the solar absorptance of the material layer.

property solar_reflectance

Get or set the front solar reflectance of the material layer.

property specific_heat

Get or set the specific heat of the material layer [J/kg-K].

property thermal_absorptance

Get or set the thermal absorptance of the material layer.

property thickness

Get or set the thickness of the material layer [m].

property u_value

Get or set the U-value of the material [W/m2-K] (excluding air films).

Note that, when setting the R-value, the thickness of the material will remain fixed and only the conductivity will be adjusted.

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_absorptance

Get or set the visible absorptance of the material layer.

property visible_reflectance

Get or set the front visible reflectance of the material layer.

class honeybee_energy.material.opaque.EnergyMaterialNoMass(identifier, r_value, roughness='MediumRough', thermal_absorptance=0.9, solar_absorptance=0.7, visible_absorptance=None)[source]

Bases: _EnergyMaterialOpaqueBase

Typical no mass opaque energy material.

Parameters
  • identifier – Text string for a unique Material 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.

  • r_value – Number for the R-value of the material [m2-K/W].

  • roughness – Text describing the relative roughness of the material. Must be one of the following: ‘VeryRough’, ‘Rough’, ‘MediumRough’, ‘MediumSmooth’, ‘Smooth’, ‘VerySmooth’. Default: ‘MediumRough’.

  • thermal_absorptance – A number between 0 and 1 for the fraction of incident long wavelength radiation that is absorbed by the material. Default: 0.9.

  • solar_absorptance – A number between 0 and 1 for the fraction of incident solar radiation absorbed by the material. Default: 0.7.

  • visible_absorptance – A number between 0 and 1 for the fraction of incident visible wavelength radiation absorbed by the material. Default value is None, which will use the same value as the solar_absorptance.

Properties:
  • identifier

  • display_name

  • r_value

  • u_value

  • roughness

  • thermal_absorptance

  • solar_absorptance

  • visible_absorptance

  • solar_reflectance

  • visible_reflectance

  • mass_area_density

  • area_heat_capacity

  • user_data

  • properties

ToString()

Overwrite .NET ToString.

duplicate()

Get a copy of this construction.

classmethod from_dict(data)[source]

Create a EnergyMaterialNoMass from a dictionary.

Parameters

data – A python dictionary in the following format

{
"type": 'EnergyMaterialNoMass',
"identifier": 'Insulation_R20_MediumRough_090_070_070',
"display_name": 'Insulation R2',
"r_value": 2.0,
"roughness": 'MediumRough',
"thermal_absorptance": 0.9,
"solar_absorptance": 0.7,
"visible_absorptance": 0.7
}
classmethod from_idf(idf_string)[source]

Create an EnergyMaterialNoMass from an EnergyPlus text string.

Parameters

idf_string – A text string fully describing an EnergyPlus material.

classmethod from_idf_air_gap(idf_string)[source]

Create an EnergyMaterialNoMass from an EnergyPlus string of an AirGap.

Parameters

idf_string – A text string fully describing an EnergyPlus Material:AirGap.

lock()
to_dict()[source]

Energy Material No Mass dictionary representation.

to_idf()[source]

Get an EnergyPlus string representation of the material.

to_radiance_solar(specularity=0.0)[source]

Honeybee Radiance material from the solar reflectance of this material.

to_radiance_visible(specularity=0.0)[source]

Honeybee Radiance material from the visible reflectance of this material.

unlock()
RADIANCEROUGHTYPES = {'MediumRough': 0.15, 'MediumSmooth': 0.1, 'Rough': 0.2, 'Smooth': 0.05, 'VeryRough': 0.2, 'VerySmooth': 0}
ROUGHTYPES = ('VeryRough', 'Rough', 'MediumRough', 'MediumSmooth', 'Smooth', 'VerySmooth')
property area_heat_capacity

Returns 0 for the heat capacity of a no mass material.

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 material identifier.

property is_window_material

Boolean to note whether the material can be used for window surfaces.

property mass_area_density

Returns 0 for the area density of a no mass material.

property properties

Get properties for extensions.

property r_value

Get or set the r_value of the material layer [m2-K/W] (excluding air films).

property roughness

Get or set the text describing the roughness of the material layer.

property solar_absorptance

Get or set the solar absorptance of the material layer.

property solar_reflectance

Get or set the front solar reflectance of the material layer.

property thermal_absorptance

Get or set the thermal absorptance of the material layer.

property thickness

Returns 0 for the thickness of a no mass material.

property u_value

U-value of the material layer [W/m2-K] (excluding air films).

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_absorptance

Get or set the visible absorptance of the material layer.

property visible_reflectance

Get or set the front visible reflectance of the material layer.

class honeybee_energy.material.opaque.EnergyMaterialVegetation(identifier, thickness=0.1, conductivity=0.35, density=1100, specific_heat=1200, roughness='MediumRough', soil_thermal_absorptance=0.9, soil_solar_absorptance=0.7, soil_visible_absorptance=None, plant_height=0.2, leaf_area_index=1.0, leaf_reflectivity=0.22, leaf_emissivity=0.95, min_stomatal_resist=180)[source]

Bases: _EnergyMaterialOpaqueBase

EnergyPlus Material:RoofVegetation

Parameters
  • identifier – Text string for a unique Material 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.

  • thickness – Number for the thickness of the soil layer [m]. (Default: 0.1).

  • conductivity – Number for the thermal conductivity of the dry soil [W/m-K]. (Default: 0.35).

  • density – Number for the density of the dry soil [kg/m3]. (Default: 1100).

  • specific_heat – Number for the specific heat of the soil [J/kg-K]. (Default: 1200)

  • roughness

    Text describing the relative roughness of the soil material. (Default: MediumRough). Must be one of the following:

    • VeryRough

    • Rough

    • MediumRough

    • MediumSmooth

    • Smooth

    • VerySmooth

  • soil_thermal_absorptance – A number between 0 and 1 for the fraction of incident long wavelength radiation that is absorbed by the soil material. (Default: 0.9).

  • soil_solar_absorptance – A number between 0 and 1 for the fraction of incident solar radiation absorbed by the soil material. (Default: 0.7).

  • soil_visible_absorptance – A number between 0 and 1 for the fraction of incident visible wavelength radiation absorbed by the soil material. Default is None, which will yield the same value as soil_solar_absorptance.

  • plant_height – A number between 0.005 and 1.0 for the height of plants in the vegetation layer [m]. (Default: 0.2 m).

  • leaf_area_index – A number between 0.001 and 5.0 for the projected leaf area per unit area of soil surface (aka. Leaf Area Index or LAI). Note that the fraction of vegetation cover is calculated directly from LAI using an empirical relation. (Default: 1.0).

  • leaf_reflectivity – A number between 0.05 and 0.5 for the fraction of incident solar radiation that is reflected by the leaf surfaces. Solar radiation includes the visible spectrum as well as infrared and ultraviolet wavelengths. Typical values are 0.18 to 0.25. (Default: 0.22).

  • leaf_emissivity – A number between 0.8 and 1.0 for the ratio of thermal radiation emitted from leaf surfaces to that emitted by an ideal black body at the same temperature. (Default: 0.95).

  • min_stomatal_resist – A number between 50 and 300 for the resistance of the plants to moisture transport [s/m]. Plants with low values of stomatal resistance will result in higher evapotranspiration rates than plants with high resistance. (Default: 180).

Properties:
  • identifier

  • display_name

  • roughness

  • thickness

  • conductivity

  • density

  • specific_heat

  • soil_thermal_absorptance

  • soil_solar_absorptance

  • soil_visible_absorptance

  • plant_height

  • leaf_area_index

  • leaf_reflectivity

  • leaf_emissivity

  • min_stomatal_resist

  • sat_vol_moist_cont

  • residual_vol_moist_cont

  • init_vol_moist_cont

  • moist_diff_model

  • soil_layer

  • thermal_absorptance

  • solar_absorptance

  • visible_absorptance

  • solar_reflectance

  • visible_reflectance

  • resistivity

  • u_value

  • r_value

  • mass_area_density

  • area_heat_capacity

  • user_data

  • properties

ToString()

Overwrite .NET ToString.

duplicate()

Get a copy of this construction.

classmethod from_dict(data)[source]

Create an EnergyMaterialVegetation from a dictionary.

Parameters

data – A python dictionary in the following format

{
'type': 'EnergyMaterialVegetation',
'identifier': 'Green_Roof_040_110_7868_987',
'plant_height': 0.9,
'leaf_area_index': 1.0,
'leaf_reflectivity': 0.22,
'leaf_emissivity': 0.95,
'min_stomatal_resist': 180,
'soil_layer_name': 'GreenRoofSoil,
'roughness': 'MediumRough,
'thickness':0.1,
'conductivity': 0.35,
'density': 1100,
'specific_heat': 800,
'soil_thermal_absorptance': 0.9,
'soil_solar_absorptance': 0.7,
'soil_visible_absorptance':0.7,
'sat_vol_moist_cont': 0.3,
'residual_vol_moist_cont': 0.01,
'init_vol_moist_cont': 0.1,
'moist_diff_model': 'Simple'
}
classmethod from_idf(idf_string)[source]

Create an EnergyMaterial from an EnergyPlus text string.

Parameters

idf_string – A text string fully describing an EnergyPlus roof vegetation material.

lock()
to_dict()[source]
to_idf()[source]

Get an EnergyPlus string representation of the material.

to_radiance_solar(specularity=0.0)[source]

Honeybee Radiance material from the solar reflectance of this material.

to_radiance_visible(specularity=0.0)[source]

Honeybee Radiance material from the visible reflectance of this material.

unlock()
DIFFTYPES = ('Simple', 'Advanced')
RADIANCEROUGHTYPES = {'MediumRough': 0.15, 'MediumSmooth': 0.1, 'Rough': 0.2, 'Smooth': 0.05, 'VeryRough': 0.2, 'VerySmooth': 0}
ROUGHTYPES = ('VeryRough', 'Rough', 'MediumRough', 'MediumSmooth', 'Smooth', 'VerySmooth')
property area_heat_capacity

The heat capacity per unit area of the material [J/K-m2].

property conductivity

Get or set the conductivity of the soil material layer [W/m-K].

property density

Get or set the density of the soil material layer [kg/m3].

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 material identifier.

property init_vol_moist_cont

Get or set a number for the for the initial moisture content of the soil.

The number must be between 0.05 and 0.5. (Default: .01).

property is_window_material

Boolean to note whether the material can be used for window surfaces.

property leaf_area_index

Get or set a number for the leaf area per unit area of soil surface.

property leaf_emissivity

Get or set a number for the emissivity of the leaf surfaces.

property leaf_reflectivity

Get or set a number for the solar reflectivity of the leaf surfaces.

property mass_area_density

The area density of the material [kg/m2].

property min_stomatal_resist

Get or set a number for the resistance of the plants to moisture [s/m].

property moist_diff_model

Get or set text for the moisture diffusion model to use.

Note that the Advanced model should be run with simulation parameters of 20 timesteps per hour. (Default: Simple). Choose from the following:

  • Simple

  • Advanced

property plant_height

Get or set a number for the height of plants in the vegetation layer [m].

property properties

Get properties for extensions.

property r_value

Get or set the R-value of the material in [m2-K/W] (excluding air films).

Note that, when setting the R-value, the thickness of the material will remain fixed and only the conductivity will be adjusted.

property residual_vol_moist_cont

Get or set a number for the for the residual moisture content of the soil.

The number must be between 0.01 and 0.1. (Default: .01).

property resistivity

Get or set the resistivity of the material layer [m-K/W].

property roughness

Get or set the text describing the roughness of the soil material layer.

property sat_vol_moist_cont

Get or set a number for the for the saturation moisture content of the soil.

The number must be between 0.1 and 0.5. (Default: 0.3).

property soil_layer

Get an EnergyMaterial representing only the soil.

property soil_solar_absorptance

Get or set the solar absorptance of the soil material layer.

property soil_thermal_absorptance

Get or set the thermal absorptance of the soil material layer.

property soil_visible_absorptance

Get or set the visible absorptance of the soil material layer.

property solar_absorptance

Get the solar absorptance including soil and vegetation.

property solar_reflectance

Get the solar reflectance including soil and vegetation.

property specific_heat

Get or set the specific heat of the soil material layer [J/kg-K].

property thermal_absorptance

Get the thermal absorptance including soil and vegetation.

property thickness

Get or set the thickness of the soil material layer [m].

property u_value

Get or set the U-value of the material [W/m2-K] (excluding air films).

Note that, when setting the R-value, the thickness of the material will remain fixed and only the conductivity will be adjusted.

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_absorptance

Get the visible absorptance including soil and vegetation.

property visible_reflectance

Get the visible reflectance including soil and vegetation.