Source code for honeybee_energy_standards.extension.material.glazing

"""Classmethods for honeybee-energy glazing materials."""


[docs]def from_standards_dict(cls, data): """Create EnergyWindowMaterialGlazing from OpenStudio standards gem dictionary. Args: data: An OpenStudio standards dictionary of a glazing material in the format below. .. code-block:: python { "name": 'Blue 6mm', "material_type": "StandardGlazing", "thickness": 0.2362204, "solar_transmittance": 0.45, "solar_reflectance": 0.36, "visible_transmittance": 0.714, "visible_reflectance": 0.207, "infrared_transmittance": 0, "emissivity": 0.84, "emissivity_back": 0.0466, "conductivity": 6.24012 } """ assert data['material_type'] == 'StandardGlazing', \ 'Expected StandardGlazing. Got {}.'.format(data['material_type']) assert data['optical_data_type'] == 'SpectralAverage', \ 'Expected SpectralAverage. Got {}.'.format(data['optical_data_type']) thickness = 0.0254 * data['thickness'] # convert from inches conductivity = data['conductivity'] / 6.9381117 # convert from Btu*in/hr*ft2*F solar_diff = False if data['solar_diffusing'] == 0 else True new_mat = cls(data['name'], thickness, data['solar_transmittance_at_normal_incidence'], data['front_side_solar_reflectance_at_normal_incidence'], data['visible_transmittance_at_normal_incidence'], data['front_side_visible_reflectance_at_normal_incidence'], data['infrared_transmittance_at_normal_incidence'], data['front_side_infrared_hemispherical_emissivity'], data['back_side_infrared_hemispherical_emissivity'], conductivity) new_mat.solar_reflectance_back = \ data['back_side_solar_reflectance_at_normal_incidence'] new_mat.visible_reflectance_back = \ data['back_side_visible_reflectance_at_normal_incidence'] new_mat.dirt_correction = \ data['dirt_correction_factor_for_solar_and_visible_transmittance'] new_mat.solar_diffusing = solar_diff return new_mat
[docs]def simple_from_standards_dict(cls, data): """Create EnergyWindowMaterialSimpleGlazSys from OpenStudio standards dictionary. Args: data: An OpenStudio standards dictionary of a simple glazing material in the format below. .. code-block:: python { "name": 'Fixed Window', "material_type": "SimpleGlazing", "u_factor": 0.45, "solar_heat_gain_coefficient": 0.45, "visible_transmittance": 0.35 } """ assert data['material_type'] == 'SimpleGlazing', \ 'Expected SimpleGlazing. Got {}.'.format(data['material_type']) u_factor = data['u_factor'] * 5.678 # convert from Btu/hr*ft2*F return cls(data['name'], u_factor, data['solar_heat_gain_coefficient'], data['visible_transmittance'])