From 0de7aee82520059a88026ebdd0cc138ebd154f44 Mon Sep 17 00:00:00 2001 From: PH Tools Date: Fri, 14 Nov 2025 12:25:33 -0500 Subject: [PATCH 1/2] Refactor from_HBJSON modules to properly handle None energy properties - Created new _type_utils.py module with type-safe wrapper functions for accessing energy properties - These wrappers have proper type hints that force linter errors when None handling is missing - Updated cleanup.py, create_schedules.py, create_rooms.py, create_variant.py, create_building.py, and create_assemblies.py to use the new wrappers - Modified merge functions to gracefully handle missing energy properties by creating default objects with warnings - All functions now properly handle cases where room.properties.energy attributes are None - No function behavior changes - only added proper type-hinting and error handling - Added test script for Model 1.hbjson which has None energy properties --- PHX/from_HBJSON/_type_utils.py | 283 +++++++++++++++++++++++++++ PHX/from_HBJSON/cleanup.py | 217 +++++++++++++------- PHX/from_HBJSON/create_assemblies.py | 16 +- PHX/from_HBJSON/create_building.py | 17 +- PHX/from_HBJSON/create_rooms.py | 12 +- PHX/from_HBJSON/create_schedules.py | 112 ++++++----- PHX/from_HBJSON/create_variant.py | 78 +++++--- _test_model_1.py | 60 ++++++ 8 files changed, 637 insertions(+), 158 deletions(-) create mode 100644 PHX/from_HBJSON/_type_utils.py create mode 100644 _test_model_1.py diff --git a/PHX/from_HBJSON/_type_utils.py b/PHX/from_HBJSON/_type_utils.py new file mode 100644 index 0000000..34289f7 --- /dev/null +++ b/PHX/from_HBJSON/_type_utils.py @@ -0,0 +1,283 @@ +# -*- coding: utf-8 -*- +# -*- Python Version: 3.10 -*- + +"""Type-safe utility functions for accessing Honeybee energy properties. + +This module provides wrapper functions with proper type hints to ensure that +None values are handled correctly. These functions are intentionally typed +to return non-Optional types, which forces calling code to handle None cases +explicitly, making type checkers report errors where None handling is missing. +""" + +from typing import TYPE_CHECKING, Union + +if TYPE_CHECKING: + from honeybee import room, face, aperture + from honeybee_ph import space as hb_space + from honeybee_energy.properties.room import RoomEnergyProperties + from honeybee_energy.properties.face import FaceEnergyProperties + from honeybee_energy.properties.aperture import ApertureEnergyProperties + from honeybee_energy.load.infiltration import Infiltration + from honeybee_energy.load.ventilation import Ventilation + from honeybee_energy.load.people import People + from honeybee_energy.load.equipment import ElectricEquipment + from honeybee_energy.schedule.ruleset import ScheduleRuleset + from honeybee_energy.schedule.fixedinterval import ScheduleFixedInterval + + # Type alias for schedule types + HBESchedule = Union[ScheduleRuleset, ScheduleFixedInterval] + + +class MissingEnergyPropertiesError(Exception): + """Raised when required energy properties are missing from a Honeybee object.""" + + def __init__(self, obj_name: str, property_name: str): + self.message = ( + f"Error: Honeybee object '{obj_name}' is missing required energy property: " + f"'{property_name}'. Cannot proceed with PHX conversion." + ) + super().__init__(self.message) + + +def get_room_energy_properties(hb_room: "room.Room") -> "RoomEnergyProperties": + """Get energy properties from a Honeybee Room. + + This function returns the energy properties with a non-Optional type hint, + which forces calling code to handle the case where energy properties might + not exist. This makes type checkers report errors at call sites that don't + handle None properly. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (RoomEnergyProperties): The room's energy properties. + + Raises: + ------- + * MissingEnergyPropertiesError: If the room has no energy properties. + """ + energy_props = getattr(hb_room.properties, "energy", None) + if energy_props is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "energy") + return energy_props + + +def get_face_energy_properties(hb_face: "face.Face") -> "FaceEnergyProperties": + """Get energy properties from a Honeybee Face. + + Arguments: + ---------- + * hb_face (face.Face): The Honeybee Face. + + Returns: + -------- + * (FaceEnergyProperties): The face's energy properties. + + Raises: + ------- + * MissingEnergyPropertiesError: If the face has no energy properties. + """ + energy_props = getattr(hb_face.properties, "energy", None) + if energy_props is None: + raise MissingEnergyPropertiesError(hb_face.display_name, "energy") + return energy_props + + +def get_aperture_energy_properties(hb_aperture: "aperture.Aperture") -> "ApertureEnergyProperties": + """Get energy properties from a Honeybee Aperture. + + Arguments: + ---------- + * hb_aperture (aperture.Aperture): The Honeybee Aperture. + + Returns: + -------- + * (ApertureEnergyProperties): The aperture's energy properties. + + Raises: + ------- + * MissingEnergyPropertiesError: If the aperture has no energy properties. + """ + energy_props = getattr(hb_aperture.properties, "energy", None) + if energy_props is None: + raise MissingEnergyPropertiesError(hb_aperture.display_name, "energy") + return energy_props + + +def get_space_energy_properties(hb_space: "hb_space.Space") -> "RoomEnergyProperties": + """Get energy properties from a Honeybee-PH Space's host room. + + Arguments: + ---------- + * hb_space (space.Space): The Honeybee-PH Space. + + Returns: + -------- + * (RoomEnergyProperties): The host room's energy properties. + + Raises: + ------- + * MissingEnergyPropertiesError: If the space has no host or the host has no energy properties. + """ + if not hb_space.host: + raise MissingEnergyPropertiesError(hb_space.display_name, "host") + + energy_props = getattr(hb_space.host.properties, "energy", None) + if energy_props is None: + raise MissingEnergyPropertiesError( + f"{hb_space.display_name}.host ({hb_space.host.display_name})", + "energy" + ) + return energy_props + + +def get_room_infiltration(hb_room: "room.Room") -> "Infiltration": + """Get infiltration from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (Infiltration): The room's infiltration object. + + Raises: + ------- + * MissingEnergyPropertiesError: If infiltration is not defined. + """ + energy_props = get_room_energy_properties(hb_room) + if energy_props.infiltration is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "infiltration") + return energy_props.infiltration + + +def get_room_ventilation(hb_room: "room.Room") -> "Ventilation": + """Get ventilation from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (Ventilation): The room's ventilation object. + + Raises: + ------- + * MissingEnergyPropertiesError: If ventilation is not defined. + """ + energy_props = get_room_energy_properties(hb_room) + if energy_props.ventilation is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "ventilation") + return energy_props.ventilation + + +def get_room_people(hb_room: "room.Room") -> "People": + """Get people from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (People): The room's people object. + + Raises: + ------- + * MissingEnergyPropertiesError: If people is not defined. + """ + energy_props = get_room_energy_properties(hb_room) + if energy_props.people is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "people") + return energy_props.people + + +def get_room_electric_equipment(hb_room: "room.Room") -> "ElectricEquipment": + """Get electric equipment from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (ElectricEquipment): The room's electric equipment object. + + Raises: + ------- + * MissingEnergyPropertiesError: If electric equipment is not defined. + """ + energy_props = get_room_energy_properties(hb_room) + if energy_props.electric_equipment is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "electric_equipment") + return energy_props.electric_equipment + + +def get_ventilation_schedule(hb_room: "room.Room") -> "HBESchedule": + """Get ventilation schedule from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (HBESchedule): The room's ventilation schedule. + + Raises: + ------- + * MissingEnergyPropertiesError: If ventilation or schedule is not defined. + """ + ventilation = get_room_ventilation(hb_room) + if ventilation.schedule is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "ventilation.schedule") + return ventilation.schedule + + +def get_people_schedule(hb_room: "room.Room") -> "HBESchedule": + """Get people occupancy schedule from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (HBESchedule): The room's people occupancy schedule. + + Raises: + ------- + * MissingEnergyPropertiesError: If people or occupancy schedule is not defined. + """ + people = get_room_people(hb_room) + if people.occupancy_schedule is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "people.occupancy_schedule") + return people.occupancy_schedule + + +def get_lighting_schedule(hb_room: "room.Room") -> "HBESchedule": + """Get lighting schedule from a Honeybee Room's energy properties. + + Arguments: + ---------- + * hb_room (room.Room): The Honeybee Room. + + Returns: + -------- + * (HBESchedule): The room's lighting schedule. + + Raises: + ------- + * MissingEnergyPropertiesError: If lighting or schedule is not defined. + """ + energy_props = get_room_energy_properties(hb_room) + if energy_props.lighting is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "lighting") + if energy_props.lighting.schedule is None: + raise MissingEnergyPropertiesError(hb_room.display_name, "lighting.schedule") + return energy_props.lighting.schedule diff --git a/PHX/from_HBJSON/cleanup.py b/PHX/from_HBJSON/cleanup.py index 81bd8a1..77cf79e 100644 --- a/PHX/from_HBJSON/cleanup.py +++ b/PHX/from_HBJSON/cleanup.py @@ -40,6 +40,13 @@ try: from PHX.from_HBJSON.cleanup_merge_faces import merge_hb_faces + from PHX.from_HBJSON._type_utils import ( + get_room_energy_properties, + get_room_people, + get_room_infiltration, + get_room_electric_equipment, + MissingEnergyPropertiesError, + ) from PHX.model import project except ImportError as e: raise ImportError("\nFailed to import PHX:\n\t{}".format(e)) @@ -190,11 +197,15 @@ def all_unique_ph_dwelling_objects(_hb_rooms: List[room.Room]) -> List[PhDwellin -------- * (List[PhDwellings]) """ - dwellings = { - room.properties.energy.people.properties.ph.dwellings # type: ignore - for room in _hb_rooms - if room.properties.energy.people # type: ignore - } + dwellings = set() + for room in _hb_rooms: + try: + hb_people = get_room_people(room) + hbph_people_prop_ph: PeoplePhProperties = getattr(hb_people.properties, "ph") + dwellings.add(hbph_people_prop_ph.dwellings) + except MissingEnergyPropertiesError: + # Room has no people defined, skip it + continue return list(dwellings) @@ -223,13 +234,15 @@ def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: total_ph_bedrooms = 0 total_ph_people = 0.0 total_hb_people = 0.0 + reference_people = None + for hb_room in _hb_rooms: - # -- Type Aliases - hb_room_prop_energy: RoomEnergyProperties = getattr(hb_room.properties, "energy") - hb_ppl_obj = hb_room_prop_energy.people - - # -- Sometimes there is no 'People' - if hb_ppl_obj is None: + try: + hb_ppl_obj = get_room_people(hb_room) + if reference_people is None: + reference_people = hb_ppl_obj + except MissingEnergyPropertiesError: + # Room has no people defined, skip it continue hbph_people_prop_ph: PeoplePhProperties = getattr(hb_ppl_obj.properties, "ph") @@ -240,12 +253,23 @@ def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: # ------------------------------------------------------------------------- # -- Build up the new People object's attributes total_floor_area = sum(rm.floor_area for rm in _hb_rooms) - new_hb_prop_energy: RoomEnergyProperties = getattr(_hb_rooms[0].properties, "energy") - if not new_hb_prop_energy.people: - raise ValueError(f"Error: No 'people' found on room: {_hb_rooms[0].display_name}?") - new_hb_ppl: people.People = new_hb_prop_energy.people.__copy__() - new_hb_ppl_prop_ph: PeoplePhProperties = getattr(new_hb_ppl.properties, "ph") - new_hb_ppl.people_per_area = total_hb_people / total_floor_area + + if reference_people is None: + # No people found on any rooms - create a default + logger.warning("No people found on any rooms. Creating default people object with 0.0 people_per_area.") + from honeybee_energy.load.people import People as HBPeople + from honeybee_energy.schedule.ruleset import ScheduleRuleset + new_hb_ppl = HBPeople( + identifier="default_people", + people_per_area=0.0, + occupancy_schedule=ScheduleRuleset.from_constant_value("default_occ_schedule", 1.0), + ) + new_hb_ppl_prop_ph: PeoplePhProperties = getattr(new_hb_ppl.properties, "ph") + else: + new_hb_ppl: people.People = reference_people.__copy__() + new_hb_ppl_prop_ph: PeoplePhProperties = getattr(new_hb_ppl.properties, "ph") + new_hb_ppl.people_per_area = total_hb_people / total_floor_area if total_floor_area > 0 else 0.0 + new_hb_ppl_prop_ph.number_bedrooms = total_ph_bedrooms new_hb_ppl_prop_ph.number_people = total_ph_people new_hb_ppl_prop_ph.dwellings = merged_ph_dwellings @@ -270,22 +294,39 @@ def merge_infiltrations(_hb_rooms: List[room.Room]) -> infiltration.Infiltration # -- Calculate the total airflow per room, total exposed area per room total_m3_s = 0.0 total_exposed_area = 0.0 + reference_infiltration = None + for room in _hb_rooms: - room_infil_exposed_area = _get_room_exposed_face_area(room) - room_prop_energy: RoomEnergyProperties = getattr(room.properties, "energy") - room_infil_m3_s = room_infil_exposed_area * room_prop_energy.infiltration.flow_per_exterior_area - - total_exposed_area += room_infil_exposed_area - total_m3_s += room_infil_m3_s + try: + room_infiltration = get_room_infiltration(room) + if reference_infiltration is None: + reference_infiltration = room_infiltration + room_infil_exposed_area = _get_room_exposed_face_area(room) + room_infil_m3_s = room_infil_exposed_area * room_infiltration.flow_per_exterior_area + + total_exposed_area += room_infil_exposed_area + total_m3_s += room_infil_m3_s + except MissingEnergyPropertiesError: + # Room has no infiltration defined, skip it + continue - # -- Set the new Infiltration Object's attr to the weighted average - reference_room = _hb_rooms[0] - reference_room_prop_energy: RoomEnergyProperties = getattr(reference_room.properties, "energy") - new_infil: Infiltration = reference_room_prop_energy.infiltration.duplicate() # type: ignore - try: - new_infil.flow_per_exterior_area = total_m3_s / total_exposed_area - except ZeroDivisionError: - new_infil.flow_per_exterior_area = 0.0 + # -- If no rooms had infiltration, create a default one + if reference_infiltration is None: + logger.warning(f"No infiltration found on any rooms. Creating default infiltration with 0.0 flow_per_exterior_area.") + from honeybee_energy.load.infiltration import Infiltration as HBInfiltration + from honeybee_energy.schedule.ruleset import ScheduleRuleset + new_infil = HBInfiltration( + identifier="default_infiltration", + flow_per_exterior_area=0.0, + schedule=ScheduleRuleset.from_constant_value("default_infil_schedule", 1.0), + ) + else: + # -- Set the new Infiltration Object's attr to the weighted average + new_infil: Infiltration = reference_infiltration.duplicate() # type: ignore + try: + new_infil.flow_per_exterior_area = total_m3_s / total_exposed_area + except ZeroDivisionError: + new_infil.flow_per_exterior_area = 0.0 return new_infil @@ -306,9 +347,13 @@ def merge_shw_programs(_hb_rooms: List[room.Room]) -> shw.SHWSystem: # -- Find all the unique SHW Programs in the Model shw_programs: Set[shw.SHWSystem] = set() for room in _hb_rooms: - room_prop_energy: RoomEnergyProperties = getattr(room.properties, "energy") - if room_prop_energy.shw: - shw_programs.add(room_prop_energy.shw) + try: + room_energy_props = get_room_energy_properties(room) + if room_energy_props.shw: + shw_programs.add(room_energy_props.shw) + except MissingEnergyPropertiesError: + # Room has no energy properties, skip it + continue if len(shw_programs) > 1: print(f"Warning: More than one SHW Program Type found in the model.") @@ -354,34 +399,49 @@ def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: # -- Increase the quantity for each duplicate piece of equipment found. ph_equipment = {} for room in _hb_rooms: - room_prop_energy: RoomEnergyProperties = getattr(room.properties, "energy") - room_ee_prop = room_prop_energy.electric_equipment.properties - room_ee_prop_ph: ElectricEquipmentPhProperties = getattr(room_ee_prop, "ph") + try: + room_electric_equipment = get_room_electric_equipment(room) + room_ee_prop = room_electric_equipment.properties + room_ee_prop_ph: ElectricEquipmentPhProperties = getattr(room_ee_prop, "ph") - # TODO: Deprecate... - # -- Get the Equipment from the HB-Elec-Equip (old method < Jan 2025) - for equip_key, equip in room_ee_prop_ph.equipment_collection.items(): - try: - ph_equipment[equip_key].quantity += 1 - except KeyError: - ph_equipment[equip_key] = equip + # TODO: Deprecate... + # -- Get the Equipment from the HB-Elec-Equip (old method < Jan 2025) + for equip_key, equip in room_ee_prop_ph.equipment_collection.items(): + try: + ph_equipment[equip_key].quantity += 1 + except KeyError: + ph_equipment[equip_key] = equip + except MissingEnergyPropertiesError: + # Room has no electric equipment, skip it + continue # -- Calculate the total Watts of all of the HBE-Elec-Equipment in the rooms total_floor_area = sum(rm.floor_area for rm in _hb_rooms) or 0.0 - total_watts = ( - sum( - (rm.floor_area * rm.properties.energy.electric_equipment.watts_per_area) for rm in _hb_rooms # type: ignore - ) - or 0.0 - ) + total_watts = 0.0 + reference_electric_equipment = None + + for rm in _hb_rooms: + try: + ee = get_room_electric_equipment(rm) + if reference_electric_equipment is None: + reference_electric_equipment = ee + total_watts += rm.floor_area * ee.watts_per_area + except MissingEnergyPropertiesError: + # Room has no electric equipment, skip it + continue # -- Build a new HBE-Elec-Equip from the reference room, add all the PH-Equipment to it. - reference_room = _hb_rooms[0] - reference_room_prop_energy: RoomEnergyProperties = getattr(reference_room.properties, "energy") - ref_room_ee: equipment.ElectricEquipment = reference_room_prop_energy.electric_equipment - - new_hb_equip: equipment.ElectricEquipment = ref_room_ee.duplicate() # type: ignore - new_hb_equip.watts_per_area = total_watts / total_floor_area + if reference_electric_equipment is None: + # No electric equipment found on any rooms - create a default + logger.warning("No electric equipment found on any rooms. Creating default electric equipment with 0.0 watts_per_area.") + new_hb_equip: equipment.ElectricEquipment = equipment.ElectricEquipment( + identifier="default_electric_equipment", + watts_per_area=0.0, + schedule=ScheduleRuleset.from_constant_value("default_ee_schedule", 1.0), + ) + else: + new_hb_equip: equipment.ElectricEquipment = reference_electric_equipment.duplicate() # type: ignore + new_hb_equip.watts_per_area = total_watts / total_floor_area if total_floor_area > 0 else 0.0 new_hb_equip_prop_ph: ElectricEquipmentPhProperties = getattr(new_hb_equip.properties, "ph") new_hb_equip_prop_ph.equipment_collection.remove_all_equipment() @@ -407,8 +467,12 @@ def merge_process_loads(_hb_rooms: list[room.Room]) -> list[process.Process]: # -- Increase the quantity for each duplicate piece of equipment found ph_equipment: dict[str, process.Process] = {} for room in _hb_rooms: - room_prop_energy: RoomEnergyProperties = getattr(room.properties, "energy") - process_loads: tuple[process.Process] = room_prop_energy.process_loads + try: + room_energy_props = get_room_energy_properties(room) + process_loads: tuple[process.Process] = room_energy_props.process_loads + except MissingEnergyPropertiesError: + # Room has no energy properties, skip it + continue # -- Get the Equipment from the HB-Process Load (new method > Jan 2025) for process_load in process_loads: @@ -505,7 +569,12 @@ def merge_rooms( face_groups = face_tools.group_hb_faces(exposed_faces, _tolerance, _angle_tolerance_degrees) merged_faces = [] for face_group in face_groups: - const_name = face_group[0].properties.energy.construction.display_name + try: + from PHX.from_HBJSON._type_utils import get_face_energy_properties + face_energy_props = get_face_energy_properties(face_group[0]) + const_name = face_energy_props.construction.display_name + except MissingEnergyPropertiesError: + const_name = "Unknown" logger.debug(f"Merging {len(face_group)} Faces with Construction: {const_name}") merged_faces.extend(merge_hb_faces(face_group, _tolerance, _angle_tolerance_degrees)) exposed_faces = merged_faces @@ -528,10 +597,14 @@ def merge_rooms( dup_ph_prop._ph_foundations = merge_foundations(_hb_rooms) setattr(new_room._properties, "_ph", dup_ph_prop) - ref_rm_prop_energy: RoomEnergyProperties = getattr(reference_room.properties, "energy") - new_rm_prop_energy: RoomEnergyProperties = getattr(new_room.properties, "energy") - dup_energy_prop = ref_rm_prop_energy.duplicate(new_rm_prop_energy) - setattr(new_room._properties, "_energy", dup_energy_prop) + try: + ref_rm_energy_props = get_room_energy_properties(reference_room) + new_rm_energy_props = get_room_energy_properties(new_room) + dup_energy_prop = ref_rm_energy_props.duplicate(new_rm_energy_props) + setattr(new_room._properties, "_energy", dup_energy_prop) + except MissingEnergyPropertiesError: + # Reference room has no energy properties - this is OK, just skip setting energy properties + pass # ------------------------------------------------------------------------- # -- Then, collect all the spaces from the input rooms and add to the NEW room @@ -558,13 +631,17 @@ def merge_rooms( # ------------------------------------------------------------------------- # -- Merge the hb_rooms' load values - new_rm_prop_energy: RoomEnergyProperties = getattr(new_room.properties, "energy") - new_rm_prop_energy.infiltration = merge_infiltrations(_hb_rooms) - new_rm_prop_energy.people = merge_occupancies(_hb_rooms) - new_rm_prop_energy.electric_equipment = merge_elec_equip(_hb_rooms) - new_rm_prop_energy.shw = merge_shw_programs(_hb_rooms) - new_rm_prop_energy.remove_process_loads() - new_rm_prop_energy._process_loads = merge_process_loads(_hb_rooms) + try: + new_rm_energy_props = get_room_energy_properties(new_room) + new_rm_energy_props.infiltration = merge_infiltrations(_hb_rooms) + new_rm_energy_props.people = merge_occupancies(_hb_rooms) + new_rm_energy_props.electric_equipment = merge_elec_equip(_hb_rooms) + new_rm_energy_props.shw = merge_shw_programs(_hb_rooms) + new_rm_energy_props.remove_process_loads() + new_rm_energy_props._process_loads = merge_process_loads(_hb_rooms) + except MissingEnergyPropertiesError: + # New room has no energy properties - this is OK, just skip merging loads + pass # ------------------------------------------------------------------------- # -- TODO: Can I merge together the surfaces as well? diff --git a/PHX/from_HBJSON/create_assemblies.py b/PHX/from_HBJSON/create_assemblies.py index 26d0ad2..bf51eb8 100644 --- a/PHX/from_HBJSON/create_assemblies.py +++ b/PHX/from_HBJSON/create_assemblies.py @@ -20,6 +20,7 @@ from honeybee_energy_ph.properties.materials.opaque import EnergyMaterialPhProperties, PhDivisionGrid from honeybee_ph_utils import color, iso_10077_1 +from PHX.from_HBJSON._type_utils import get_face_energy_properties, get_aperture_energy_properties, MissingEnergyPropertiesError from PHX.model import constructions, project, shades logger = logging.getLogger(__name__) @@ -248,8 +249,12 @@ def build_opaque_assemblies_from_HB_model(_project: project.PhxProject, _hb_mode for room in _hb_model.rooms: for face in room.faces: - face_prop_energy: FaceEnergyProperties = getattr(face.properties, "energy") - hb_const: OpaqueConstruction | AirBoundaryConstruction = face_prop_energy.construction + try: + face_energy_props = get_face_energy_properties(face) + hb_const: OpaqueConstruction | AirBoundaryConstruction = face_energy_props.construction + except MissingEnergyPropertiesError: + # Face has no energy properties, skip it + continue # -- If is an AirBoundary, use the default material materials: list[EnergyMaterial] = getattr(hb_const, "materials", DEFAULT_MATERIALS) @@ -450,7 +455,12 @@ def build_transparent_assembly_types_from_HB_Model(_project: project.PhxProject, for aperture in _hb_apertures: # --------------------------------------------------------------------- - ap_ep_const = aperture.properties.energy.construction # type: ignore + try: + ap_energy_props = get_aperture_energy_properties(aperture) + ap_ep_const = ap_energy_props.construction + except MissingEnergyPropertiesError: + # Aperture has no energy properties, skip it + continue hb_win_const, hb_shade_const = _get_hbph_window_constructions(ap_ep_const) # --------------------------------------------------------------------- diff --git a/PHX/from_HBJSON/create_building.py b/PHX/from_HBJSON/create_building.py index 7b16643..005ca14 100644 --- a/PHX/from_HBJSON/create_building.py +++ b/PHX/from_HBJSON/create_building.py @@ -19,6 +19,7 @@ from honeybee_ph.properties.room import RoomPhProperties from PHX.from_HBJSON import create_geometry +from PHX.from_HBJSON._type_utils import get_room_people, MissingEnergyPropertiesError from PHX.from_HBJSON.create_rooms import create_room_from_space from PHX.model import building, components, constructions from PHX.model.enums.building import ( @@ -281,12 +282,16 @@ def create_components_from_hb_room( def set_zone_occupancy(_hb_room: room.Room, zone: building.PhxZone) -> building.PhxZone: """Set the Zone's Residential Occupancy values.""" # -- Type Aliases - hb_room_energy_prop: RoomEnergyProperties = getattr(_hb_room.properties, "energy") - hbph_people_prop: PeoplePhProperties = getattr(hb_room_energy_prop.people.properties, "ph") - - zone.res_occupant_quantity = hbph_people_prop.number_people - zone.res_number_bedrooms = hbph_people_prop.number_bedrooms - zone.res_number_dwellings = hbph_people_prop.number_dwelling_units + try: + hb_people = get_room_people(_hb_room) + hbph_people_prop: PeoplePhProperties = getattr(hb_people.properties, "ph") + + zone.res_occupant_quantity = hbph_people_prop.number_people + zone.res_number_bedrooms = hbph_people_prop.number_bedrooms + zone.res_number_dwellings = hbph_people_prop.number_dwelling_units + except MissingEnergyPropertiesError: + # No people defined, skip setting occupancy values + pass return zone diff --git a/PHX/from_HBJSON/create_rooms.py b/PHX/from_HBJSON/create_rooms.py index 4ee0648..d068175 100644 --- a/PHX/from_HBJSON/create_rooms.py +++ b/PHX/from_HBJSON/create_rooms.py @@ -14,6 +14,7 @@ from honeybee_ph_utils.ventilation import hb_room_vent_flowrates from honeybee_phhvac.properties.room import get_ph_hvac_from_space +from PHX.from_HBJSON._type_utils import get_space_energy_properties, get_ventilation_schedule from PHX.model import spaces from PHX.model.utilization_patterns import ( UtilizationPatternCollection_Lighting, @@ -68,10 +69,13 @@ def calc_space_ventilation_flow_rate(_space: space.Space) -> float: def _get_energy_properties_from_space(_space: space.Space) -> RoomEnergyProperties: - """Return the "energy" Properties of a Honeybee-PH Space's host Room.""" - if not _space.host: - raise ValueError(f"The Honeybee-PH Space {_space.display_name} is missing a host-HB-Room.") - return getattr(_space.host.properties, "energy") + """Return the "energy" Properties of a Honeybee-PH Space's host Room. + + Raises: + ------- + * MissingEnergyPropertiesError: If the space has no host or the host has no energy properties. + """ + return get_space_energy_properties(_space) def create_room_from_space( diff --git a/PHX/from_HBJSON/create_schedules.py b/PHX/from_HBJSON/create_schedules.py index ec6fa21..35310c0 100644 --- a/PHX/from_HBJSON/create_schedules.py +++ b/PHX/from_HBJSON/create_schedules.py @@ -12,6 +12,15 @@ from honeybee_energy_ph.properties import ruleset as phx_ruleset from honeybee_ph_utils.schedules import calc_four_part_vent_sched_values_from_hb_room +from PHX.from_HBJSON._type_utils import ( + get_room_energy_properties, + get_room_ventilation, + get_room_people, + get_ventilation_schedule, + get_people_schedule, + get_lighting_schedule, + MissingEnergyPropertiesError, +) from PHX.model import project from PHX.model.schedules import lighting, occupancy, ventilation @@ -31,18 +40,15 @@ def _room_has_ph_style_ventilation(_hb_room: room.Room) -> bool: # ------------------------------------------------------------------------- # -- Honeybee-Energy data might not be there... - hbe_prop: Optional[RoomEnergyProperties] = _hb_room.properties.energy # type: ignore - if not hbe_prop: - # No Honeybee-Energy Room Properties - return False - - if hbe_prop.ventilation.schedule is None: - # Not Honeybee-Energy Ventilation Schedule + try: + hbe_vent_sched = get_ventilation_schedule(_hb_room) + except MissingEnergyPropertiesError: + # No Honeybee-Energy Room Properties or Ventilation Schedule return False # ------------------------------------------------------------------------- # -- Check Honeybee-Energy-PH detailed data - hbe_vent_sched_prop = hbe_prop.ventilation.schedule.properties + hbe_vent_sched_prop = hbe_vent_sched.properties hbph_sched_prop: phx_ruleset.ScheduleRulesetPhProperties = hbe_vent_sched_prop.ph # type: ignore if not hbph_sched_prop.daily_operating_periods: # No Honeybee-Energy-PH Schedule detailed Operating Periods @@ -71,7 +77,7 @@ def _create_vent_schedule_from_hb_style( """ # -- Type Aliases - hbe_room_prop: RoomEnergyProperties = _hb_room.properties.energy # type: ignore + hbe_vent_sched = get_ventilation_schedule(_hb_room) new_phx_vent_schedule = ventilation.PhxScheduleVentilation() @@ -87,11 +93,11 @@ def _create_vent_schedule_from_hb_style( op_periods.minimum.period_operation_speed = wufi_sched.minimum.period_speed # -- Keep all the IDs in alignment.... - new_phx_vent_schedule.identifier = hbe_room_prop.ventilation.schedule.identifier + new_phx_vent_schedule.identifier = hbe_vent_sched.identifier new_phx_vent_schedule.id_num = new_phx_vent_schedule._count - ph_sched_props: phx_ruleset.ScheduleRulesetPhProperties = hbe_room_prop.ventilation.schedule.properties.ph # type: ignore + ph_sched_props: phx_ruleset.ScheduleRulesetPhProperties = hbe_vent_sched.properties.ph # type: ignore ph_sched_props.id_num = new_phx_vent_schedule.id_num # <--- Important! - new_phx_vent_schedule.name = hbe_room_prop.ventilation.schedule.display_name + new_phx_vent_schedule.name = hbe_vent_sched.display_name return new_phx_vent_schedule @@ -112,14 +118,13 @@ def _create_vent_schedule_from_ph_style( """ # -- Type Aliases - hbe_room_prop: RoomEnergyProperties = _hb_room.properties.energy # type: ignore - hbe_vent_sched = hbe_room_prop.ventilation.schedule + hbe_vent_sched = get_ventilation_schedule(_hb_room) hbe_vent_sched_prop = hbe_vent_sched.properties hbe_vent_sched_prop_ph: phx_ruleset.ScheduleRulesetPhProperties = hbe_vent_sched_prop.ph # type: ignore # -- Create the new Schedule object new_phx_vent_schedule = ventilation.PhxScheduleVentilation() - new_phx_vent_schedule.name = hbe_room_prop.ventilation.schedule.display_name + new_phx_vent_schedule.name = hbe_vent_sched.display_name # -- Set all the ventilation schedule data from the room's properties new_phx_vent_schedule.operating_hours = 24.0 @@ -133,7 +138,7 @@ def _create_vent_schedule_from_ph_style( setattr(new_phx_vent_schedule.operating_periods, op_period.name, phx_vent_util_period) # -- Keep all the IDs in alignment.... - new_phx_vent_schedule.identifier = hbe_room_prop.ventilation.schedule.identifier + new_phx_vent_schedule.identifier = hbe_vent_sched.identifier new_phx_vent_schedule.id_num = new_phx_vent_schedule._count hbe_vent_sched_prop_ph.id_num = new_phx_vent_schedule.id_num # Important! @@ -156,11 +161,10 @@ def build_ventilation_schedule_from_hb_room( """ # -- Make sure that the room has vent schedule - hbe_prop: RoomEnergyProperties = _hb_room.properties.energy # type: ignore - if hbe_prop.ventilation is None: - return None - - if hbe_prop.ventilation.schedule is None: + try: + get_ventilation_schedule(_hb_room) + except MissingEnergyPropertiesError: + # No ventilation or ventilation.schedule found return None if _room_has_ph_style_ventilation(_hb_room): @@ -196,15 +200,12 @@ def build_occupancy_schedule_from_hb_room( """ # -- Make sure that the room has an occupancy schedule - hbe_prop: RoomEnergyProperties = _hb_room.properties.energy # type: ignore - if hbe_prop.people is None: - return None - - if hbe_prop.people.occupancy_schedule is None: + try: + hbe_schedule = get_people_schedule(_hb_room) + except MissingEnergyPropertiesError: + # No people or occupancy_schedule found return None - # -- Aliases - hbe_schedule = hbe_prop.people.occupancy_schedule hbe_schedule_prop_ph: phx_ruleset.ScheduleRulesetPhProperties = hbe_schedule.properties.ph # type: ignore daily_period = hbe_schedule_prop_ph.first_operating_period @@ -240,15 +241,12 @@ def build_lighting_schedule_from_hb_room( """ # -- Make sure that the room has an occupancy schedule - hbe_prop: RoomEnergyProperties = _hb_room.properties.energy # type: ignore - if hbe_prop.lighting is None: - return None - - if hbe_prop.lighting.schedule is None: + try: + hbe_schedule = get_lighting_schedule(_hb_room) + except MissingEnergyPropertiesError: + # No lighting or lighting.schedule found return None - # -- Aliases - hbe_schedule = hbe_prop.lighting.schedule hbe_schedule_prop_ph: phx_ruleset.ScheduleRulesetPhProperties = hbe_schedule.properties.ph # type: ignore daily_period = hbe_schedule_prop_ph.first_operating_period @@ -289,10 +287,19 @@ def _add_default_vent_schedule_to_Rooms(_hb_model: model.Model) -> model.Model: default_ventilation_schedule = hbe_ruleset.ScheduleRuleset.from_constant_value("default_schedule", 1.0, type_limit) for hb_room in _hb_model.rooms: - if hb_room.properties.energy.ventilation.schedule is None: - hb_room.properties.energy.ventilation.unlock() - hb_room.properties.energy.ventilation.schedule = default_ventilation_schedule - hb_room.properties.energy.ventilation.lock() + try: + get_ventilation_schedule(hb_room) + except MissingEnergyPropertiesError: + # No ventilation schedule found - add default + try: + room_energy_props = get_room_energy_properties(hb_room) + if room_energy_props.ventilation is not None: + room_energy_props.ventilation.unlock() # type: ignore + room_energy_props.ventilation.schedule = default_ventilation_schedule + room_energy_props.ventilation.lock() # type: ignore + except MissingEnergyPropertiesError: + # Room has no energy properties at all - skip it + continue return _hb_model @@ -317,8 +324,12 @@ def add_all_HB_Model_ventilation_schedules_to_PHX_Project(_project: project.PhxP # -- NEXT: Build up the new Ventilation Schedules from the Room's data for hb_room in _hb_model.rooms: - hbe_room_energy_prop: RoomEnergyProperties = hb_room.properties.energy # type: ignore - vent_schedule_id = hbe_room_energy_prop.ventilation.schedule.identifier + try: + vent_schedule = get_ventilation_schedule(hb_room) + vent_schedule_id = vent_schedule.identifier + except MissingEnergyPropertiesError: + # No ventilation schedule found, skip this room + continue if _project.vent_sched_in_project_collection(vent_schedule_id): # -- This is just to help speed things up. @@ -345,13 +356,13 @@ def add_all_HB_Model_occupancy_schedules_to_PHX_Project(_project: project.PhxPro * None """ for hb_room in _hb_model.rooms: - hbe_room_energy_prop: RoomEnergyProperties = hb_room.properties.energy # type: ignore - - # -- Sometimes there is no 'People' - if hbe_room_energy_prop.people is None: + try: + occ_schedule = get_people_schedule(hb_room) + occ_schedule_id = occ_schedule.identifier + except MissingEnergyPropertiesError: + # No people or occupancy schedule found, skip this room continue - occ_schedule_id = hbe_room_energy_prop.people.occupancy_schedule.identifier if _project.occupancy_sched_in_project_collection(occ_schedule_id): # -- This is just to help speed things up. # -- Don't re-make the util-pattern if it is already in collection. @@ -363,12 +374,13 @@ def add_all_HB_Model_occupancy_schedules_to_PHX_Project(_project: project.PhxPro def add_all_HB_Model_lighting_schedules_to_PHX_Project(_project: project.PhxProject, _hb_model: model.Model) -> None: for hb_room in _hb_model.rooms: - hbe_room_energy_prop: RoomEnergyProperties = hb_room.properties.energy # type: ignore - - if hbe_room_energy_prop.lighting is None: + try: + lighting_schedule = get_lighting_schedule(hb_room) + lighting_schedule_id = lighting_schedule.identifier + except MissingEnergyPropertiesError: + # No lighting or lighting.schedule found, skip this room continue - lighting_schedule_id = hbe_room_energy_prop.lighting.schedule.identifier if _project.lighting_sched_in_project_collection(lighting_schedule_id): # -- This is just to help speed things up. # -- Don't re-make the util-pattern if it is already in collection. diff --git a/PHX/from_HBJSON/create_variant.py b/PHX/from_HBJSON/create_variant.py index 6e78152..c9e2578 100644 --- a/PHX/from_HBJSON/create_variant.py +++ b/PHX/from_HBJSON/create_variant.py @@ -27,6 +27,13 @@ ) from PHX.from_HBJSON import create_building, create_elec_equip, create_foundations, create_hvac +from PHX.from_HBJSON._type_utils import ( + get_room_energy_properties, + get_room_infiltration, + get_room_people, + get_room_electric_equipment, + MissingEnergyPropertiesError, +) from PHX.from_HBJSON.create_shw_devices import ( build_phx_hw_heater, build_phx_hw_storage, @@ -267,15 +274,18 @@ def add_PhxPhBuildingData_from_hb_room(_variant: project.PhxVariant, _hb_room: r # ------------------------------------------------------------------------------------------------------------------ # -- Type Aliases ph_bldg = _variant.phius_cert.ph_building_data # alias - hb_prop_energy: RoomEnergyProperties = getattr(_hb_room.properties, "energy") hb_prop_ph: RoomPhProperties = getattr(_hb_room.properties, "ph") hbph_bldg_seg: BldgSegment = hb_prop_ph.ph_bldg_segment # ------------------------------------------------------------------------------------------------------------------ # -- Occupancy - if hb_prop_energy.people: - hb_ppl_prop_ph: people.PeoplePhProperties = getattr(hb_prop_energy.people.properties, "ph") + try: + hb_people = get_room_people(_hb_room) + hb_ppl_prop_ph: people.PeoplePhProperties = getattr(hb_people.properties, "ph") ph_bldg.num_of_units = hb_ppl_prop_ph.number_dwelling_units + except MissingEnergyPropertiesError: + # No people defined, skip setting num_of_units + pass ph_bldg.num_of_floors = hbph_bldg_seg.num_floor_levels # ------------------------------------------------------------------------------------------------------------------ @@ -286,13 +296,18 @@ def add_PhxPhBuildingData_from_hb_room(_variant: project.PhxVariant, _hb_room: r # ------------------------------------------------------------------------------------------------------------------ # -- Air-Infiltration - m3h_per_m2_at_50Pa = get_infiltration_at_50Pa(hb_prop_energy.infiltration.flow_per_exterior_area) - ph_bldg.airtightness_q50 = m3h_per_m2_at_50Pa - total_flow_m3_hr_at_50Pa = ph_bldg.airtightness_q50 * _variant.get_total_gross_envelope_area() try: - ph_bldg.airtightness_n50 = total_flow_m3_hr_at_50Pa / _variant.building.net_volume - except ZeroDivisionError: - ph_bldg.airtightness_n50 = 1.0 + hb_infiltration = get_room_infiltration(_hb_room) + m3h_per_m2_at_50Pa = get_infiltration_at_50Pa(hb_infiltration.flow_per_exterior_area) + ph_bldg.airtightness_q50 = m3h_per_m2_at_50Pa + total_flow_m3_hr_at_50Pa = ph_bldg.airtightness_q50 * _variant.get_total_gross_envelope_area() + try: + ph_bldg.airtightness_n50 = total_flow_m3_hr_at_50Pa / _variant.building.net_volume + except ZeroDivisionError: + ph_bldg.airtightness_n50 = 1.0 + except MissingEnergyPropertiesError: + # No infiltration defined, skip setting airtightness values + pass # ------------------------------------------------------------------------------------------------------------------ # -- Air Temp Setpoints @@ -776,31 +791,44 @@ def add_elec_equip_from_hb_room(_variant: project.PhxVariant, _hb_room: room.Roo """ # -- Get all the PhEquipment from the HBE-Electric-Equipment - room_prop_hb_energy: RoomEnergyProperties = getattr(_hb_room.properties, "energy") - room_hb_energy_elec_equip: ElectricEquipment = room_prop_hb_energy.electric_equipment - if room_hb_energy_elec_equip: + try: + room_hb_energy_elec_equip = get_room_electric_equipment(_hb_room) ee_properties_ph: equipment.ElectricEquipmentPhProperties = getattr(room_hb_energy_elec_equip.properties, "ph") for equip_key, device in ee_properties_ph.equipment_collection.items(): phx_elec_device = create_elec_equip.build_phx_elec_device(device) for zone in _variant.building.zones: zone.elec_equipment_collection.add_new_device(equip_key, phx_elec_device) + except MissingEnergyPropertiesError: + # No electric equipment defined, skip + pass # -- Get all the PhEquipment from the HBE-Process-Loads - room_hb_energy_process_loads: tuple[Process] = room_prop_hb_energy.process_loads - for process_load in room_hb_energy_process_loads: - process_prop_ph: process.ProcessPhProperties = getattr(process_load.properties, "ph") - if not process_prop_ph.ph_equipment: - continue - phx_elec_device = create_elec_equip.build_phx_elec_device(process_prop_ph.ph_equipment) - for zone in _variant.building.zones: - zone.elec_equipment_collection.add_new_device(str(phx_elec_device.identifier), phx_elec_device) + try: + room_energy_props = get_room_energy_properties(_hb_room) + room_hb_energy_process_loads: tuple[Process] = room_energy_props.process_loads + for process_load in room_hb_energy_process_loads: + process_prop_ph: process.ProcessPhProperties = getattr(process_load.properties, "ph") + if not process_prop_ph.ph_equipment: + continue + phx_elec_device = create_elec_equip.build_phx_elec_device(process_prop_ph.ph_equipment) + for zone in _variant.building.zones: + zone.elec_equipment_collection.add_new_device(str(phx_elec_device.identifier), phx_elec_device) + except MissingEnergyPropertiesError: + # No energy properties or process loads defined, skip + pass # -- Get the PhEquipment from the HBE-Lighting, if it exists - lighting_prop_ph: lighting.LightingPhProperties = getattr(room_prop_hb_energy.lighting.properties, "ph") - if lighting_prop_ph.ph_equipment: - phx_elec_device = create_elec_equip.build_phx_elec_device(lighting_prop_ph.ph_equipment) - for zone in _variant.building.zones: - zone.elec_equipment_collection.add_new_device(str(phx_elec_device.identifier), phx_elec_device) + try: + room_energy_props = get_room_energy_properties(_hb_room) + if room_energy_props.lighting is not None: + lighting_prop_ph: lighting.LightingPhProperties = getattr(room_energy_props.lighting.properties, "ph") + if lighting_prop_ph.ph_equipment: + phx_elec_device = create_elec_equip.build_phx_elec_device(lighting_prop_ph.ph_equipment) + for zone in _variant.building.zones: + zone.elec_equipment_collection.add_new_device(str(phx_elec_device.identifier), phx_elec_device) + except MissingEnergyPropertiesError: + # No energy properties or lighting defined, skip + pass return None diff --git a/_test_model_1.py b/_test_model_1.py new file mode 100644 index 0000000..e5a51b7 --- /dev/null +++ b/_test_model_1.py @@ -0,0 +1,60 @@ +# -*- coding: utf-8 -*- +# -*- Python Version: 3.10 -*- + +"""Test the HBJSON>WUFI conversion with Model 1.hbjson which has None energy properties.""" + +import pathlib + +from rich import print + +from PHX.from_HBJSON import create_project, read_HBJSON_file +from PHX.to_WUFI_XML import xml_builder, xml_txt_to_file +from tests.conftest import _reload_phx_classes, _reset_phx_class_counters + +# -- Test file with None energy properties +SOURCE_FILE = pathlib.Path("sample/hbjson/Model 1.hbjson") +TARGET_FILE = pathlib.Path("sample/Model_1_output.xml") + +import logging + +logger = logging.getLogger() + + +def test_model_1_conversion(): + # -- Re-set all the PHX modules (counters) + _reload_phx_classes() + _reset_phx_class_counters() + + # --- Read in an existing HB_JSON and re-build the HB Objects + # ------------------------------------------------------------------------- + print("[bold green]- [/bold green]" * 50) + print(f"[bold green]> Reading in the HBJSON file: ./{SOURCE_FILE}[/bold green]") + hb_json_dict = read_HBJSON_file.read_hb_json_from_file(SOURCE_FILE) + hb_model = read_HBJSON_file.convert_hbjson_dict_to_hb_model(hb_json_dict) + + # --- Generate the PhxProject file. + # ------------------------------------------------------------------------- + print(f"[bold]> Converting HB Model to PHX Project...[/bold]") + phx_project = create_project.convert_hb_model_to_PhxProject( + hb_model, _group_components=True, _merge_faces=True + ) + + # --- Output the WUFI Project as an XML Text File + # ------------------------------------------------------------------------- + print(f"[bold]> Generating XML Text for the Honeybee Model: [{hb_model}][/bold]") + xml_txt = xml_builder.generate_WUFI_XML_from_object(phx_project) + + print(f"[bold]> Saving the XML file to: ./{TARGET_FILE}[/bold]") + xml_txt_to_file.write_XML_text_file(TARGET_FILE, xml_txt, False) + + print(f"[bold green]✓ Conversion successful![/bold green]") + + +if __name__ == "__main__": + try: + test_model_1_conversion() + except Exception as e: + print(f"[bold red]✗ Conversion failed with error:[/bold red]") + print(f"[red]{e}[/red]") + import traceback + traceback.print_exc() From 77d5aa6d3949a4498ed4e466e25fb070339e7ece Mon Sep 17 00:00:00 2001 From: PH Tools Date: Fri, 14 Nov 2025 15:32:46 -0500 Subject: [PATCH 2/2] feat(from_HBJSON): Convert PO Models to WUFI XML - Support using `from_HBJSON` on PO models which do not have Honeybee-Energy attributes - Cleaned up and standardized import statements and type hints across PHX modules, removing unused imports and updating references for clarity and maintainability. - Minor bug fixes and improved error handling in Honeybee-related utilities and face merging logic. No functional changes to core algorithms. - format (isort, black, ruff) --- PHX/PHPP/phpp_app.py | 1 - PHX/PHPP/phpp_model/areas_thermal_bridges.py | 2 +- PHX/PHPP/phpp_model/climate_entry.py | 2 +- PHX/PHPP/phpp_model/component_vent.py | 2 +- PHX/PHPP/phpp_model/elec_non_res.py | 1 - PHX/PHPP/phpp_model/electricity_item.py | 2 +- PHX/PHPP/phpp_model/shading_rows.py | 2 +- PHX/PHPP/phpp_model/windows_rows.py | 2 +- PHX/PHPP/sheet_io/io_PER.py | 2 +- PHX/PHPP/sheet_io/io_areas.py | 8 +- PHX/PHPP/sheet_io/io_components.py | 2 +- PHX/PHPP/sheet_io/io_cooling_demand.py | 2 +- PHX/PHPP/sheet_io/io_cooling_units.py | 2 +- PHX/PHPP/sheet_io/io_elec_non_res.py | 6 +- PHX/PHPP/sheet_io/io_electricity.py | 3 +- PHX/PHPP/sheet_io/io_heating_demand.py | 2 +- PHX/PHPP/sheet_io/io_heating_peak_load.py | 2 +- PHX/PHPP/sheet_io/io_ihg_non_res.py | 6 +- PHX/PHPP/sheet_io/io_solar_pv.py | 1 - PHX/PHPP/sheet_io/io_use_non_res.py | 6 +- PHX/PHPP/sheet_io/io_variants.py | 10 - PHX/PHPP/sheet_io/io_verification.py | 1 - PHX/from_HBJSON/_type_utils.py | 95 +- PHX/from_HBJSON/cleanup.py | 70 +- PHX/from_HBJSON/cleanup_merge_faces.py | 32 +- PHX/from_HBJSON/create_assemblies.py | 9 +- PHX/from_HBJSON/create_building.py | 7 +- PHX/from_HBJSON/create_elec_equip.py | 2 +- PHX/from_HBJSON/create_foundations.py | 2 +- PHX/from_HBJSON/create_project.py | 11 +- PHX/from_HBJSON/create_rooms.py | 4 +- PHX/from_HBJSON/create_schedules.py | 9 +- PHX/from_HBJSON/create_shw_devices.py | 2 +- PHX/from_HBJSON/create_variant.py | 5 +- PHX/from_HBJSON/read_HBJSON_file.py | 4 - PHX/from_WUFI_XML/phx_converter.py | 2 - PHX/from_WUFI_XML/phx_schemas.py | 9 +- PHX/hbjson_to_phpp.py | 1 - PHX/model/elec_equip.py | 2 +- PHX/model/enums/hvac.py | 2 - PHX/model/geometry.py | 2 +- PHX/model/hvac/collection.py | 2 +- PHX/model/hvac/cooling_params.py | 2 +- PHX/model/hvac/piping.py | 2 - PHX/model/loads/lighting.py | 3 +- PHX/model/loads/occupancy.py | 1 - PHX/model/project.py | 2 +- PHX/model/schedules/lighting.py | 2 +- PHX/model/schedules/occupancy.py | 2 +- PHX/to_WUFI_XML/xml_schemas.py | 2 +- PHX/xl/xl_app.py | 1 - PHX/xl/xl_typing.py | 2 +- _test_model_1.py | 60 - _testing_HBJSON_to_WUFI.py | 5 +- _testing_WUFI_to_PHX.py | 2 +- pyproject.toml | 8 + tests/_source_gh/hbph_test_models.gh | Bin 344417 -> 343049 bytes .../Default_Model_Single_Zone.hbjson | 5468 ++-- .../Default_Room_Single_Zone.json | 2362 +- .../Multi_Room_Complete.hbjson | 21712 ++++++++-------- .../Default_Model_Single_Zone.xml | 8 +- .../Multi_Room_Complete.xml | 46 +- .../_test_reference_files_xml/School.xml | 0 .../_arverne_d_no_win.xml | 0 .../_test_reference_files_xml/_la_mora.xml | 0 .../_test_reference_files_xml/_ridgeway.xml | 0 .../test_create_window_type.py | 2 - .../test_convert_hbjson_dict_to_hb_model.py | 1 - .../test_geometry/test_Graphics3D.py | 2 - tests/test_model/test_hvac/test_base.py | 1 - tests/test_model/test_hvac/test_collection.py | 2 +- .../test_hvac/test_cooling_params.py | 1 - .../test_hvac/test_piping_elements.py | 7 +- .../test_hvac/test_piping_segments.py | 3 +- .../test_hvac/test_renewable_equip.py | 3 - .../test_PhxConstructionOpaque.py | 2 +- .../test_PhxLayer_with_Columns.py | 2 +- .../test_PhxLayer_with_Rows.py | 2 +- .../test_geometry/test_PhxLineSegment.py | 2 - .../test_PhxCoolingDehumidification.py | 4 +- .../test_cooling/test_PhxCoolingPanel.py | 4 +- .../test_PhxCoolingRecirculation.py | 4 +- .../test_PhxCoolingVentilation.py | 4 +- .../test_distribution/test_DistributionDHW.py | 10 +- .../test_DistributionDucting.py | 1 - .../test_PhxHeaterHeatPumpAnnual.py | 2 +- .../test_PhxHeaterHeatPumpCombined.py | 2 +- .../test_PhxHeaterHeatPumpHotWater.py | 2 +- .../test_PhxHeaterHeatPumpMonthly.py | 2 +- .../test_PhxHeaterBoilerFossil.py | 2 +- .../test_heating/test_PhxHeaterBoilerWood.py | 2 +- .../test_PhxHeaterDistrictHeat.py | 2 +- .../test_heating/test_PhxHeaterElectric.py | 2 +- .../test_ventilation/test_PhxVentilator.py | 2 +- .../test_water/test_PhxHotWaterTank.py | 2 +- uv.lock | 3 + 96 files changed, 14991 insertions(+), 15118 deletions(-) delete mode 100644 _test_model_1.py rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/Default_Model_Single_Zone.xml (99%) rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/Multi_Room_Complete.xml (99%) rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/School.xml (100%) rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/_arverne_d_no_win.xml (100%) rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/_la_mora.xml (100%) rename tests/{ => _test_reference_files_hbjson}/_test_reference_files_xml/_ridgeway.xml (100%) create mode 100644 uv.lock diff --git a/PHX/PHPP/phpp_app.py b/PHX/PHPP/phpp_app.py index 137f34f..fb93a8c 100644 --- a/PHX/PHPP/phpp_app.py +++ b/PHX/PHPP/phpp_app.py @@ -22,7 +22,6 @@ hot_water_tank, shading_rows, uvalues_constructor, - vent_ducts, vent_space, vent_units, ventilation_data, diff --git a/PHX/PHPP/phpp_model/areas_thermal_bridges.py b/PHX/PHPP/phpp_model/areas_thermal_bridges.py index d6e3acb..5c5c5d9 100644 --- a/PHX/PHPP/phpp_model/areas_thermal_bridges.py +++ b/PHX/PHPP/phpp_model/areas_thermal_bridges.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from functools import partial -from typing import List, Tuple +from typing import List from PHX.model import components from PHX.PHPP.phpp_localization import shape_model diff --git a/PHX/PHPP/phpp_model/climate_entry.py b/PHX/PHPP/phpp_model/climate_entry.py index d589807..0a7d512 100644 --- a/PHX/PHPP/phpp_model/climate_entry.py +++ b/PHX/PHPP/phpp_model/climate_entry.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from functools import partial -from typing import ClassVar, Dict, List, Tuple +from typing import ClassVar, List from PHX.model import phx_site from PHX.PHPP.phpp_localization import shape_model diff --git a/PHX/PHPP/phpp_model/component_vent.py b/PHX/PHPP/phpp_model/component_vent.py index 552c15c..7ff6604 100644 --- a/PHX/PHPP/phpp_model/component_vent.py +++ b/PHX/PHPP/phpp_model/component_vent.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from functools import partial -from typing import List, Tuple +from typing import List from PHX.model import hvac from PHX.PHPP.phpp_localization import shape_model diff --git a/PHX/PHPP/phpp_model/elec_non_res.py b/PHX/PHPP/phpp_model/elec_non_res.py index 3994f74..35718ec 100644 --- a/PHX/PHPP/phpp_model/elec_non_res.py +++ b/PHX/PHPP/phpp_model/elec_non_res.py @@ -5,7 +5,6 @@ import re from dataclasses import dataclass -from typing import Dict, List, Optional from PHX.PHPP.phpp_localization import shape_model from PHX.xl import xl_data diff --git a/PHX/PHPP/phpp_model/electricity_item.py b/PHX/PHPP/phpp_model/electricity_item.py index 6a09837..ec8f03d 100644 --- a/PHX/PHPP/phpp_model/electricity_item.py +++ b/PHX/PHPP/phpp_model/electricity_item.py @@ -4,7 +4,7 @@ """Model class for a PHPP Electricity / Equipment row input.""" from dataclasses import dataclass -from typing import Any, Dict, List, NamedTuple, Tuple +from typing import Any, List, NamedTuple, Tuple from PHX.model import elec_equip from PHX.model.enums.elec_equip import ElectricEquipmentType diff --git a/PHX/PHPP/phpp_model/shading_rows.py b/PHX/PHPP/phpp_model/shading_rows.py index 50cf909..775503d 100644 --- a/PHX/PHPP/phpp_model/shading_rows.py +++ b/PHX/PHPP/phpp_model/shading_rows.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from functools import partial -from typing import List, Tuple +from typing import List from PHX.model import components from PHX.PHPP.phpp_localization import shape_model diff --git a/PHX/PHPP/phpp_model/windows_rows.py b/PHX/PHPP/phpp_model/windows_rows.py index 001faba..92764be 100644 --- a/PHX/PHPP/phpp_model/windows_rows.py +++ b/PHX/PHPP/phpp_model/windows_rows.py @@ -5,7 +5,7 @@ from dataclasses import dataclass from functools import partial -from typing import List, Optional, Tuple +from typing import List, Optional from PHX.model import constructions, geometry from PHX.PHPP.phpp_localization import shape_model diff --git a/PHX/PHPP/sheet_io/io_PER.py b/PHX/PHPP/sheet_io/io_PER.py index 608c1fd..32cbcd9 100644 --- a/PHX/PHPP/sheet_io/io_PER.py +++ b/PHX/PHPP/sheet_io/io_PER.py @@ -6,7 +6,7 @@ from __future__ import annotations from dataclasses import dataclass, field -from typing import Any, Collection, Dict, List, Optional, Sequence, Tuple, Union +from typing import Collection, Dict, List, Optional, Sequence, Tuple, Union from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_areas.py b/PHX/PHPP/sheet_io/io_areas.py index 50904de..a0fca9e 100644 --- a/PHX/PHPP/sheet_io/io_areas.py +++ b/PHX/PHPP/sheet_io/io_areas.py @@ -10,7 +10,7 @@ from ph_units.unit_type import Unit from PHX.PHPP.phpp_localization import shape_model -from PHX.PHPP.phpp_model import areas_data, areas_surface, areas_thermal_bridges, version +from PHX.PHPP.phpp_model import areas_data, areas_surface, areas_thermal_bridges from PHX.xl import xl_app, xl_data from PHX.xl.xl_data import col_offset @@ -128,7 +128,7 @@ def find_section_first_entry_row(self) -> int: if val == self.shape.surface_rows.locator_string_entry: return i - raise Exception(f'\n\tError: Not able to find the first surface entry row in the "Areas input" section?') + raise Exception('\n\tError: Not able to find the first surface entry row in the "Areas input" section?') def find_section_last_entry_row(self, _start_row: Optional[int] = None) -> int: """Return the row number of the last user-input entry row in the 'Area input' section.""" @@ -136,7 +136,7 @@ def find_section_last_entry_row(self, _start_row: Optional[int] = None) -> int: if not _start_row: _start_row = self.section_first_entry_row elif _start_row > 10_000: - raise Exception(f'\n\tError: Not able to find the last surface entry row in the "Areas input" section?') + raise Exception('\n\tError: Not able to find the last surface entry row in the "Areas input" section?') _row_end = _start_row + 500 xl_data = self.xl.get_single_column_data( @@ -301,7 +301,7 @@ def find_section_first_entry_row(self) -> int: return i raise Exception( - f'\n\tError: Not able to find the first Thermal Bridge entry row in the "Thermal Bridge input" section?' + '\n\tError: Not able to find the first Thermal Bridge entry row in the "Thermal Bridge input" section?' ) diff --git a/PHX/PHPP/sheet_io/io_components.py b/PHX/PHPP/sheet_io/io_components.py index 87ad300..6c45628 100644 --- a/PHX/PHPP/sheet_io/io_components.py +++ b/PHX/PHPP/sheet_io/io_components.py @@ -6,7 +6,7 @@ from __future__ import annotations from dataclasses import dataclass -from typing import Dict, List, Optional, Set +from typing import Dict, List, Optional from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_cooling_demand.py b/PHX/PHPP/sheet_io/io_cooling_demand.py index 4cdd408..14c4dd5 100644 --- a/PHX/PHPP/sheet_io/io_cooling_demand.py +++ b/PHX/PHPP/sheet_io/io_cooling_demand.py @@ -5,7 +5,7 @@ from __future__ import annotations -from typing import Any, Dict +from typing import Dict from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_cooling_units.py b/PHX/PHPP/sheet_io/io_cooling_units.py index dcef26e..7dfbcfd 100644 --- a/PHX/PHPP/sheet_io/io_cooling_units.py +++ b/PHX/PHPP/sheet_io/io_cooling_units.py @@ -6,7 +6,7 @@ from __future__ import annotations from dataclasses import dataclass, field -from typing import Any, Dict, List, Optional, Tuple +from typing import Any, Dict, Optional, Tuple from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_elec_non_res.py b/PHX/PHPP/sheet_io/io_elec_non_res.py index 009aeca..1484323 100644 --- a/PHX/PHPP/sheet_io/io_elec_non_res.py +++ b/PHX/PHPP/sheet_io/io_elec_non_res.py @@ -5,7 +5,7 @@ from __future__ import annotations -from typing import Generator, List, Optional, Tuple +from typing import Generator, Optional, Tuple from PHX.PHPP.phpp_localization import shape_model from PHX.PHPP.phpp_model.elec_non_res import ExistingLightingRow @@ -76,7 +76,7 @@ def find_section_first_entry_row(self) -> int: if val == self.shape.lighting_rows.locator_string_entry: return i + 1 - raise Exception(f'\n\tError: Not able to find the first surface entry row in the "Lighting input" section?') + raise Exception('\n\tError: Not able to find the first surface entry row in the "Lighting input" section?') def find_section_last_entry_row(self, _start_row: Optional[int] = None) -> int: """Return the row number of the last user-input entry row in the 'Lighting input' section.""" @@ -84,7 +84,7 @@ def find_section_last_entry_row(self, _start_row: Optional[int] = None) -> int: if not _start_row: _start_row = self.section_first_entry_row elif _start_row > 10_000: - raise Exception(f'\n\tError: Not able to find the last surface entry row in the "Lighting input" section?') + raise Exception('\n\tError: Not able to find the last surface entry row in the "Lighting input" section?') _row_end = _start_row + 500 xl_data = self.xl.get_single_column_data( diff --git a/PHX/PHPP/sheet_io/io_electricity.py b/PHX/PHPP/sheet_io/io_electricity.py index baa7472..a772715 100644 --- a/PHX/PHPP/sheet_io/io_electricity.py +++ b/PHX/PHPP/sheet_io/io_electricity.py @@ -5,12 +5,11 @@ from __future__ import annotations -from typing import List, Type +from typing import List from PHX.model import elec_equip from PHX.PHPP.phpp_localization import shape_model from PHX.PHPP.phpp_model import electricity_item -from PHX.PHPP.phpp_model.electricity_item import PHPPReadAddress from PHX.xl import xl_app, xl_data diff --git a/PHX/PHPP/sheet_io/io_heating_demand.py b/PHX/PHPP/sheet_io/io_heating_demand.py index fca790e..fdb166f 100644 --- a/PHX/PHPP/sheet_io/io_heating_demand.py +++ b/PHX/PHPP/sheet_io/io_heating_demand.py @@ -5,7 +5,7 @@ from __future__ import annotations -from typing import Any, Dict +from typing import Dict from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_heating_peak_load.py b/PHX/PHPP/sheet_io/io_heating_peak_load.py index 6ca774e..c98f17e 100644 --- a/PHX/PHPP/sheet_io/io_heating_peak_load.py +++ b/PHX/PHPP/sheet_io/io_heating_peak_load.py @@ -5,7 +5,7 @@ from __future__ import annotations -from typing import Any, Dict +from typing import Dict from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_ihg_non_res.py b/PHX/PHPP/sheet_io/io_ihg_non_res.py index f95b02c..cbb5763 100644 --- a/PHX/PHPP/sheet_io/io_ihg_non_res.py +++ b/PHX/PHPP/sheet_io/io_ihg_non_res.py @@ -5,12 +5,8 @@ from __future__ import annotations -from typing import List, Optional - from PHX.PHPP.phpp_localization import shape_model -from PHX.PHPP.phpp_model import uvalues_constructor -from PHX.xl import xl_app, xl_data -from PHX.xl.xl_data import col_offset +from PHX.xl import xl_app class IhgNonRes: diff --git a/PHX/PHPP/sheet_io/io_solar_pv.py b/PHX/PHPP/sheet_io/io_solar_pv.py index f8e2927..b89fea8 100644 --- a/PHX/PHPP/sheet_io/io_solar_pv.py +++ b/PHX/PHPP/sheet_io/io_solar_pv.py @@ -6,7 +6,6 @@ from __future__ import annotations from dataclasses import dataclass, field -from functools import partial from typing import Any, Dict, List from ph_units.unit_type import Unit diff --git a/PHX/PHPP/sheet_io/io_use_non_res.py b/PHX/PHPP/sheet_io/io_use_non_res.py index 251644b..d046470 100644 --- a/PHX/PHPP/sheet_io/io_use_non_res.py +++ b/PHX/PHPP/sheet_io/io_use_non_res.py @@ -5,12 +5,8 @@ from __future__ import annotations -from typing import List, Optional - from PHX.PHPP.phpp_localization import shape_model -from PHX.PHPP.phpp_model import uvalues_constructor -from PHX.xl import xl_app, xl_data -from PHX.xl.xl_data import col_offset +from PHX.xl import xl_app class UseNonRes: diff --git a/PHX/PHPP/sheet_io/io_variants.py b/PHX/PHPP/sheet_io/io_variants.py index 4063b37..6796fff 100644 --- a/PHX/PHPP/sheet_io/io_variants.py +++ b/PHX/PHPP/sheet_io/io_variants.py @@ -10,16 +10,6 @@ from PHX.PHPP.phpp_localization import shape_model from PHX.xl import xl_app, xl_data from PHX.xl.xl_data import col_offset -from PHX.xl.xl_typing import ( - xl_app_Protocol, - xl_apps_Protocol, - xl_Book_Protocol, - xl_Books_Protocol, - xl_Framework_Protocol, - xl_Range_Protocol, - xl_Sheet_Protocol, - xl_Sheets_Protocol, -) @dataclass diff --git a/PHX/PHPP/sheet_io/io_verification.py b/PHX/PHPP/sheet_io/io_verification.py index f07bc91..54ee891 100644 --- a/PHX/PHPP/sheet_io/io_verification.py +++ b/PHX/PHPP/sheet_io/io_verification.py @@ -6,7 +6,6 @@ from __future__ import annotations from dataclasses import dataclass -from typing import List from PHX.PHPP.phpp_localization import shape_model from PHX.PHPP.phpp_model import verification_data diff --git a/PHX/from_HBJSON/_type_utils.py b/PHX/from_HBJSON/_type_utils.py index 34289f7..181a6b6 100644 --- a/PHX/from_HBJSON/_type_utils.py +++ b/PHX/from_HBJSON/_type_utils.py @@ -12,25 +12,25 @@ from typing import TYPE_CHECKING, Union if TYPE_CHECKING: - from honeybee import room, face, aperture - from honeybee_ph import space as hb_space - from honeybee_energy.properties.room import RoomEnergyProperties - from honeybee_energy.properties.face import FaceEnergyProperties - from honeybee_energy.properties.aperture import ApertureEnergyProperties + from honeybee import aperture, face, room + from honeybee_energy.load.equipment import ElectricEquipment from honeybee_energy.load.infiltration import Infiltration - from honeybee_energy.load.ventilation import Ventilation from honeybee_energy.load.people import People - from honeybee_energy.load.equipment import ElectricEquipment - from honeybee_energy.schedule.ruleset import ScheduleRuleset + from honeybee_energy.load.ventilation import Ventilation + from honeybee_energy.properties.aperture import ApertureEnergyProperties + from honeybee_energy.properties.face import FaceEnergyProperties + from honeybee_energy.properties.room import RoomEnergyProperties from honeybee_energy.schedule.fixedinterval import ScheduleFixedInterval - + from honeybee_energy.schedule.ruleset import ScheduleRuleset + from honeybee_ph import space as hb_space + # Type alias for schedule types HBESchedule = Union[ScheduleRuleset, ScheduleFixedInterval] class MissingEnergyPropertiesError(Exception): """Raised when required energy properties are missing from a Honeybee object.""" - + def __init__(self, obj_name: str, property_name: str): self.message = ( f"Error: Honeybee object '{obj_name}' is missing required energy property: " @@ -41,20 +41,20 @@ def __init__(self, obj_name: str, property_name: str): def get_room_energy_properties(hb_room: "room.Room") -> "RoomEnergyProperties": """Get energy properties from a Honeybee Room. - + This function returns the energy properties with a non-Optional type hint, which forces calling code to handle the case where energy properties might not exist. This makes type checkers report errors at call sites that don't handle None properly. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (RoomEnergyProperties): The room's energy properties. - + Raises: ------- * MissingEnergyPropertiesError: If the room has no energy properties. @@ -67,15 +67,15 @@ def get_room_energy_properties(hb_room: "room.Room") -> "RoomEnergyProperties": def get_face_energy_properties(hb_face: "face.Face") -> "FaceEnergyProperties": """Get energy properties from a Honeybee Face. - + Arguments: ---------- * hb_face (face.Face): The Honeybee Face. - + Returns: -------- * (FaceEnergyProperties): The face's energy properties. - + Raises: ------- * MissingEnergyPropertiesError: If the face has no energy properties. @@ -88,15 +88,15 @@ def get_face_energy_properties(hb_face: "face.Face") -> "FaceEnergyProperties": def get_aperture_energy_properties(hb_aperture: "aperture.Aperture") -> "ApertureEnergyProperties": """Get energy properties from a Honeybee Aperture. - + Arguments: ---------- * hb_aperture (aperture.Aperture): The Honeybee Aperture. - + Returns: -------- * (ApertureEnergyProperties): The aperture's energy properties. - + Raises: ------- * MissingEnergyPropertiesError: If the aperture has no energy properties. @@ -109,42 +109,39 @@ def get_aperture_energy_properties(hb_aperture: "aperture.Aperture") -> "Apertur def get_space_energy_properties(hb_space: "hb_space.Space") -> "RoomEnergyProperties": """Get energy properties from a Honeybee-PH Space's host room. - + Arguments: ---------- * hb_space (space.Space): The Honeybee-PH Space. - + Returns: -------- * (RoomEnergyProperties): The host room's energy properties. - + Raises: ------- * MissingEnergyPropertiesError: If the space has no host or the host has no energy properties. """ if not hb_space.host: raise MissingEnergyPropertiesError(hb_space.display_name, "host") - + energy_props = getattr(hb_space.host.properties, "energy", None) if energy_props is None: - raise MissingEnergyPropertiesError( - f"{hb_space.display_name}.host ({hb_space.host.display_name})", - "energy" - ) + raise MissingEnergyPropertiesError(f"{hb_space.display_name}.host ({hb_space.host.display_name})", "energy") return energy_props def get_room_infiltration(hb_room: "room.Room") -> "Infiltration": """Get infiltration from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (Infiltration): The room's infiltration object. - + Raises: ------- * MissingEnergyPropertiesError: If infiltration is not defined. @@ -157,15 +154,15 @@ def get_room_infiltration(hb_room: "room.Room") -> "Infiltration": def get_room_ventilation(hb_room: "room.Room") -> "Ventilation": """Get ventilation from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (Ventilation): The room's ventilation object. - + Raises: ------- * MissingEnergyPropertiesError: If ventilation is not defined. @@ -178,15 +175,15 @@ def get_room_ventilation(hb_room: "room.Room") -> "Ventilation": def get_room_people(hb_room: "room.Room") -> "People": """Get people from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (People): The room's people object. - + Raises: ------- * MissingEnergyPropertiesError: If people is not defined. @@ -199,15 +196,15 @@ def get_room_people(hb_room: "room.Room") -> "People": def get_room_electric_equipment(hb_room: "room.Room") -> "ElectricEquipment": """Get electric equipment from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (ElectricEquipment): The room's electric equipment object. - + Raises: ------- * MissingEnergyPropertiesError: If electric equipment is not defined. @@ -220,15 +217,15 @@ def get_room_electric_equipment(hb_room: "room.Room") -> "ElectricEquipment": def get_ventilation_schedule(hb_room: "room.Room") -> "HBESchedule": """Get ventilation schedule from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (HBESchedule): The room's ventilation schedule. - + Raises: ------- * MissingEnergyPropertiesError: If ventilation or schedule is not defined. @@ -241,15 +238,15 @@ def get_ventilation_schedule(hb_room: "room.Room") -> "HBESchedule": def get_people_schedule(hb_room: "room.Room") -> "HBESchedule": """Get people occupancy schedule from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (HBESchedule): The room's people occupancy schedule. - + Raises: ------- * MissingEnergyPropertiesError: If people or occupancy schedule is not defined. @@ -262,15 +259,15 @@ def get_people_schedule(hb_room: "room.Room") -> "HBESchedule": def get_lighting_schedule(hb_room: "room.Room") -> "HBESchedule": """Get lighting schedule from a Honeybee Room's energy properties. - + Arguments: ---------- * hb_room (room.Room): The Honeybee Room. - + Returns: -------- * (HBESchedule): The room's lighting schedule. - + Raises: ------- * MissingEnergyPropertiesError: If lighting or schedule is not defined. diff --git a/PHX/from_HBJSON/cleanup.py b/PHX/from_HBJSON/cleanup.py index 77cf79e..4f08de3 100644 --- a/PHX/from_HBJSON/cleanup.py +++ b/PHX/from_HBJSON/cleanup.py @@ -16,8 +16,10 @@ raise ImportError("\nFailed to import honeybee:\n\t{}".format(e)) try: - from honeybee_energy.load import equipment, infiltration, people, process + from honeybee_energy.load.equipment import ElectricEquipment from honeybee_energy.load.infiltration import Infiltration + from honeybee_energy.load.people import People + from honeybee_energy.load.process import Process from honeybee_energy.properties.face import FaceEnergyProperties from honeybee_energy.properties.room import RoomEnergyProperties from honeybee_energy.schedule.ruleset import ScheduleRuleset @@ -31,7 +33,6 @@ raise ImportError("\nFailed to import honeybee_ph:\n\t{}".format(e)) try: - from honeybee_energy_ph.load.ph_equipment import PhEquipment from honeybee_energy_ph.properties.load.equipment import ElectricEquipmentPhProperties from honeybee_energy_ph.properties.load.people import PeoplePhProperties, PhDwellings from honeybee_energy_ph.properties.load.process import ProcessPhProperties @@ -39,14 +40,15 @@ raise ImportError("\nFailed to import honeybee_energy_ph:\n\t{}".format(e)) try: - from PHX.from_HBJSON.cleanup_merge_faces import merge_hb_faces from PHX.from_HBJSON._type_utils import ( + MissingEnergyPropertiesError, + get_face_energy_properties, + get_room_electric_equipment, get_room_energy_properties, - get_room_people, get_room_infiltration, - get_room_electric_equipment, - MissingEnergyPropertiesError, + get_room_people, ) + from PHX.from_HBJSON.cleanup_merge_faces import merge_hb_faces from PHX.model import project except ImportError as e: raise ImportError("\nFailed to import PHX:\n\t{}".format(e)) @@ -73,7 +75,7 @@ def _get_hb_room_energy_properties(_hb_room: room.Room) -> RoomEnergyProperties return getattr(_hb_room.properties, "energy", None) -def _get_hb_room_energy_electric_equipment(_hb_room: room.Room) -> equipment.ElectricEquipment | None: +def _get_hb_room_energy_electric_equipment(_hb_room: room.Room) -> ElectricEquipment | None: """Get the Honeybee-Room's Energy Electric Equipment Properties. Arguments: @@ -121,7 +123,8 @@ def _dup_face(_hb_face: face.Face) -> face.Face: continue new_extension = original_extension.__copy__() setattr(new_face._properties, f"_{extension_name}", new_extension) - except: + except Exception as e: + logger.debug(f"Failed to copy extension '{extension_name}': {e}") pass return new_face @@ -209,7 +212,7 @@ def all_unique_ph_dwelling_objects(_hb_rooms: List[room.Room]) -> List[PhDwellin return list(dwellings) -def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: +def merge_occupancies(_hb_rooms: List[room.Room]) -> People: """Returns a new HB-People-Obj with it's values set from a list of input HB-Rooms. Arguments: @@ -235,7 +238,7 @@ def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: total_ph_people = 0.0 total_hb_people = 0.0 reference_people = None - + for hb_room in _hb_rooms: try: hb_ppl_obj = get_room_people(hb_room) @@ -253,23 +256,22 @@ def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: # ------------------------------------------------------------------------- # -- Build up the new People object's attributes total_floor_area = sum(rm.floor_area for rm in _hb_rooms) - + if reference_people is None: # No people found on any rooms - create a default logger.warning("No people found on any rooms. Creating default people object with 0.0 people_per_area.") - from honeybee_energy.load.people import People as HBPeople - from honeybee_energy.schedule.ruleset import ScheduleRuleset - new_hb_ppl = HBPeople( + + new_hb_ppl = People( identifier="default_people", people_per_area=0.0, occupancy_schedule=ScheduleRuleset.from_constant_value("default_occ_schedule", 1.0), ) new_hb_ppl_prop_ph: PeoplePhProperties = getattr(new_hb_ppl.properties, "ph") else: - new_hb_ppl: people.People = reference_people.__copy__() + new_hb_ppl: People = reference_people.__copy__() new_hb_ppl_prop_ph: PeoplePhProperties = getattr(new_hb_ppl.properties, "ph") new_hb_ppl.people_per_area = total_hb_people / total_floor_area if total_floor_area > 0 else 0.0 - + new_hb_ppl_prop_ph.number_bedrooms = total_ph_bedrooms new_hb_ppl_prop_ph.number_people = total_ph_people new_hb_ppl_prop_ph.dwellings = merged_ph_dwellings @@ -277,7 +279,7 @@ def merge_occupancies(_hb_rooms: List[room.Room]) -> people.People: return new_hb_ppl -def merge_infiltrations(_hb_rooms: List[room.Room]) -> infiltration.Infiltration: +def merge_infiltrations(_hb_rooms: List[room.Room]) -> Infiltration: """Returns a new HB-Infiltration-Obj with it's values set from a list of input HB-Rooms. Arguments: @@ -295,7 +297,7 @@ def merge_infiltrations(_hb_rooms: List[room.Room]) -> infiltration.Infiltration total_m3_s = 0.0 total_exposed_area = 0.0 reference_infiltration = None - + for room in _hb_rooms: try: room_infiltration = get_room_infiltration(room) @@ -312,10 +314,11 @@ def merge_infiltrations(_hb_rooms: List[room.Room]) -> infiltration.Infiltration # -- If no rooms had infiltration, create a default one if reference_infiltration is None: - logger.warning(f"No infiltration found on any rooms. Creating default infiltration with 0.0 flow_per_exterior_area.") - from honeybee_energy.load.infiltration import Infiltration as HBInfiltration - from honeybee_energy.schedule.ruleset import ScheduleRuleset - new_infil = HBInfiltration( + logger.warning( + "No infiltration found on any rooms. Creating default infiltration with 0.0 flow_per_exterior_area." + ) + + new_infil = Infiltration( identifier="default_infiltration", flow_per_exterior_area=0.0, schedule=ScheduleRuleset.from_constant_value("default_infil_schedule", 1.0), @@ -356,7 +359,7 @@ def merge_shw_programs(_hb_rooms: List[room.Room]) -> shw.SHWSystem: continue if len(shw_programs) > 1: - print(f"Warning: More than one SHW Program Type found in the model.") + print("Warning: More than one SHW Program Type found in the model.") return shw.SHWSystem( identifier=clean_ep_string("_default_shw_system_"), @@ -364,7 +367,7 @@ def merge_shw_programs(_hb_rooms: List[room.Room]) -> shw.SHWSystem: ) -def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: +def merge_elec_equip(_hb_rooms: List[room.Room]) -> ElectricEquipment: """Returns a new HB-ElectricEquipment-Obj with it's values set from a list of input HB-Rooms. Arguments: @@ -386,7 +389,7 @@ def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: if not _hb_rooms: msg = "Warning: No Honeybee-Rooms with Electric Equipment found." print(msg) - return equipment.ElectricEquipment( + return ElectricEquipment( identifier="default_electric_equipment", watts_per_area=0.0, schedule=ScheduleRuleset.from_constant_value( @@ -419,7 +422,7 @@ def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: total_floor_area = sum(rm.floor_area for rm in _hb_rooms) or 0.0 total_watts = 0.0 reference_electric_equipment = None - + for rm in _hb_rooms: try: ee = get_room_electric_equipment(rm) @@ -433,14 +436,16 @@ def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: # -- Build a new HBE-Elec-Equip from the reference room, add all the PH-Equipment to it. if reference_electric_equipment is None: # No electric equipment found on any rooms - create a default - logger.warning("No electric equipment found on any rooms. Creating default electric equipment with 0.0 watts_per_area.") - new_hb_equip: equipment.ElectricEquipment = equipment.ElectricEquipment( + logger.warning( + "No electric equipment found on any rooms. Creating default electric equipment with 0.0 watts_per_area." + ) + new_hb_equip = ElectricEquipment( identifier="default_electric_equipment", watts_per_area=0.0, schedule=ScheduleRuleset.from_constant_value("default_ee_schedule", 1.0), ) else: - new_hb_equip: equipment.ElectricEquipment = reference_electric_equipment.duplicate() # type: ignore + new_hb_equip: ElectricEquipment = reference_electric_equipment.duplicate() # type: ignore new_hb_equip.watts_per_area = total_watts / total_floor_area if total_floor_area > 0 else 0.0 new_hb_equip_prop_ph: ElectricEquipmentPhProperties = getattr(new_hb_equip.properties, "ph") new_hb_equip_prop_ph.equipment_collection.remove_all_equipment() @@ -451,7 +456,7 @@ def merge_elec_equip(_hb_rooms: List[room.Room]) -> equipment.ElectricEquipment: return new_hb_equip -def merge_process_loads(_hb_rooms: list[room.Room]) -> list[process.Process]: +def merge_process_loads(_hb_rooms: list[room.Room]) -> list[Process]: """Returns a new HB-Process-Obj with it's values set from a list of input HB-Rooms. Arguments: @@ -465,11 +470,11 @@ def merge_process_loads(_hb_rooms: list[room.Room]) -> list[process.Process]: """ # -- Collect all the unique Process-Load/PH-Equipment in all the rooms. # -- Increase the quantity for each duplicate piece of equipment found - ph_equipment: dict[str, process.Process] = {} + ph_equipment: dict[str, Process] = {} for room in _hb_rooms: try: room_energy_props = get_room_energy_properties(room) - process_loads: tuple[process.Process] = room_energy_props.process_loads + process_loads: tuple[Process] = room_energy_props.process_loads except MissingEnergyPropertiesError: # Room has no energy properties, skip it continue @@ -570,7 +575,6 @@ def merge_rooms( merged_faces = [] for face_group in face_groups: try: - from PHX.from_HBJSON._type_utils import get_face_energy_properties face_energy_props = get_face_energy_properties(face_group[0]) const_name = face_energy_props.construction.display_name except MissingEnergyPropertiesError: diff --git a/PHX/from_HBJSON/cleanup_merge_faces.py b/PHX/from_HBJSON/cleanup_merge_faces.py index adabf47..35023f3 100644 --- a/PHX/from_HBJSON/cleanup_merge_faces.py +++ b/PHX/from_HBJSON/cleanup_merge_faces.py @@ -59,11 +59,11 @@ def _check_and_add_sub_face( _add_sub_face(_face, aperture) -def _create_new_HB_Face(_face3D: Face3D, _ref_face: Face) -> Face: +def _create_new_HB_Face(_face3d: Face3D, _ref_face: Face) -> Face: """Create a new HB-Face using a Face3D and a reference HB-Face.""" new_face = Face( identifier=_ref_face.identifier, - geometry=_face3D, + geometry=_face3d, type=_ref_face.type, boundary_condition=_ref_face.boundary_condition, ) @@ -74,11 +74,11 @@ def _create_new_HB_Face(_face3D: Face3D, _ref_face: Face) -> Face: return new_face -def _create_new_HB_Shade(_face3D: Face3D, _ref_face: Shade) -> Shade: +def _create_new_HB_Shade(_face3d: Face3D, _ref_face: Shade) -> Shade: """Create a new HB-Shade using a Face3D and a reference HB-Shade.""" new_face = Shade( identifier=_ref_face.identifier, - geometry=_face3D, + geometry=_face3d, is_detached=True, ) new_face.display_name = _ref_face.display_name @@ -88,10 +88,10 @@ def _create_new_HB_Shade(_face3D: Face3D, _ref_face: Shade) -> Shade: return new_face -def _create_new_Face3D(_poly2D: Polygon2D, _base_plane: Plane, _ref_face: TFaceOrShade) -> Face3D: +def _create_new_Face3D(_poly2d: Polygon2D, _base_plane: Plane, _ref_face: TFaceOrShade) -> Face3D: """Return a new Face3D based on a Polygon2D and a reference HB-Face.""" return Face3D( - boundary=tuple(_base_plane.xy_to_xyz(v) for v in _poly2D.vertices), + boundary=tuple(_base_plane.xy_to_xyz(v) for v in _poly2d.vertices), plane=_ref_face.geometry.plane, ) @@ -151,22 +151,22 @@ def merge_hb_faces(_faces: List[Face], _tolerance: float, _angle_tolerance_degre # ------------------------------------------------------------------------- # -- Merge the HB-Faces' Polygons together - merged_polygon2Ds = polygon2d_tools.merge_lbt_face_polygons(face3Ds(_faces), _tolerance) + merged_polygon2ds = polygon2d_tools.merge_lbt_face_polygons(face3Ds(_faces), _tolerance) # ------------------------------------------------------------------------- # -- Create new LBT-Face3D, and HB-Faces from the Polygon2Ds ref_face = _faces[0] ref_plane = ref_face.geometry.plane faces = [] - if len(merged_polygon2Ds) == 1: + if len(merged_polygon2ds) == 1: # -- Create new faces for the merged Polygon2Ds - face3ds = (_create_new_Face3D(p, ref_plane, ref_face) for p in merged_polygon2Ds) + face3ds = (_create_new_Face3D(p, ref_plane, ref_face) for p in merged_polygon2ds) faces = [_create_new_HB_Face(f3d, ref_face) for f3d in face3ds] - elif len(merged_polygon2Ds) > 1: + elif len(merged_polygon2ds) > 1: # -- It may mean that there are 'holes' in a surface? So try and find # -- the parent and any child surfaces. - parent_polygon, child_polygons = find_parent_and_child_polygons(merged_polygon2Ds) + parent_polygon, child_polygons = find_parent_and_child_polygons(merged_polygon2ds) # -- Check the results if len(parent_polygon) != 1: @@ -200,22 +200,22 @@ def merge_hb_shades(_faces: List[Shade], _tolerance: float, _angle_tolerance_deg # ------------------------------------------------------------------------- # -- Merge the HB-Face's Polygons together - merged_polygon2Ds = polygon2d_tools.merge_lbt_face_polygons(face3Ds(_faces), _tolerance) + merged_polygon2ds = polygon2d_tools.merge_lbt_face_polygons(face3Ds(_faces), _tolerance) # ------------------------------------------------------------------------- # -- Create new LBT-Face3D, and HB-Faces from the Polygon2Ds ref_face = _faces[0] ref_plane = ref_face.geometry.plane hb_shades_ = [] - if len(merged_polygon2Ds) == 1: + if len(merged_polygon2ds) == 1: # -- Create new faces for the merged Polygon2Ds - face3ds = (_create_new_Face3D(p, ref_plane, ref_face) for p in merged_polygon2Ds) + face3ds = (_create_new_Face3D(p, ref_plane, ref_face) for p in merged_polygon2ds) hb_shades_ = [_create_new_HB_Shade(f3d, ref_face) for f3d in face3ds] - elif len(merged_polygon2Ds) > 1: + elif len(merged_polygon2ds) > 1: # -- It may mean that there are 'holes' in a surface? So try and find # -- the parent and any child surfaces. - parent_polygon, child_polygons = find_parent_and_child_polygons(merged_polygon2Ds) + parent_polygon, child_polygons = find_parent_and_child_polygons(merged_polygon2ds) # -- Check the results if len(parent_polygon) != 1: diff --git a/PHX/from_HBJSON/create_assemblies.py b/PHX/from_HBJSON/create_assemblies.py index bf51eb8..39a73cd 100644 --- a/PHX/from_HBJSON/create_assemblies.py +++ b/PHX/from_HBJSON/create_assemblies.py @@ -14,13 +14,16 @@ from honeybee_energy.construction.window import WindowConstruction from honeybee_energy.construction.windowshade import WindowConstructionShade from honeybee_energy.material.opaque import EnergyMaterial, EnergyMaterialNoMass -from honeybee_energy.properties.face import FaceEnergyProperties from honeybee_energy_ph.construction.window import PhWindowFrame, PhWindowGlazing from honeybee_energy_ph.properties.construction.window import WindowConstructionPhProperties from honeybee_energy_ph.properties.materials.opaque import EnergyMaterialPhProperties, PhDivisionGrid from honeybee_ph_utils import color, iso_10077_1 -from PHX.from_HBJSON._type_utils import get_face_energy_properties, get_aperture_energy_properties, MissingEnergyPropertiesError +from PHX.from_HBJSON._type_utils import ( + MissingEnergyPropertiesError, + get_aperture_energy_properties, + get_face_energy_properties, +) from PHX.model import constructions, project, shades logger = logging.getLogger(__name__) @@ -258,7 +261,7 @@ def build_opaque_assemblies_from_HB_model(_project: project.PhxProject, _hb_mode # -- If is an AirBoundary, use the default material materials: list[EnergyMaterial] = getattr(hb_const, "materials", DEFAULT_MATERIALS) - if not hb_const.identifier in _project.assembly_types: + if hb_const.identifier not in _project.assembly_types: # -- Create a new Assembly with Layers from the Honeybee-Construction new_assembly = constructions.PhxConstructionOpaque() new_assembly.id_num = constructions.PhxConstructionOpaque._count diff --git a/PHX/from_HBJSON/create_building.py b/PHX/from_HBJSON/create_building.py index 005ca14..da712a2 100644 --- a/PHX/from_HBJSON/create_building.py +++ b/PHX/from_HBJSON/create_building.py @@ -7,19 +7,16 @@ from typing import Dict, List, Union from honeybee import aperture, face, room -from honeybee_energy.construction import window, windowshade +from honeybee_energy.construction import window from honeybee_energy.properties.aperture import ApertureEnergyProperties from honeybee_energy.properties.face import FaceEnergyProperties -from honeybee_energy.properties.room import RoomEnergyProperties from honeybee_energy_ph.properties.construction.opaque import OpaqueConstructionPhProperties -from honeybee_energy_ph.properties.construction.window import WindowConstructionPhProperties from honeybee_energy_ph.properties.load.people import PeoplePhProperties -from honeybee_ph import space from honeybee_ph.properties.aperture import AperturePhProperties from honeybee_ph.properties.room import RoomPhProperties from PHX.from_HBJSON import create_geometry -from PHX.from_HBJSON._type_utils import get_room_people, MissingEnergyPropertiesError +from PHX.from_HBJSON._type_utils import MissingEnergyPropertiesError, get_room_people from PHX.from_HBJSON.create_rooms import create_room_from_space from PHX.model import building, components, constructions from PHX.model.enums.building import ( diff --git a/PHX/from_HBJSON/create_elec_equip.py b/PHX/from_HBJSON/create_elec_equip.py index 94da819..830d92c 100644 --- a/PHX/from_HBJSON/create_elec_equip.py +++ b/PHX/from_HBJSON/create_elec_equip.py @@ -62,7 +62,7 @@ def build_phx_elec_device( except KeyError: raise except Exception as e: - msg = f"\n\tError setting attribute '{attr_name}' on '{phx_device.__class__.__name__}'?" + msg = f"\n\tError setting attribute '{attr_name}' on '{phx_device.__class__.__name__}'?/n\t{e}" raise Exception(msg) return phx_device diff --git a/PHX/from_HBJSON/create_foundations.py b/PHX/from_HBJSON/create_foundations.py index 54eab5d..7319d93 100644 --- a/PHX/from_HBJSON/create_foundations.py +++ b/PHX/from_HBJSON/create_foundations.py @@ -50,7 +50,7 @@ def create_phx_foundation_from_hbph( setattr(new_phx_foundation, attr_name, getattr(_hbph_foundation, attr_name)) except KeyError: raise - except Exception as e: + except Exception: msg = f"\n\tError setting attribute '{attr_name}' on '{new_phx_foundation.__class__.__name__}'?" raise Exception(msg) diff --git a/PHX/from_HBJSON/create_project.py b/PHX/from_HBJSON/create_project.py index 581732b..daec622 100644 --- a/PHX/from_HBJSON/create_project.py +++ b/PHX/from_HBJSON/create_project.py @@ -7,10 +7,11 @@ from collections import defaultdict from typing import List, Tuple, Union -from honeybee import model, room +from honeybee import model from honeybee.aperture import Aperture +from honeybee.room import Room from honeybee_ph.properties.room import RoomPhProperties -from honeybee_ph.team import ProjectTeam, ProjectTeamMember +from honeybee_ph.team import ProjectTeamMember from PHX.from_HBJSON import cleanup, create_assemblies, create_schedules, create_shades, create_variant from PHX.model.project import PhxProject, PhxProjectData, ProjectData_Agent @@ -27,7 +28,7 @@ def __init__(self, _lbt_obj): super().__init__(self.message) -def sort_hb_rooms_by_bldg_segment(_hb_rooms: Tuple[room.Room]) -> List[List[room.Room]]: +def sort_hb_rooms_by_bldg_segment(_hb_rooms: Tuple[Room]) -> List[List[Room]]: """Returns Groups of Honeybee-Rooms broken up by properties.ph.ph_bldg_segment.identifier. Arguments: @@ -41,7 +42,7 @@ def sort_hb_rooms_by_bldg_segment(_hb_rooms: Tuple[room.Room]) -> List[List[room rooms_by_segment = defaultdict(list) for room in _hb_rooms: - hb_room_prop_ph: RoomPhProperties = room.properties.ph # type: ignore + hb_room_prop_ph: RoomPhProperties = getattr(room.properties, "ph") rooms_by_segment[hb_room_prop_ph.ph_bldg_segment.identifier].append(room) return list(rooms_by_segment.values()) @@ -119,7 +120,7 @@ def convert_hb_model_to_PhxProject( # -- Merge the rooms together by their Building Segment, Add to the Project # -- then create a new variant from the merged room. # -- try and weld the vertices too in order to reduce load-time. - for room_group in sort_hb_rooms_by_bldg_segment(_hb_model.rooms): # type: ignore + for room_group in sort_hb_rooms_by_bldg_segment(_hb_model.rooms): # -- Configure the merge_faces and merge_face_tolerance if isinstance(_merge_faces, bool): merge_faces: bool = _merge_faces diff --git a/PHX/from_HBJSON/create_rooms.py b/PHX/from_HBJSON/create_rooms.py index d068175..2f183c5 100644 --- a/PHX/from_HBJSON/create_rooms.py +++ b/PHX/from_HBJSON/create_rooms.py @@ -14,7 +14,7 @@ from honeybee_ph_utils.ventilation import hb_room_vent_flowrates from honeybee_phhvac.properties.room import get_ph_hvac_from_space -from PHX.from_HBJSON._type_utils import get_space_energy_properties, get_ventilation_schedule +from PHX.from_HBJSON._type_utils import get_space_energy_properties from PHX.model import spaces from PHX.model.utilization_patterns import ( UtilizationPatternCollection_Lighting, @@ -70,7 +70,7 @@ def calc_space_ventilation_flow_rate(_space: space.Space) -> float: def _get_energy_properties_from_space(_space: space.Space) -> RoomEnergyProperties: """Return the "energy" Properties of a Honeybee-PH Space's host Room. - + Raises: ------- * MissingEnergyPropertiesError: If the space has no host or the host has no energy properties. diff --git a/PHX/from_HBJSON/create_schedules.py b/PHX/from_HBJSON/create_schedules.py index 35310c0..ee1c5e7 100644 --- a/PHX/from_HBJSON/create_schedules.py +++ b/PHX/from_HBJSON/create_schedules.py @@ -7,19 +7,16 @@ from honeybee import model, room from honeybee_energy.lib.scheduletypelimits import schedule_type_limit_by_identifier -from honeybee_energy.properties.room import RoomEnergyProperties from honeybee_energy.schedule import ruleset as hbe_ruleset from honeybee_energy_ph.properties import ruleset as phx_ruleset from honeybee_ph_utils.schedules import calc_four_part_vent_sched_values_from_hb_room from PHX.from_HBJSON._type_utils import ( + MissingEnergyPropertiesError, + get_lighting_schedule, + get_people_schedule, get_room_energy_properties, - get_room_ventilation, - get_room_people, get_ventilation_schedule, - get_people_schedule, - get_lighting_schedule, - MissingEnergyPropertiesError, ) from PHX.model import project from PHX.model.schedules import lighting, occupancy, ventilation diff --git a/PHX/from_HBJSON/create_shw_devices.py b/PHX/from_HBJSON/create_shw_devices.py index 84aa4c9..87a8e6a 100644 --- a/PHX/from_HBJSON/create_shw_devices.py +++ b/PHX/from_HBJSON/create_shw_devices.py @@ -6,7 +6,7 @@ from honeybee_phhvac import hot_water_devices, hot_water_piping from PHX.model import hvac -from PHX.model.enums.hvac import PhxHotWaterPipingInchDiameterType, PhxHotWaterPipingMaterial, PhxHotWaterTankType +from PHX.model.enums.hvac import PhxHotWaterPipingMaterial, PhxHotWaterTankType from PHX.model.hvac import piping # -- Storage ------------------------------------------------------------------ diff --git a/PHX/from_HBJSON/create_variant.py b/PHX/from_HBJSON/create_variant.py index c9e2578..a119820 100644 --- a/PHX/from_HBJSON/create_variant.py +++ b/PHX/from_HBJSON/create_variant.py @@ -9,7 +9,6 @@ logger = logging.getLogger() from honeybee import room -from honeybee_energy.load.equipment import ElectricEquipment from honeybee_energy.load.process import Process from honeybee_energy.properties.room import RoomEnergyProperties from honeybee_energy_ph.properties.load import equipment, lighting, people, process @@ -28,11 +27,11 @@ from PHX.from_HBJSON import create_building, create_elec_equip, create_foundations, create_hvac from PHX.from_HBJSON._type_utils import ( + MissingEnergyPropertiesError, + get_room_electric_equipment, get_room_energy_properties, get_room_infiltration, get_room_people, - get_room_electric_equipment, - MissingEnergyPropertiesError, ) from PHX.from_HBJSON.create_shw_devices import ( build_phx_hw_heater, diff --git a/PHX/from_HBJSON/read_HBJSON_file.py b/PHX/from_HBJSON/read_HBJSON_file.py index ff18300..35e5f42 100644 --- a/PHX/from_HBJSON/read_HBJSON_file.py +++ b/PHX/from_HBJSON/read_HBJSON_file.py @@ -16,10 +16,6 @@ import pathlib from typing import Dict -import honeybee -import honeybee_energy -import honeybee_energy_ph -import honeybee_ph from honeybee import model # -- Dev Note: Do not remove ^ ------------------------------------------------ diff --git a/PHX/from_WUFI_XML/phx_converter.py b/PHX/from_WUFI_XML/phx_converter.py index b00c49f..9ae6af7 100644 --- a/PHX/from_WUFI_XML/phx_converter.py +++ b/PHX/from_WUFI_XML/phx_converter.py @@ -1,5 +1,3 @@ -from typing import Any, Dict - from PHX.from_WUFI_XML.phx_schemas import _PhxProject from PHX.from_WUFI_XML.wufi_file_schema import WUFIplusProject from PHX.model import project diff --git a/PHX/from_WUFI_XML/phx_schemas.py b/PHX/from_WUFI_XML/phx_schemas.py index 0dd932f..7fd1ea5 100644 --- a/PHX/from_WUFI_XML/phx_schemas.py +++ b/PHX/from_WUFI_XML/phx_schemas.py @@ -56,6 +56,7 @@ ) from PHX.model.enums.elec_equip import ElectricEquipmentType from PHX.model.enums.foundations import FoundationType +from PHX.model.enums.hvac import PhxHotWaterPipingInchDiameterType from PHX.model.enums.phius_certification import ( PhiusCertificationBuildingCategoryType, PhiusCertificationBuildingStatus, @@ -79,12 +80,7 @@ PhxHeatPumpMonthly, ) from PHX.model.hvac._base import PhxUsageProfile -from PHX.model.hvac.collection import ( - AnyMechDevice, - PhxMechanicalSystemCollection, - PhxRecirculationParameters, - PhxZoneCoverage, -) +from PHX.model.hvac.collection import PhxMechanicalSystemCollection, PhxRecirculationParameters, PhxZoneCoverage from PHX.model.hvac.cooling_params import ( PhxCoolingDehumidificationParams, PhxCoolingPanelParams, @@ -94,7 +90,6 @@ from PHX.model.hvac.ducting import PhxDuctElement, PhxDuctSegment, PhxVentDuctType from PHX.model.hvac.piping import ( PhxHotWaterPipingCalcMethod, - PhxHotWaterPipingInchDiameterType, PhxHotWaterPipingMaterial, PhxHotWaterSelectionUnitsOrFloors, PhxPipeBranch, diff --git a/PHX/hbjson_to_phpp.py b/PHX/hbjson_to_phpp.py index 4819de1..7279549 100755 --- a/PHX/hbjson_to_phpp.py +++ b/PHX/hbjson_to_phpp.py @@ -10,7 +10,6 @@ from PHX.from_HBJSON import create_project, read_HBJSON_file from PHX.PHPP import phpp_app -from PHX.PHPP.phpp_localization.shape_model import PhppShape from PHX.xl import xl_app if __name__ == "__main__": diff --git a/PHX/model/elec_equip.py b/PHX/model/elec_equip.py index 0212eaf..f091074 100644 --- a/PHX/model/elec_equip.py +++ b/PHX/model/elec_equip.py @@ -7,7 +7,7 @@ import sys import uuid from dataclasses import dataclass, field -from typing import Any, ClassVar, Dict, List, Optional, Type, Union +from typing import ClassVar, Dict, List, Optional, Type, Union from PHX.model.enums.elec_equip import ElectricEquipmentType diff --git a/PHX/model/enums/hvac.py b/PHX/model/enums/hvac.py index a4ba978..6a4cd9d 100644 --- a/PHX/model/enums/hvac.py +++ b/PHX/model/enums/hvac.py @@ -5,8 +5,6 @@ from enum import Enum -from honeybee_phhvac.hot_water_devices import PhHvacHotWaterTankType - class PhxFuelType(Enum): NATURAL_GAS = 1 diff --git a/PHX/model/geometry.py b/PHX/model/geometry.py index 22124de..8794d83 100644 --- a/PHX/model/geometry.py +++ b/PHX/model/geometry.py @@ -241,7 +241,7 @@ def __eq__(self, other: PhxPolygon) -> bool: if not len(self.child_polygon_ids) == len(other.child_polygon_ids): return False for _ in self.child_polygon_ids: - if not _ in other.child_polygon_ids: + if _ not in other.child_polygon_ids: return False # # -- Check the actual vertices diff --git a/PHX/model/hvac/collection.py b/PHX/model/hvac/collection.py index 533e467..0a31075 100644 --- a/PHX/model/hvac/collection.py +++ b/PHX/model/hvac/collection.py @@ -9,7 +9,7 @@ from copy import copy from dataclasses import dataclass, field from functools import reduce -from typing import Any, ClassVar, Dict, List, Optional, Union +from typing import ClassVar, Dict, List, Optional, Union from PHX.model import hvac from PHX.model.enums.hvac import DeviceType, PhxSupportiveDeviceType diff --git a/PHX/model/hvac/cooling_params.py b/PHX/model/hvac/cooling_params.py index a17b30d..9bac0d7 100644 --- a/PHX/model/hvac/cooling_params.py +++ b/PHX/model/hvac/cooling_params.py @@ -6,7 +6,7 @@ from __future__ import annotations from dataclasses import dataclass, field -from typing import Optional, Union +from typing import Union from PHX.model.hvac import _base diff --git a/PHX/model/hvac/piping.py b/PHX/model/hvac/piping.py index 76994d6..8e30bfe 100644 --- a/PHX/model/hvac/piping.py +++ b/PHX/model/hvac/piping.py @@ -12,11 +12,9 @@ from ladybug_geometry.geometry3d.pointvector import Point3D, Vector3D from ladybug_geometry.geometry3d.polyline import LineSegment3D -from ph_units.converter import convert from PHX.model.enums.hvac import ( PhxHotWaterPipingCalcMethod, - PhxHotWaterPipingInchDiameterType, PhxHotWaterPipingMaterial, PhxHotWaterSelectionUnitsOrFloors, ) diff --git a/PHX/model/loads/lighting.py b/PHX/model/loads/lighting.py index 46cc139..a556d65 100644 --- a/PHX/model/loads/lighting.py +++ b/PHX/model/loads/lighting.py @@ -5,8 +5,7 @@ from __future__ import annotations -from dataclasses import dataclass, field -from typing import Any, ClassVar +from dataclasses import dataclass @dataclass diff --git a/PHX/model/loads/occupancy.py b/PHX/model/loads/occupancy.py index 3cca1ca..e8a9f56 100644 --- a/PHX/model/loads/occupancy.py +++ b/PHX/model/loads/occupancy.py @@ -6,7 +6,6 @@ from __future__ import annotations from dataclasses import dataclass -from typing import ClassVar @dataclass diff --git a/PHX/model/project.py b/PHX/model/project.py index f973f06..24d63c4 100644 --- a/PHX/model/project.py +++ b/PHX/model/project.py @@ -277,7 +277,7 @@ def get_window_type(self, _key: str) -> PhxConstructionWindow: """Returns the PhxConstructionWindow with the specified key""" try: return self.window_types[_key] - except KeyError as e: + except KeyError: valid_keys = " | ".join([f"{k}::{v.display_name}" for k, v in self.window_types.items()]) msg = ( f"Window Type: '{_key}' not found in project collection? " diff --git a/PHX/model/schedules/lighting.py b/PHX/model/schedules/lighting.py index b2fef2f..ff872a0 100644 --- a/PHX/model/schedules/lighting.py +++ b/PHX/model/schedules/lighting.py @@ -7,7 +7,7 @@ import uuid from dataclasses import dataclass, field -from typing import Any, ClassVar, Union +from typing import ClassVar, Union @dataclass diff --git a/PHX/model/schedules/occupancy.py b/PHX/model/schedules/occupancy.py index e2319be..9114fd8 100644 --- a/PHX/model/schedules/occupancy.py +++ b/PHX/model/schedules/occupancy.py @@ -7,7 +7,7 @@ import uuid from dataclasses import dataclass, field -from typing import Any, ClassVar, Union +from typing import ClassVar, Union @dataclass diff --git a/PHX/to_WUFI_XML/xml_schemas.py b/PHX/to_WUFI_XML/xml_schemas.py index edeb986..b93ce3b 100644 --- a/PHX/to_WUFI_XML/xml_schemas.py +++ b/PHX/to_WUFI_XML/xml_schemas.py @@ -6,7 +6,7 @@ import operator import sys from functools import reduce -from typing import Any, Dict, List, Optional, TypeVar +from typing import Dict, List, Optional, TypeVar from ph_units.converter import convert diff --git a/PHX/xl/xl_app.py b/PHX/xl/xl_app.py index 5188c4d..3495301 100644 --- a/PHX/xl/xl_app.py +++ b/PHX/xl/xl_app.py @@ -17,7 +17,6 @@ xl_Framework_Protocol, xl_Range_Protocol, xl_Sheet_Protocol, - xl_Sheets_Protocol, ) # ----------------------------------------------------------------------------- diff --git a/PHX/xl/xl_typing.py b/PHX/xl/xl_typing.py index 302e1e2..eb70149 100644 --- a/PHX/xl/xl_typing.py +++ b/PHX/xl/xl_typing.py @@ -4,7 +4,7 @@ """XL-App Protocol Classes.""" import pathlib -from typing import Any, Callable, Dict, Optional, Tuple +from typing import Any, Dict, Optional, Tuple from PHX.xl import xl_data diff --git a/_test_model_1.py b/_test_model_1.py deleted file mode 100644 index e5a51b7..0000000 --- a/_test_model_1.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- -# -*- Python Version: 3.10 -*- - -"""Test the HBJSON>WUFI conversion with Model 1.hbjson which has None energy properties.""" - -import pathlib - -from rich import print - -from PHX.from_HBJSON import create_project, read_HBJSON_file -from PHX.to_WUFI_XML import xml_builder, xml_txt_to_file -from tests.conftest import _reload_phx_classes, _reset_phx_class_counters - -# -- Test file with None energy properties -SOURCE_FILE = pathlib.Path("sample/hbjson/Model 1.hbjson") -TARGET_FILE = pathlib.Path("sample/Model_1_output.xml") - -import logging - -logger = logging.getLogger() - - -def test_model_1_conversion(): - # -- Re-set all the PHX modules (counters) - _reload_phx_classes() - _reset_phx_class_counters() - - # --- Read in an existing HB_JSON and re-build the HB Objects - # ------------------------------------------------------------------------- - print("[bold green]- [/bold green]" * 50) - print(f"[bold green]> Reading in the HBJSON file: ./{SOURCE_FILE}[/bold green]") - hb_json_dict = read_HBJSON_file.read_hb_json_from_file(SOURCE_FILE) - hb_model = read_HBJSON_file.convert_hbjson_dict_to_hb_model(hb_json_dict) - - # --- Generate the PhxProject file. - # ------------------------------------------------------------------------- - print(f"[bold]> Converting HB Model to PHX Project...[/bold]") - phx_project = create_project.convert_hb_model_to_PhxProject( - hb_model, _group_components=True, _merge_faces=True - ) - - # --- Output the WUFI Project as an XML Text File - # ------------------------------------------------------------------------- - print(f"[bold]> Generating XML Text for the Honeybee Model: [{hb_model}][/bold]") - xml_txt = xml_builder.generate_WUFI_XML_from_object(phx_project) - - print(f"[bold]> Saving the XML file to: ./{TARGET_FILE}[/bold]") - xml_txt_to_file.write_XML_text_file(TARGET_FILE, xml_txt, False) - - print(f"[bold green]✓ Conversion successful![/bold green]") - - -if __name__ == "__main__": - try: - test_model_1_conversion() - except Exception as e: - print(f"[bold red]✗ Conversion failed with error:[/bold red]") - print(f"[red]{e}[/red]") - import traceback - traceback.print_exc() diff --git a/_testing_HBJSON_to_WUFI.py b/_testing_HBJSON_to_WUFI.py index ae4a143..d0d13be 100644 --- a/_testing_HBJSON_to_WUFI.py +++ b/_testing_HBJSON_to_WUFI.py @@ -3,12 +3,12 @@ """DEV SANDBOX: convert an HBJSON file over to WUFI XML format.""" +import logging import pathlib from rich import print from PHX.from_HBJSON import create_project, read_HBJSON_file -from PHX.model import building, certification, components, constructions, elec_equip, geometry, project, schedules from PHX.to_WUFI_XML import xml_builder, xml_txt_to_file from tests.conftest import _reload_phx_classes, _reset_phx_class_counters @@ -23,9 +23,8 @@ # -- Temp # SOURCE_FILES = [pathlib.Path("/Users/em/Desktop/hvac_equipment_ph_test.hbjson")] -# TARGET_DIR = pathlib.Path("sample") -import logging +# TARGET_DIR = pathlib.Path("sample") logger = logging.getLogger() diff --git a/_testing_WUFI_to_PHX.py b/_testing_WUFI_to_PHX.py index 1ab08a3..ae20df5 100644 --- a/_testing_WUFI_to_PHX.py +++ b/_testing_WUFI_to_PHX.py @@ -28,7 +28,7 @@ # ---------------------------------------------------------------- # -- 2) Convert the Pydantic WUFI model over to a PHX model - print(f"[green bold]> Converting XML-data to a PHX-Model[/green bold]") + print("[green bold]> Converting XML-data to a PHX-Model[/green bold]") phx_project = convert_WUFI_XML_to_PHX_project(wufi_xml_model) # ---------------------------------------------------------------- diff --git a/pyproject.toml b/pyproject.toml index 9203c56..900c275 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -24,3 +24,11 @@ directory = "_coverage_html" [tool.black] line-length = 120 + +[tool.ruff] +line-length = 120 +target-version = "py310" + +[tool.ruff.lint] +select = ["E", "F", "I", "N", "W"] +extend-ignore = ["F403", "F405", "N802"] diff --git a/tests/_source_gh/hbph_test_models.gh b/tests/_source_gh/hbph_test_models.gh index fcfd8a02d2e026fd949a6a67a706cf1cca1fdaff..e36742eec156938807795dfda822c1f87c5a8eac 100644 GIT binary patch literal 343049 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≷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

Z08xDeoXksYD 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

mx7+U&E{)`9`-zgWOPf)voqwSl)`V<(Nh$+;&6 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%0Dlj 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 AC;$Ke diff --git a/tests/_test_reference_files_hbjson/Default_Model_Single_Zone.hbjson b/tests/_test_reference_files_hbjson/Default_Model_Single_Zone.hbjson index c20f8e3..8345a5a 100644 --- a/tests/_test_reference_files_hbjson/Default_Model_Single_Zone.hbjson +++ b/tests/_test_reference_files_hbjson/Default_Model_Single_Zone.hbjson @@ -1,886 +1,730 @@ { - "version": "1.59.0", "angle_tolerance": 1.0, - "units": "Meters", - "properties": { - "ph": { - "type": "ModelPhPropertiesAbridged", - "bldg_segments": [ + "rooms": [ + { + "faces": [ { - "identifier": "e82c7dec-db76-4428-a9e9-50fa956daee4", - "source_energy_factors": { - "factors": [] + "display_name": "Room_1_b01e972f..Face0", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "phi_certification": { - "phpp_version": 9, - "attributes": { - "phpp_version": 9, - "tfa_override": null, - "certification_type": "1-PASSIVE HOUSE", - "primary_energy_type": "2-PER (RENEWABLE)", - "ihg_type": "2-STANDARD", - "enerphit_type": "2-ENERGY DEMAND METHOD", - "retrofit_type": "1-NEW BUILDING", - "building_use_type": "10-DWELLING", - "building_category_type": "1-RESIDENTIAL BUILDING", - "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", - "certification_class": "1-CLASSIC" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 1.0, + 0.0 + ], + "x": [ + -1.0, + 0.0, + -2.7755575615628914e-17 + ], + "o": [ + -4.0, + 4.0, + 1.5 + ] }, - "display_name": "9309eb8b-310c-4434-b1c9-7b88bcca49c5", - "user_data": {}, - "identifier": "9309eb8b-310c-4434-b1c9-7b88bcca49c5" + "boundary": [ + [ + 5.0, + 4.0, + 3.0 + ], + [ + 5.0, + 4.0, + 0.0 + ], + [ + 0.0, + 4.0, + 0.0 + ], + [ + 0.0, + 4.0, + 3.0 + ] + ], + "type": "Face3D" }, - "thermal_bridges": {}, - "name": "Unnamed_Bldg_Segment", - "set_points": { - "winter": 20.0, - "display_name": "ece64bbb-45b7-4854-b07a-4305cc89dd05", - "user_data": {}, - "summer": 25.0, - "identifier": "ece64bbb-45b7-4854-b07a-4305cc89dd05" + "identifier": "Room_1_b01e972f..Face0" + }, + { + "display_name": "Room_1_b01e972f..Face1", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "mech_room_temp": 20.0, - "display_name": "Unnamed_Bldg_Segment", - "wind_exposure_type": { - "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } }, - "co2e_factors": { - "factors": [] + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -1.0, + 0.0, + 0.0 + ], + "x": [ + 0.0, + -1.0, + 0.0 + ], + "o": [ + 0.0, + 0.0, + 1.5 + ] + }, + "boundary": [ + [ + 0.0, + 4.0, + 3.0 + ], + [ + 0.0, + 4.0, + 0.0 + ], + [ + 0.0, + 0.0, + 0.0 + ], + [ + 0.0, + 0.0, + 3.0 + ] + ], + "type": "Face3D" }, - "user_data": {}, - "num_dwelling_units": 1, - "site": { - "climate": { - "average_wind_speed": 4.0, - "ground": { - "depth_groundwater": 3, - "ground_density": 2000, - "flow_rate_groundwater": 0.050000000000000003, - "ground_heat_capacity": 1000, - "ground_thermal_conductivity": 2, - "display_name": "0a1301e7-f06b-4635-9a91-1eada99932d9", - "user_data": {}, - "identifier": "0a1301e7-f06b-4635-9a91-1eada99932d9" - }, - "peak_loads": { - "heat_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "4ff33fd6-41cf-4ace-a0f5-1bb561777b21", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "4ff33fd6-41cf-4ace-a0f5-1bb561777b21" - }, - "cooling_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "4116cb15-be0d-4340-9087-6b012d294503", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "4116cb15-be0d-4340-9087-6b012d294503" - }, - "display_name": "63a85b9a-9b40-48bd-94ba-e887ccb9cc78", - "cooling_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "6be4d2f7-9c77-4013-9141-323017f94671", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "6be4d2f7-9c77-4013-9141-323017f94671" - }, - "user_data": {}, - "heat_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "a2f0cc19-a0ed-4c4f-be3b-06a20f7b4d6d", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "a2f0cc19-a0ed-4c4f-be3b-06a20f7b4d6d" - }, - "identifier": "63a85b9a-9b40-48bd-94ba-e887ccb9cc78" - }, - "summer_daily_temperature_swing": 8.0, - "display_name": "New York", - "station_elevation": 0.0, - "user_data": {}, - "monthly_radiation": { - "west": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "cf9a2b03-036c-4488-aec7-caec99daa457", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "cf9a2b03-036c-4488-aec7-caec99daa457" - }, - "east": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "e5ad8cab-e31f-4574-b88d-2a054e064508", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "e5ad8cab-e31f-4574-b88d-2a054e064508" - }, - "display_name": "3fdf4544-5e10-48fd-90be-51fafe2c516d", - "south": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "d09801e4-b561-4197-9b50-b16e7271590d", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "d09801e4-b561-4197-9b50-b16e7271590d" - }, - "user_data": {}, - "north": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "44e3ca4c-283d-49b5-8752-5d053e7299bb", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "44e3ca4c-283d-49b5-8752-5d053e7299bb" - }, - "glob": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "52144027-4565-40bb-b72f-43699a42b74e", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "52144027-4565-40bb-b72f-43699a42b74e" - }, - "identifier": "3fdf4544-5e10-48fd-90be-51fafe2c516d" - }, - "monthly_temps": { - "sky_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "5a65813f-0da1-427f-a8dc-e3f3b2e197e4", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "5a65813f-0da1-427f-a8dc-e3f3b2e197e4" - }, - "ground_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "f1013c6d-3e14-4416-9746-53754f86d88c", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "f1013c6d-3e14-4416-9746-53754f86d88c" - }, - "dewpoints": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "64d8748a-338e-461a-8d98-ae11bee89e49", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "64d8748a-338e-461a-8d98-ae11bee89e49" - }, - "display_name": "273ac7dc-5e87-4f80-8252-dfa5d9e6b7d2", - "air_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "eb5ea2ef-c95f-48b4-80af-18bebad4f01c", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "eb5ea2ef-c95f-48b4-80af-18bebad4f01c" - }, - "user_data": {}, - "identifier": "273ac7dc-5e87-4f80-8252-dfa5d9e6b7d2" - }, - "identifier": "cec01604-87f0-41e5-a780-c339f2ff00f9" + "identifier": "Room_1_b01e972f..Face1" + }, + { + "display_name": "Room_1_b01e972f..Face2", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "display_name": "b7fb7b37-b908-48de-8c06-b2e6cb227b15", - "location": { - "hours_from_UTC": -4, - "display_name": "87dc1b1c-cef9-4c17-949e-d95cba0f00ae", - "latitude": 40.600000000000001, - "longitude": -73.799999999999997, - "site_elevation": null, - "user_data": {}, - "climate_zone": 1, - "identifier": "87dc1b1c-cef9-4c17-949e-d95cba0f00ae" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" }, - "user_data": {}, - "phpp_library_codes": { - "region_code": "New York", - "country_code": "US-United States of America", - "display_name": "US0055c-New York", - "dataset_name": "US0055c-New York", - "user_data": {}, - "identifier": "8f2bd20f-3321-4f64-8b46-be9b3cc4daf6" + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" }, - "identifier": "b7fb7b37-b908-48de-8c06-b2e6cb227b15" + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "non_combustible_materials": false, - "summer_hrv_bypass_mode": { - "value": "4-ALWAYS" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } }, - "phius_certification": { - "PHIUS2021_heating_load": 10.0, - "PHIUS2021_cooling_load": 10.0, - "icfa_override": null, - "building_status": { - "value": "1-IN_PLANNING" + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + -1.0, + 0.0 + ], + "x": [ + 1.0, + 0.0, + -2.7755575615628914e-17 + ], + "o": [ + 0.0, + 0.0, + 1.5 + ] }, - "PHIUS2021_heating_demand": 15.0, - "PHIUS2021_cooling_demand": 15.0, - "certification_program": { - "value": "7-PHIUS 2021 CORE" + "boundary": [ + [ + 0.0, + 0.0, + 3.0 + ], + [ + 0.0, + 0.0, + 0.0 + ], + [ + 5.0, + 0.0, + 0.0 + ], + [ + 5.0, + 0.0, + 3.0 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_1_b01e972f..Face2" + }, + { + "display_name": "Room_1_b01e972f..Face3", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "int_gains_use_school_defaults": false, - "int_gains_evap_per_person": 15, - "display_name": "b64b0092-c7c6-43a6-b01c-48b961c5bcb6", - "int_gains_num_toilets": 1, - "int_gains_dhw_marginal_perf_ratio": null, - "localization_selection_type": 2, - "user_data": {}, - "building_use_type": { - "value": "1-RESIDENTIAL" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" }, - "building_category_type": { - "value": "1-RESIDENTIAL BUILDING" + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, - "int_gains_flush_heat_loss": true, - "building_type": { - "value": "1-NEW_CONSTRUCTION" + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" }, - "int_gains_toilet_room_util_pat": null, - "identifier": "b64b0092-c7c6-43a6-b01c-48b961c5bcb6" + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "num_floor_levels": 1 - } - ], - "team": { - "owner": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "a097520b-88f5-45d1-8a8c-c1d6ac02a992", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "a097520b-88f5-45d1-8a8c-c1d6ac02a992" - }, - "display_name": "ec770353-273e-4107-aa4b-f4ebd5bc98ca", - "customer": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "f7e845f0-47fb-4aee-9822-114b32095b49", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "f7e845f0-47fb-4aee-9822-114b32095b49" - }, - "user_data": {}, - "designer": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "ace7f2c9-14e8-48ed-9e08-18fcd4d33c46", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "ace7f2c9-14e8-48ed-9e08-18fcd4d33c46" - }, - "building": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "469e7f34-9e85-48f7-aefc-b936555a2640", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "469e7f34-9e85-48f7-aefc-b936555a2640" - }, - "identifier": "ec770353-273e-4107-aa4b-f4ebd5bc98ca" - }, - "id_num": 0 - }, - "doe2": { - "type": "ModelDoe2Properties" - }, - "ph_hvac": { - "type": "ModelPhHvacProperties" - }, - "radiance": { - "type": "ModelRadianceProperties", - "modifier_sets": [], - "global_modifier_set": { - "floor_set": { - "interior_modifier": "generic_floor_0.20", - "type": "FloorModifierSetAbridged", - "exterior_modifier": "generic_floor_0.20" - }, - "shade_set": { - "interior_modifier": "generic_interior_shade_0.50", - "type": "ShadeModifierSetAbridged", - "exterior_modifier": "generic_exterior_shade_0.35" - }, - "air_boundary_modifier": "air_boundary", - "modifiers": [ - { - "g_reflectance": 0.20000000000000001, - "b_reflectance": 0.20000000000000001, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.20000000000000001, - "roughness": 0.0, - "identifier": "generic_floor_0.20" - }, - { - "specularity": 0.0, - "b_reflectance": 1.0, - "transmitted_spec": 1.0, - "dependencies": [], - "type": "Trans", - "g_reflectance": 1.0, - "r_reflectance": 1.0, - "roughness": 0.0, - "transmitted_diff": 1.0, - "modifier": null, - "identifier": "air_boundary" - }, - { - "identifier": "generic_interior_window_vis_0.88", - "type": "Glass", - "g_transmissivity": 0.95841543286105957, - "r_transmissivity": 0.95841543286105957, - "b_transmissivity": 0.95841543286105957, - "refraction_index": null, - "modifier": null, - "dependencies": [] - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_interior_shade_0.50" - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_wall_0.50" - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_opaque_door_0.50" - }, - { - "identifier": "generic_exterior_window_vis_0.64", - "type": "Glass", - "g_transmissivity": 0.69757618153843315, - "r_transmissivity": 0.69757618153843315, - "b_transmissivity": 0.69757618153843315, - "refraction_index": null, - "modifier": null, - "dependencies": [] - }, - { - "g_reflectance": 0.34999999999999998, - "b_reflectance": 0.34999999999999998, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.34999999999999998, - "roughness": 0.0, - "identifier": "generic_exterior_shade_0.35" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } }, - { - "g_reflectance": 0.80000000000000004, - "b_reflectance": 0.80000000000000004, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.80000000000000004, - "roughness": 0.0, - "identifier": "generic_ceiling_0.80" + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 1.0, + -0.0, + 1.1102230246251565e-16 + ], + "x": [ + 0.0, + 1.0, + 0.0 + ], + "o": [ + 5.0, + -5.0, + 1.5 + ] + }, + "boundary": [ + [ + 5.0, + 0.0, + 3.0 + ], + [ + 5.0, + 0.0, + 0.0 + ], + [ + 5.0, + 4.0, + 0.0 + ], + [ + 5.0, + 4.0, + 3.0 + ] + ], + "type": "Face3D" }, - { - "g_reflectance": 0.20000000000000001, - "b_reflectance": 0.20000000000000001, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.20000000000000001, - "roughness": 0.0, - "identifier": "generic_context_0.20" - } - ], - "aperture_set": { - "interior_modifier": "generic_interior_window_vis_0.88", - "type": "ApertureModifierSetAbridged", - "skylight_modifier": "generic_exterior_window_vis_0.64", - "operable_modifier": "generic_exterior_window_vis_0.64", - "window_modifier": "generic_exterior_window_vis_0.64" - }, - "type": "GlobalModifierSet", - "door_set": { - "overhead_modifier": "generic_opaque_door_0.50", - "exterior_modifier": "generic_opaque_door_0.50", - "exterior_glass_modifier": "generic_exterior_window_vis_0.64", - "interior_modifier": "generic_opaque_door_0.50", - "type": "DoorModifierSetAbridged", - "interior_glass_modifier": "generic_interior_window_vis_0.88" - }, - "context_modifier": "generic_context_0.20", - "wall_set": { - "interior_modifier": "generic_wall_0.50", - "type": "WallModifierSetAbridged", - "exterior_modifier": "generic_wall_0.50" + "identifier": "Room_1_b01e972f..Face3" }, - "roof_ceiling_set": { - "interior_modifier": "generic_ceiling_0.80", - "type": "RoofCeilingModifierSetAbridged", - "exterior_modifier": "generic_ceiling_0.80" - } - }, - "modifiers": [] - }, - "energy": { - "schedules": [ { - "identifier": "Generic Office Occupancy", - "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", + "display_name": "Room_1_b01e972f..Face4", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" }, - "type": "ScheduleRulesetProperties" + "type": "FacePropertiesAbridged" }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ + "boundary_condition": { + "type": "Ground" + }, + "type": "Face", + "face_type": "Floor", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -0.0, + -0.0, + -1.0 + ], + "x": [ 0.0, - 0.050000000000000003, + 1.0, 0.0 ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Default" + "o": [ + 2.5, + 2.0, + 0.0 + ] }, - { - "interpolate": false, - "values": [ - 0.0, - 1.0, - 0.050000000000000003 + "boundary": [ + [ + 5.0, + 4.0, + 0.0 ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_SmrDsn" - }, - { - "interpolate": false, - "values": [ + [ + 5.0, + 0.0, 0.0 ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_WntrDsn" - }, - { - "interpolate": false, - "values": [ + [ 0.0, - 0.10000000000000001, - 0.20000000000000001, - 0.94999999999999996, - 0.5, - 0.94999999999999996, - 0.29999999999999999, - 0.10000000000000001, - 0.050000000000000003 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Wkdy" - }, - { - "interpolate": false, - "values": [ 0.0, - 0.10000000000000001, - 0.29999999999999999, - 0.10000000000000001, - 0.050000000000000003, 0.0 ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 17, - 0 - ], - [ - 19, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Sat" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] + [ + 0.0, + 4.0, + 0.0 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_1_b01e972f..Face4" }, { - "identifier": "Generic Office Equipment", - "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", + "display_name": "Room_1_b01e972f..Face5", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "type": "FacePhPropertiesAbridged" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.2307553806, - 0.28810717499999999, - 0.2307553806 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" }, - { - "interpolate": false, - "values": [ + "type": "FacePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "RoofCeiling", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, 1.0 ], - "times": [ - [ - 0, - 0 - ] + "x": [ + 1.0, + 0.0, + 0.0 ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" + "o": [ + 2.5, + 2.0, + 3.0 + ] }, - { - "interpolate": false, - "values": [ - 0.0 + "boundary": [ + [ + 0.0, + 4.0, + 3.0 ], - "times": [ - [ - 0, - 0 - ] + [ + 0.0, + 0.0, + 3.0 ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" + [ + 5.0, + 0.0, + 3.0 + ], + [ + 5.0, + 4.0, + 3.0 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_1_b01e972f..Face5" + } + ], + "display_name": "Room_1", + "properties": { + "revive": { + "type": "RoomRevivePropertiesAbridged" + }, + "radiance": { + "type": "RoomRadiancePropertiesAbridged" + }, + "energy": { + "hvac": "Room_1_b01e972f Ideal Loads Air System", + "program_type": "Generic Office Program", + "type": "RoomEnergyPropertiesAbridged" + }, + "doe2": { + "type": "RoomDoe2Properties" + }, + "ph": { + "ph_foundations": [], + "spaces": [], + "type": "RoomPhPropertiesAbridged", + "specific_heat_capacity": "1-LIGHTWEIGHT", + "specific_heat_capacity_wh_m2k": null, + "ph_bldg_segment_id": "75427f77-327b-432f-bd9c-2675af05efee" + }, + "ph_hvac": { + "renewable_devices": [], + "ventilation_system": null, + "id_num": 0, + "supportive_devices": [], + "type": "RoomPhHvacPropertiesAbridged", + "exhaust_vent_devices": [], + "hot_water_system": null, + "heat_pump_systems": [], + "heating_systems": [] + }, + "type": "RoomPropertiesAbridged" + }, + "type": "Room", + "identifier": "Room_1_b01e972f" + } + ], + "display_name": "unnamed", + "properties": { + "revive": { + "grid_region": { + "region_code": "", + "description": "", + "filepath": "", + "region_name": "" + }, + "co2_measures": {}, + "id_num": 0, + "type": "ModelRevivePropertiesAbridged", + "national_emissions_factors": { + "GDP_million_USD": 0.0, + "country_name": "", + "type": "NationalEmissionsFactors", + "kg_CO2_per_USD": 0.0, + "us_trading_rank": 0, + "CO2_MT": 0.0 + }, + "analysis_duration": 50, + "envelope_labor_cost_fraction": 0.40000000000000002, + "fuels": { + "ELECTRICITY": { + "fuel_type": "ELECTRICITY", + "sale_price_per_kwh": 0.13200000000000001, + "type": "Fuel", + "annual_base_price": 200.0, + "purchase_price_per_kwh": 0.17984 + }, + "NATURAL_GAS": { + "fuel_type": "NATURAL_GAS", + "sale_price_per_kwh": 0.0, + "type": "Fuel", + "annual_base_price": 200.0, + "purchase_price_per_kwh": 0.047100000000000003 + } + } + }, + "radiance": { + "modifier_sets": [], + "type": "ModelRadianceProperties", + "global_modifier_set": { + "door_set": { + "exterior_modifier": "generic_opaque_door_0.50", + "overhead_modifier": "generic_opaque_door_0.50", + "interior_modifier": "generic_opaque_door_0.50", + "type": "DoorModifierSetAbridged", + "interior_glass_modifier": "generic_interior_window_vis_0.88", + "exterior_glass_modifier": "generic_exterior_window_vis_0.64" + }, + "roof_ceiling_set": { + "exterior_modifier": "generic_ceiling_0.80", + "type": "RoofCeilingModifierSetAbridged", + "interior_modifier": "generic_ceiling_0.80" + }, + "air_boundary_modifier": "air_boundary", + "type": "GlobalModifierSet", + "shade_set": { + "exterior_modifier": "generic_exterior_shade_0.35", + "type": "ShadeModifierSetAbridged", + "interior_modifier": "generic_interior_shade_0.50" + }, + "floor_set": { + "exterior_modifier": "generic_floor_0.20", + "type": "FloorModifierSetAbridged", + "interior_modifier": "generic_floor_0.20" + }, + "modifiers": [ + { + "roughness": 0.0, + "identifier": "generic_ceiling_0.80", + "dependencies": [], + "r_reflectance": 0.80000000000000004, + "type": "Plastic", + "b_reflectance": 0.80000000000000004, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.80000000000000004 + }, + { + "identifier": "generic_interior_window_vis_0.88", + "dependencies": [], + "modifier": null, + "g_transmissivity": 0.95841543286105957, + "b_transmissivity": 0.95841543286105957, + "r_transmissivity": 0.95841543286105957, + "type": "Glass", + "refraction_index": null + }, + { + "roughness": 0.0, + "identifier": "generic_wall_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_floor_0.20", + "dependencies": [], + "r_reflectance": 0.20000000000000001, + "type": "Plastic", + "b_reflectance": 0.20000000000000001, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.20000000000000001 + }, + { + "roughness": 0.0, + "identifier": "generic_exterior_shade_0.35", + "dependencies": [], + "r_reflectance": 0.34999999999999998, + "type": "Plastic", + "b_reflectance": 0.34999999999999998, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.34999999999999998 + }, + { + "r_reflectance": 1.0, + "transmitted_diff": 1.0, + "identifier": "air_boundary", + "g_reflectance": 1.0, + "b_reflectance": 1.0, + "roughness": 0.0, + "dependencies": [], + "specularity": 0.0, + "modifier": null, + "transmitted_spec": 1.0, + "type": "Trans" + }, + { + "identifier": "generic_exterior_window_vis_0.64", + "dependencies": [], + "modifier": null, + "g_transmissivity": 0.69757618153843315, + "b_transmissivity": 0.69757618153843315, + "r_transmissivity": 0.69757618153843315, + "type": "Glass", + "refraction_index": null + }, + { + "roughness": 0.0, + "identifier": "generic_interior_shade_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_opaque_door_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_context_0.20", + "dependencies": [], + "r_reflectance": 0.20000000000000001, + "type": "Plastic", + "b_reflectance": 0.20000000000000001, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.20000000000000001 + } + ], + "aperture_set": { + "interior_modifier": "generic_interior_window_vis_0.88", + "operable_modifier": "generic_exterior_window_vis_0.64", + "window_modifier": "generic_exterior_window_vis_0.64", + "type": "ApertureModifierSetAbridged", + "skylight_modifier": "generic_exterior_window_vis_0.64" + }, + "wall_set": { + "exterior_modifier": "generic_wall_0.50", + "type": "WallModifierSetAbridged", + "interior_modifier": "generic_wall_0.50" + }, + "context_modifier": "generic_context_0.20" + }, + "modifiers": [] + }, + "energy": { + "construction_sets": [], + "schedules": [ + { + "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ { - "interpolate": false, "values": [ - 0.2307553806, - 0.38123479599999999, - 0.47654349499999998, - 0.33358044650000002, - 0.28592609699999999, - 0.2307553806 + 0.050000000000000003, + 0.04311628, + 0.050000000000000003 ], "times": [ [ @@ -892,35 +736,50 @@ 0 ], [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 17, + 18, 0 - ], - [ - 19, + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" + }, + { + "values": [ + 1.0 + ], + "times": [ + [ + 0, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" }, { + "values": [ + 0.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" + }, + { "values": [ - 0.30767384079999999, - 0.38123479599999999, - 0.85777829100000003, - 0.76246959199999997, - 0.85777829100000003, - 0.47654349499999998, - 0.38123479599999999 + 0.050000000000000003, + 0.08623256, + 0.25869767999999999, + 0.12934883999999999, + 0.04311628, + 0.050000000000000003 ], "times": [ [ @@ -940,7 +799,50 @@ 0 ], [ - 13, + 17, + 0 + ], + [ + 19, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" + }, + { + "values": [ + 0.050000000000000003, + 0.10000000000000001, + 0.08623256, + 0.25869767999999999, + 0.77609304000000001, + 0.43116280000000001, + 0.25869767999999999, + 0.17246512, + 0.08623256, + 0.04311628 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, 0 ], [ @@ -950,120 +852,118 @@ [ 18, 0 + ], + [ + 20, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" } ], + "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Lighting", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" }, { - "default_day_schedule": "Seated Adult Activity_Day Schedule", + "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" + } }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Activity Level", "day_schedules": [ { - "interpolate": false, "values": [ - 120.0 + 0.2307553806, + 0.28810717499999999, + 0.2307553806 ], "times": [ [ 0, 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 ] ], "type": "ScheduleDay", - "identifier": "Seated Adult Activity_Day Schedule" - } - ], - "identifier": "Seated Adult Activity" - }, - { - "identifier": "Generic Office Heating", - "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", - "winter_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn", - "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", - "day_schedules": [ { - "interpolate": false, "values": [ - 15.600000000000000 + 1.0 ], "times": [ [ @@ -1072,12 +972,12 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" }, { - "interpolate": false, "values": [ - 15.600000000000000 + 0.0 ], "times": [ [ @@ -1086,16 +986,17 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" }, { - "interpolate": false, "values": [ - 15.600000000000000, - 17.600000000000001, - 19.600000000000001, - 21.0, - 15.600000000000000 + 0.2307553806, + 0.38123479599999999, + 0.47654349499999998, + 0.33358044650000002, + 0.28592609699999999, + 0.2307553806 ], "times": [ [ @@ -1103,33 +1004,39 @@ 0 ], [ - 5, + 6, 0 ], [ - 6, + 8, 0 ], [ - 7, + 12, 0 ], [ - 22, + 17, + 0 + ], + [ + 19, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" }, { - "interpolate": false, "values": [ - 15.600000000000000, - 17.800000000000001, - 20.0, - 21.0, - 15.600000000000000 + 0.30767384079999999, + 0.38123479599999999, + 0.85777829100000003, + 0.76246959199999997, + 0.85777829100000003, + 0.47654349499999998, + 0.38123479599999999 ], "times": [ [ @@ -1137,132 +1044,106 @@ 0 ], [ - 5, + 6, 0 ], [ - 6, + 8, 0 ], [ - 7, + 12, 0 ], [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy" - }, - { - "interpolate": false, - "values": [ - 15.600000000000000, - 17.800000000000001, - 20.0, - 21.0, - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, + 13, 0 ], [ - 6, - 0 - ], - [ - 7, + 17, 0 ], [ - 17, + 18, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" } ], + "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Equipment", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" }, { - "identifier": "Generic Office Lighting", - "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", + "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" + } }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", "day_schedules": [ { - "interpolate": false, "values": [ + 0.0, 0.050000000000000003, - 0.04311628, - 0.050000000000000003 + 0.0 ], "times": [ [ @@ -1279,24 +1160,34 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Default" }, { - "interpolate": false, "values": [ - 1.0 + 0.0, + 1.0, + 0.050000000000000003 ], "times": [ [ 0, 0 + ], + [ + 6, + 0 + ], + [ + 22, + 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_SmrDsn" }, { - "interpolate": false, "values": [ 0.0 ], @@ -1307,16 +1198,19 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_WntrDsn" }, { - "interpolate": false, "values": [ - 0.050000000000000003, - 0.08623256, - 0.25869767999999999, - 0.12934883999999999, - 0.04311628, + 0.0, + 0.10000000000000001, + 0.20000000000000001, + 0.94999999999999996, + 0.5, + 0.94999999999999996, + 0.29999999999999999, + 0.10000000000000001, 0.050000000000000003 ], "times": [ @@ -1328,6 +1222,10 @@ 6, 0 ], + [ + 7, + 0 + ], [ 8, 0 @@ -1336,148 +1234,135 @@ 12, 0 ], + [ + 13, + 0 + ], [ 17, 0 ], [ - 19, + 18, + 0 + ], + [ + 22, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Wkdy" }, { - "interpolate": false, "values": [ - 0.050000000000000003, + 0.0, 0.10000000000000001, - 0.08623256, - 0.25869767999999999, - 0.77609304000000001, - 0.43116280000000001, - 0.25869767999999999, - 0.17246512, - 0.08623256, - 0.04311628 + 0.29999999999999999, + 0.10000000000000001, + 0.050000000000000003, + 0.0 ], "times": [ [ 0, 0 ], - [ - 5, - 0 - ], [ 6, 0 ], - [ - 7, - 0 - ], [ 8, 0 ], [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 20, + 12, 0 ], [ - 22, + 17, 0 ], [ - 23, + 19, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Sat" } ], + "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Occupancy", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default" }, { - "identifier": "Generic Office Infiltration", - "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", - "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" + } }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", "day_schedules": [ { - "interpolate": false, "values": [ - 1.0 + 120.0 ], "times": [ [ @@ -1486,10 +1371,49 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" + "interpolate": false, + "identifier": "Seated Adult Activity_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "Seated Adult Activity", + "schedule_type_limit": "Activity Level", + "default_day_schedule": "Seated Adult Activity_Day Schedule" + }, + { + "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ { + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" + }, + { "values": [ 1.0, 0.25, @@ -1510,10 +1434,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn" }, { - "interpolate": false, "values": [ 1.0, 0.25, @@ -1534,10 +1458,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn" }, { - "interpolate": false, "values": [ 1.0, 0.25, @@ -1558,10 +1482,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy" }, { - "interpolate": false, "values": [ 1.0, 0.25, @@ -1582,79 +1506,79 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat" } ], + "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Infiltration", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default" }, { - "identifier": "Generic Office Cooling", - "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", - "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", + "winter_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" + } }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", "day_schedules": [ { - "interpolate": false, "values": [ - 26.699999999999999 + 15.600000000000000 ], "times": [ [ @@ -1663,16 +1587,30 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" }, { + "values": [ + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn" + }, + { "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 + 15.600000000000000, + 17.600000000000001, + 19.600000000000001, + 21.0, + 15.600000000000000 ], "times": [ [ @@ -1697,30 +1635,16 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" - }, - { "interpolate": false, - "values": [ - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn" }, { - "interpolate": false, "values": [ - 26.699999999999999, - 25.600000000000001, - 25.0, - 24.0, - 26.699999999999999 + 15.600000000000000, + 17.800000000000001, + 20.0, + 21.0, + 15.600000000000000 ], "times": [ [ @@ -1745,16 +1669,16 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy" }, { - "interpolate": false, "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 + 15.600000000000000, + 17.800000000000001, + 20.0, + 21.0, + 15.600000000000000 ], "times": [ [ @@ -1779,1987 +1703,2063 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat" } ], + "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] - } - ], - "construction_sets": [], - "global_construction_set": { - "floor_set": { - "ground_construction": "Generic Ground Slab", - "interior_construction": "Generic Interior Floor", - "exterior_construction": "Generic Exposed Floor", - "type": "FloorConstructionSetAbridged" + ], + "identifier": "Generic Office Heating", + "schedule_type_limit": "Temperature", + "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" }, - "shade_construction": "Generic Shade", - "materials": [ - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Painted Metal", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 7690.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsd0b2b4d3" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + { + "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "conductivity": 45.0, - "roughness": "Smooth", - "thickness": 0.0015, - "specific_heat": 410.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Wall Air Gap", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 1.2800000000000000, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs3ba86059" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" }, - "conductivity": 0.66700000000000004, - "roughness": "Smooth", - "thickness": 0.10000000000000001, - "specific_heat": 1000.0 + { + "values": [ + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" + }, + { + "values": [ + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" + }, + { + "values": [ + 26.699999999999999, + 25.600000000000001, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" + }, + { + "values": [ + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 17, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" + } + ], + "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", + "end_date": [ + 12, + 31 + ] + }, + { + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Cooling", + "schedule_type_limit": "Temperature", + "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" + } + ], + "constructions": [], + "materials": [], + "type": "ModelEnergyProperties", + "hvacs": [ + { + "sensible_heat_recovery": 0.0, + "demand_controlled_ventilation": false, + "latent_heat_recovery": 0.0, + "properties": { + "revive": { + "type": "IdealAirSystemReviveProperties", + "equipment_collection": { + "type": "PhiusReviveHVACEquipmentCollection", + "equipment": [] + } + }, + "type": "IdealAirSystemProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs1d8db53d", + "uris": [] + } + }, + "heating_air_temperature": 50.0, + "type": "IdealAirSystemAbridged", + "cooling_air_temperature": 13.0, + "cooling_limit": { + "type": "Autosize" }, + "identifier": "Room_1_b01e972f Ideal Loads Air System", + "economizer_type": "DifferentialDryBulb", + "heating_limit": { + "type": "Autosize" + } + } + ], + "global_construction_set": { + "door_set": { + "overhead_construction": "Generic Exterior Door", + "exterior_glass_construction": "Generic Double Pane", + "exterior_construction": "Generic Exterior Door", + "type": "DoorConstructionSetAbridged", + "interior_construction": "Generic Interior Door", + "interior_glass_construction": "Generic Single Pane" + }, + "context_construction": "Generic Context", + "roof_ceiling_set": { + "interior_construction": "Generic Interior Ceiling", + "type": "RoofCeilingConstructionSetAbridged", + "ground_construction": "Generic Underground Roof", + "exterior_construction": "Generic Roof" + }, + "constructions": [ { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic LW Concrete", - "solar_absorptance": 0.80000000000000004, - "type": "EnergyMaterial", - "visible_absorptance": 0.80000000000000004, - "density": 1280.0, + "solar_reflectance": 0.20000000000000001, + "visible_reflectance": 0.20000000000000001, "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "ShadeConstructionReviveProperties" }, + "type": "ShadeConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs2b7cbfca" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs49fd9d35", + "uris": [] + } }, - "conductivity": 0.53000000000000003, - "roughness": "MediumRough", - "thickness": 0.10000000000000001, - "specific_heat": 840.0 + "type": "ShadeConstruction", + "identifier": "Generic Context", + "is_specular": false }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Brick", - "solar_absorptance": 0.65000000000000002, - "type": "EnergyMaterial", - "visible_absorptance": 0.65000000000000002, - "density": 1920.0, + "identifier": "Generic Exposed Floor", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Painted Metal", + "Generic Ceiling Air Gap", + "Generic 50mm Insulation", + "Generic LW Concrete" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs196b775c" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0b1b5dd9", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "air_mixing_schedule": "Always On", + "properties": { + "type": "AirBoundaryConstructionProperties", + "ph": { + "id_num": 0, + "type": "AirBoundaryConstructionPhProperties" + } }, - "conductivity": 0.90000000000000002, - "roughness": "MediumRough", - "thickness": 0.10000000000000001, - "specific_heat": 790.0 + "type": "AirBoundaryConstructionAbridged", + "air_mixing_per_area": 0.10000000000000001, + "identifier": "Generic Air Boundary" }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Acoustic Tile", - "solar_absorptance": 0.20000000000000001, - "type": "EnergyMaterial", - "visible_absorptance": 0.20000000000000001, - "density": 368.0, + "identifier": "Generic Ground Slab", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs27157348" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs665bf479", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.059999999999999998, - "roughness": "MediumSmooth", - "thickness": 0.02, - "specific_heat": 590.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 25mm Insulation", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 43.0, + "identifier": "Generic Roof", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Roof Membrane", + "Generic 50mm Insulation", + "Generic LW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs40b26389" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs74f76d6b", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.029999999999999999, - "roughness": "MediumRough", - "thickness": 0.025000000000000001, - "specific_heat": 1210.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic HW Concrete", - "solar_absorptance": 0.80000000000000004, - "type": "EnergyMaterial", - "visible_absorptance": 0.80000000000000004, - "density": 2240.0, + "identifier": "Generic Interior Door", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 25mm Wood" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs2258995e" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc87f44f4", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 1.9500000000000000, - "roughness": "MediumRough", - "thickness": 0.20000000000000001, - "specific_heat": 900.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "identifier": "Generic Low-e Glass", - "solar_reflectance": 0.35999999999999999, - "conductivity": 1.0, - "visible_transmittance": 0.70999999999999996, - "dirt_correction": 1.0, - "visible_reflectance_back": 0.20999999999999999, - "type": "EnergyWindowMaterialGlazing", - "solar_reflectance_back": 0.35999999999999999, - "infrared_transmittance": 0.0, - "emissivity": 0.83999999999999997, - "visible_reflectance": 0.20999999999999999, + "solar_reflectance": 0.34999999999999998, + "visible_reflectance": 0.34999999999999998, "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGlazingReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "ShadeConstructionReviveProperties" }, + "type": "ShadeConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc83738ea" - }, - "type": "EnergyWindowMaterialGlazingsProperties" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc692eb41", + "uris": [] + } }, - "solar_transmittance": 0.45000000000000001, - "emissivity_back": 0.047, - "solar_diffusing": false, - "thickness": 0.0060000000000000001 + "type": "ShadeConstruction", + "identifier": "Generic Shade", + "is_specular": false }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Roof Membrane", - "solar_absorptance": 0.65000000000000002, - "type": "EnergyMaterial", - "visible_absorptance": 0.65000000000000002, - "density": 1120.0, + "identifier": "Generic Underground Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfa38963a" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs5a2fd953", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.16, - "roughness": "MediumRough", - "thickness": 0.01, - "specific_heat": 1460.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Gypsum Board", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 800.0, + "identifier": "Generic Interior Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Gypsum Board", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc76af7a3" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs43a7171d", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.16, - "roughness": "MediumSmooth", - "thickness": 0.012699999999999999, - "specific_heat": 1090.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 50mm Insulation", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 43.0, + "identifier": "Generic Interior Floor", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Acoustic Tile", + "Generic Ceiling Air Gap", + "Generic LW Concrete" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfd186077" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs5673b08d", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.029999999999999999, - "roughness": "MediumRough", - "thickness": 0.050000000000000003, - "specific_heat": 1210.0 + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "gas_type": "Air", - "identifier": "Generic Window Air Gap", - "thickness": 0.012699999999999999, + "identifier": "Generic Exterior Door", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Painted Metal", + "Generic 25mm Insulation", + "Generic Painted Metal" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGasReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs7d43404d" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsab8663d9", + "uris": [] }, - "type": "EnergyWindowMaterialGasProperties" - }, - "type": "EnergyWindowMaterialGas" + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 25mm Wood", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 608.0, + "identifier": "Generic Single Pane", + "type": "WindowConstructionAbridged", + "materials": [ + "Generic Clear Glass" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "WindowConstructionReviveProperties" }, + "type": "WindowConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs7a22b428" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs1c12692e", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.14999999999999999, - "roughness": "MediumSmooth", - "thickness": 0.025399999999999999, - "specific_heat": 1630.0 + "id_num": 0, + "type": "WindowConstructionPhProperties" + } + } }, { - "identifier": "Generic Clear Glass", - "solar_reflectance": 0.070000000000000007, - "conductivity": 1.0, - "visible_transmittance": 0.88, - "dirt_correction": 1.0, - "visible_reflectance_back": 0.080000000000000002, - "type": "EnergyWindowMaterialGlazing", - "solar_reflectance_back": 0.070000000000000007, - "infrared_transmittance": 0.0, - "emissivity": 0.83999999999999997, - "visible_reflectance": 0.080000000000000002, + "identifier": "Generic Exterior Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Brick", + "Generic LW Concrete", + "Generic 50mm Insulation", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGlazingReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8b75e2ab" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs495f6d7a", + "uris": [] }, - "type": "EnergyWindowMaterialGlazingsProperties" - }, - "solar_transmittance": 0.77000000000000002, - "emissivity_back": 0.83999999999999997, - "solar_diffusing": false, - "thickness": 0.0060000000000000001 + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } }, { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Ceiling Air Gap", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 1.2800000000000000, + "identifier": "Generic Underground Roof", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" + ], "properties": { "revive": { "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs89feed43" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs3dd19604", + "uris": [] }, "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.55600000000000005, - "roughness": "Smooth", - "thickness": 0.10000000000000001, - "specific_heat": 1000.0 - } - ], - "constructions": [ + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, { - "solar_reflectance": 0.20000000000000001, - "visible_reflectance": 0.20000000000000001, + "identifier": "Generic Double Pane", + "type": "WindowConstructionAbridged", + "materials": [ + "Generic Low-e Glass", + "Generic Window Air Gap", + "Generic Clear Glass" + ], "properties": { "revive": { - "type": "ShadeConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "WindowConstructionReviveProperties" }, + "type": "WindowConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs52c33215" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsec801696", + "uris": [] }, - "type": "ShadeConstructionProperties" - }, - "type": "ShadeConstruction", - "is_specular": false, - "identifier": "Generic Context" + "ph": { + "id_num": 0, + "type": "WindowConstructionPhProperties" + } + } }, { + "identifier": "Generic Interior Ceiling", "type": "OpaqueConstructionAbridged", "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete", - "Generic Wall Air Gap", - "Generic Gypsum Board" + "Generic LW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" }, + "type": "OpaqueConstructionProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsa5d391f7" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfse861a36c", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Underground Wall" - }, + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + } + ], + "type": "GlobalConstructionSet", + "materials": [ { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Painted Metal", - "Generic 25mm Insulation", - "Generic Painted Metal" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfca5e0eb" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc8269c93", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Exterior Door" + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.02, + "identifier": "Generic Acoustic Tile", + "conductivity": 0.059999999999999998, + "specific_heat": 590.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.20000000000000001, + "density": 368.0, + "visible_absorptance": 0.20000000000000001 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsdf3d5298" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6a282e09", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Ground Slab" + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.10000000000000001, + "identifier": "Generic Ceiling Air Gap", + "conductivity": 0.55600000000000005, + "specific_heat": 1000.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 1.2800000000000000, + "visible_absorptance": 0.69999999999999996 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic LW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], + "type": "EnergyWindowMaterialGlazing", + "solar_reflectance": 0.070000000000000007, + "solar_reflectance_back": 0.070000000000000007, + "dirt_correction": 1.0, + "solar_diffusing": false, + "visible_reflectance_back": 0.080000000000000002, + "visible_reflectance": 0.080000000000000002, + "thickness": 0.0060000000000000001, + "identifier": "Generic Clear Glass", + "emissivity_back": 0.83999999999999997, + "solar_transmittance": 0.77000000000000002, + "visible_transmittance": 0.88, + "emissivity": 0.83999999999999997, + "infrared_transmittance": 0.0, + "conductivity": 1.0, "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGlazingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyWindowMaterialGlazingsProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsca23f1d1" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Ceiling" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs940e8680", + "uris": [] + } + } }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs3a37a589" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs456ea39a", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Underground Roof" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.10000000000000001, + "identifier": "Generic LW Concrete", + "conductivity": 0.53000000000000003, + "specific_heat": 840.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.80000000000000004, + "density": 1280.0, + "visible_absorptance": 0.80000000000000004 }, { - "type": "WindowConstructionAbridged", - "materials": [ - "Generic Clear Glass" - ], + "type": "EnergyWindowMaterialGlazing", + "solar_reflectance": 0.35999999999999999, + "solar_reflectance_back": 0.35999999999999999, + "dirt_correction": 1.0, + "solar_diffusing": false, + "visible_reflectance_back": 0.20999999999999999, + "visible_reflectance": 0.20999999999999999, + "thickness": 0.0060000000000000001, + "identifier": "Generic Low-e Glass", + "emissivity_back": 0.047, + "solar_transmittance": 0.45000000000000001, + "visible_transmittance": 0.70999999999999996, + "emissivity": 0.83999999999999997, + "infrared_transmittance": 0.0, + "conductivity": 1.0, "properties": { "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGlazingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyWindowMaterialGlazingsProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs0ca1a2e8" - }, - "ph": { - "type": "WindowConstructionPhProperties", - "id_num": 0 - }, - "type": "WindowConstructionProperties" - }, - "identifier": "Generic Single Pane" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs70be919c", + "uris": [] + } + } }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Acoustic Tile", - "Generic Ceiling Air Gap", - "Generic LW Concrete" - ], + "type": "EnergyWindowMaterialGas", + "identifier": "Generic Window Air Gap", + "thickness": 0.012699999999999999, "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGasReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyWindowMaterialGasProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc891ca92" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsba113c0a", + "uris": [] + } }, - "identifier": "Generic Interior Floor" + "gas_type": "Air" }, { - "solar_reflectance": 0.34999999999999998, - "visible_reflectance": 0.34999999999999998, "properties": { "revive": { - "type": "ShadeConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs6388f9ce" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfscf4686b6", + "uris": [] }, - "type": "ShadeConstructionProperties" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "type": "ShadeConstruction", - "is_specular": false, - "identifier": "Generic Shade" + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.0015, + "identifier": "Generic Painted Metal", + "conductivity": 45.0, + "specific_heat": 410.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 7690.0, + "visible_absorptance": 0.5 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Gypsum Board", - "Generic Wall Air Gap", - "Generic Gypsum Board" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs43876e75" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6ba41ac4", + "uris": [] }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Wall" - }, - { - "properties": { "ph": { - "type": "AirBoundaryConstructionPhProperties", - "id_num": 0 - }, - "type": "AirBoundaryConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "type": "AirBoundaryConstructionAbridged", - "air_mixing_per_area": 0.10000000000000001, - "air_mixing_schedule": "Always On", - "identifier": "Generic Air Boundary" + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.025399999999999999, + "identifier": "Generic 25mm Wood", + "conductivity": 0.14999999999999999, + "specific_heat": 1630.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 608.0, + "visible_absorptance": 0.5 }, { - "type": "WindowConstructionAbridged", - "materials": [ - "Generic Low-e Glass", - "Generic Window Air Gap", - "Generic Clear Glass" - ], "properties": { "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse9f88510" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs10cf9e98", + "uris": [] }, "ph": { - "type": "WindowConstructionPhProperties", - "id_num": 0 - }, - "type": "WindowConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Double Pane" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.20000000000000001, + "identifier": "Generic HW Concrete", + "conductivity": 1.9500000000000000, + "specific_heat": 900.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.80000000000000004, + "density": 2240.0, + "visible_absorptance": 0.80000000000000004 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Painted Metal", - "Generic Ceiling Air Gap", - "Generic 50mm Insulation", - "Generic LW Concrete" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse55a9158" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsecbfefc4", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Exposed Floor" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.050000000000000003, + "identifier": "Generic 50mm Insulation", + "conductivity": 0.029999999999999999, + "specific_heat": 1210.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 43.0, + "visible_absorptance": 0.69999999999999996 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Brick", - "Generic LW Concrete", - "Generic 50mm Insulation", - "Generic Wall Air Gap", - "Generic Gypsum Board" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs28d69a4b" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs8ee60a00", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Exterior Wall" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.01, + "identifier": "Generic Roof Membrane", + "conductivity": 0.16, + "specific_heat": 1460.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.65000000000000002, + "density": 1120.0, + "visible_absorptance": 0.65000000000000002 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 25mm Wood" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc8b9ca31" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsae0d58c7", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Interior Door" + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.10000000000000001, + "identifier": "Generic Wall Air Gap", + "conductivity": 0.66700000000000004, + "specific_heat": 1000.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 1.2800000000000000, + "visible_absorptance": 0.69999999999999996 }, { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Roof Membrane", - "Generic 50mm Insulation", - "Generic LW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", "ref": { - "image_refs": [], - "uris": [], + "user_data": {}, + "external_identifiers": {}, "document_refs": [], - "type": "_HBObjectWithReferences", "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse912f9d8" + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs79968724", + "uris": [] }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "Generic Roof" - } - ], - "context_construction": "Generic Context", - "aperture_set": { - "skylight_construction": "Generic Double Pane", - "window_construction": "Generic Double Pane", - "operable_construction": "Generic Double Pane", - "type": "ApertureConstructionSetAbridged", - "interior_construction": "Generic Single Pane" - }, - "air_boundary_construction": "Generic Air Boundary", - "type": "GlobalConstructionSet", - "door_set": { - "exterior_construction": "Generic Exterior Door", - "interior_glass_construction": "Generic Single Pane", - "overhead_construction": "Generic Exterior Door", - "exterior_glass_construction": "Generic Double Pane", - "type": "DoorConstructionSetAbridged", - "interior_construction": "Generic Interior Door" - }, - "wall_set": { - "ground_construction": "Generic Underground Wall", - "interior_construction": "Generic Interior Wall", - "exterior_construction": "Generic Exterior Wall", - "type": "WallConstructionSetAbridged" - }, - "roof_ceiling_set": { - "ground_construction": "Generic Underground Roof", - "interior_construction": "Generic Interior Ceiling", - "exterior_construction": "Generic Roof", - "type": "RoofCeilingConstructionSetAbridged" - } - }, - "program_types": [ - { - "lighting": { - "visible_fraction": 0.20000000000000001, - "return_air_fraction": 0.0, - "radiant_fraction": 0.69999999999999996, + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.012699999999999999, + "identifier": "Generic Gypsum Board", + "conductivity": 0.16, + "specific_heat": 1090.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 800.0, + "visible_absorptance": 0.5 + }, + { "properties": { "revive": { "id_num": 0, - "cost": 0.0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", "labor_fraction": 0.40000000000000002, - "type": "LightingReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "LightingPhProperties", - "target_lux_height": 0.80000000000000004, - "target_lux": 300, - "id_num": 0 + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "type": "LightingProperties" - }, - "type": "LightingAbridged", - "watts_per_area": 10.550000000000001, - "schedule": "Generic Office Lighting", - "identifier": "Generic Office Lighting" - }, - "people": { - "occupancy_schedule": "Generic Office Occupancy", - "radiant_fraction": 0.29999999999999999, - "people_per_area": 0.056500000000000002, - "properties": { - "revive": { - "type": "PeopleReviveProperties", - "id_num": 0 + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs2f053209", + "uris": [] }, "ph": { + "user_data": {}, "id_num": 0, - "number_bedrooms": 0, - "type": "PeoplePhProperties", - "number_people": 0.0, - "dwellings": { - "identifier": "3efe775f-fd49-46b8-abb0-70ac606e192c", - "num_dwellings": 0 + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] } - }, - "type": "PeopleProperties" - }, - "type": "PeopleAbridged", - "latent_fraction": { - "type": "Autocalculate" + } }, - "activity_schedule": "Seated Adult Activity", - "identifier": "Generic Office People" - }, - "ventilation": { - "type": "VentilationAbridged", - "identifier": "Generic Office Ventilation", - "flow_per_person": 0.0023600000000000001, - "flow_per_area": 0.00030499999999999999 - }, - "type": "ProgramTypeAbridged", - "setpoint": { - "type": "SetpointAbridged", - "cooling_schedule": "Generic Office Cooling", - "identifier": "Generic Office Setpoints", - "heating_schedule": "Generic Office Heating" - }, - "infiltration": { - "type": "InfiltrationAbridged", - "flow_per_exterior_area": 0.00022660000000000001, - "identifier": "Generic Office Infiltration", - "schedule": "Generic Office Infiltration" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.10000000000000001, + "identifier": "Generic Brick", + "conductivity": 0.90000000000000002, + "specific_heat": 790.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.65000000000000002, + "density": 1920.0, + "visible_absorptance": 0.65000000000000002 }, - "electric_equipment": { - "radiant_fraction": 0.5, - "lost_fraction": 0.0, + { "properties": { "revive": { - "type": "ElectricEquipmentReviveProperties", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsa8965141", + "uris": [] }, "ph": { - "type": "ElectricEquipmentPhProperties", - "equipment_collection": { - "equipment_set": {} + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] } - }, - "type": "ElectricEquipmentProperties" + } }, - "type": "ElectricEquipmentAbridged", - "watts_per_area": 10.330000000000000, - "schedule": "Generic Office Equipment", - "latent_fraction": 0.0, - "identifier": "Generic Office Equipment" - }, - "identifier": "Generic Office Program" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.025000000000000001, + "identifier": "Generic 25mm Insulation", + "conductivity": 0.029999999999999999, + "specific_heat": 1210.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 43.0, + "visible_absorptance": 0.69999999999999996 + } + ], + "floor_set": { + "interior_construction": "Generic Interior Floor", + "type": "FloorConstructionSetAbridged", + "ground_construction": "Generic Ground Slab", + "exterior_construction": "Generic Exposed Floor" + }, + "shade_construction": "Generic Shade", + "air_boundary_construction": "Generic Air Boundary", + "aperture_set": { + "skylight_construction": "Generic Double Pane", + "interior_construction": "Generic Single Pane", + "type": "ApertureConstructionSetAbridged", + "operable_construction": "Generic Double Pane", + "window_construction": "Generic Double Pane" + }, + "wall_set": { + "interior_construction": "Generic Interior Wall", + "type": "WallConstructionSetAbridged", + "ground_construction": "Generic Underground Wall", + "exterior_construction": "Generic Exterior Wall" } - ], - "materials": [], - "constructions": [], + }, "shws": [], "schedule_type_limits": [ { + "type": "ScheduleTypeLimit", "lower_limit": 0.0, + "identifier": "Activity Level", "upper_limit": { "type": "NoLimit" }, - "unit_type": "ActivityLevel", - "type": "ScheduleTypeLimit", "numeric_type": "Continuous", - "identifier": "Activity Level" + "unit_type": "ActivityLevel" }, { + "type": "ScheduleTypeLimit", "lower_limit": -273.14999999999998, + "identifier": "Temperature", "upper_limit": { "type": "NoLimit" }, - "unit_type": "Temperature", - "type": "ScheduleTypeLimit", "numeric_type": "Continuous", - "identifier": "Temperature" + "unit_type": "Temperature" }, { + "type": "ScheduleTypeLimit", "lower_limit": 0.0, + "identifier": "Fractional", "upper_limit": 1.0, - "unit_type": "Dimensionless", - "type": "ScheduleTypeLimit", "numeric_type": "Continuous", - "identifier": "Fractional" + "unit_type": "Dimensionless" } ], - "type": "ModelEnergyProperties", "ventilation_simulation_control": { - "aspect_ratio": 1.0, - "reference_temperature": 20.0, "vent_control_type": "SingleZone", + "aspect_ratio": 1.0, + "long_axis_angle": 0.0, "reference_humidity_ratio": 0.0, "type": "VentilationSimulationControl", - "long_axis_angle": 0.0, + "reference_pressure": 101325.0, "building_type": "LowRise", - "reference_pressure": 101325.0 + "reference_temperature": 20.0 }, - "hvacs": [ + "electric_load_center": { + "inverter_efficiency": 0.95999999999999996, + "type": "ElectricLoadCenter", + "inverter_dc_to_ac_size_ratio": 1.1000000000000001 + }, + "program_types": [ { - "cooling_air_temperature": 13.0, - "demand_controlled_ventilation": false, - "properties": { - "revive": { - "type": "IdealAirSystemReviveProperties", - "equipment_collection": { - "type": "PhiusReviveHVACEquipmentCollection", - "equipment": [] + "electric_equipment": { + "properties": { + "revive": { + "id_num": 0, + "type": "ElectricEquipmentReviveProperties" + }, + "type": "ElectricEquipmentProperties", + "ph": { + "type": "ElectricEquipmentPhProperties", + "equipment_collection": { + "equipment_set": {} + } } }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc085e0a0" - }, - "type": "IdealAirSystemProperties" - }, - "type": "IdealAirSystemAbridged", - "heating_limit": { - "type": "Autosize" + "latent_fraction": 0.0, + "radiant_fraction": 0.5, + "lost_fraction": 0.0, + "schedule": "Generic Office Equipment", + "watts_per_area": 10.330000000000000, + "type": "ElectricEquipmentAbridged", + "identifier": "Generic Office Equipment" }, - "cooling_limit": { - "type": "Autosize" - }, - "latent_heat_recovery": 0.0, - "heating_air_temperature": 50.0, - "economizer_type": "DifferentialDryBulb", - "sensible_heat_recovery": 0.0, - "identifier": "Room_1_59f7ed65 Ideal Loads Air System" - } - ], - "electric_load_center": { - "type": "ElectricLoadCenter", - "inverter_dc_to_ac_size_ratio": 1.1000000000000001, - "inverter_efficiency": 0.95999999999999996 - } - }, - "type": "ModelProperties", - "revive": { - "national_emissions_factors": { - "country_name": "", - "kg_CO2_per_USD": 0.0, - "us_trading_rank": 0, - "type": "NationalEmissionsFactors", - "CO2_MT": 0.0, - "GDP_million_USD": 0.0 - }, - "fuels": { - "NATURAL_GAS": { - "type": "Fuel", - "sale_price_per_kwh": 0.0, - "purchase_price_per_kwh": 0.047100000000000003, - "fuel_type": "NATURAL_GAS", - "annual_base_price": 200.0 - }, - "ELECTRICITY": { - "type": "Fuel", - "sale_price_per_kwh": 0.13200000000000001, - "purchase_price_per_kwh": 0.17984, - "fuel_type": "ELECTRICITY", - "annual_base_price": 200.0 - } - }, - "grid_region": { - "region_name": "", - "description": "", - "filepath": "", - "region_code": "" - }, - "id_num": 0, - "co2_measures": {}, - "type": "ModelRevivePropertiesAbridged", - "analysis_duration": 50, - "envelope_labor_cost_fraction": 0.40000000000000002 - } - }, - "display_name": "unnamed", - "type": "Model", - "rooms": [ - { - "faces": [ - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { + "people": { + "properties": { + "revive": { + "id_num": 0, + "type": "PeopleReviveProperties" + }, + "type": "PeopleProperties", + "ph": { + "dwellings": { + "identifier": "a4a99464-ce1b-461b-8997-f524a2dad2c9", + "num_dwellings": 0 + }, + "number_bedrooms": 0, + "id_num": 0, + "number_people": 0.0, + "type": "PeoplePhProperties" + } + }, + "latent_fraction": { "type": "Autocalculate" }, - "type": "Outdoors" + "radiant_fraction": 0.29999999999999999, + "type": "PeopleAbridged", + "people_per_area": 0.056500000000000002, + "activity_schedule": "Seated Adult Activity", + "occupancy_schedule": "Generic Office Occupancy", + "identifier": "Generic Office People" }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } + "infiltration": { + "schedule": "Generic Office Infiltration", + "identifier": "Generic Office Infiltration", + "flow_per_exterior_area": 0.00022660000000000001, + "type": "InfiltrationAbridged" }, - "display_name": "Room_1_59f7ed65..Face0", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.0, - 4.0, - 3.0 - ], - [ - 5.0, - 4.0, - 0.0 - ], - [ - 0.0, - 4.0, - 0.0 - ], - [ - 0.0, - 4.0, - 3.0 - ] - ], - "plane": { - "o": [ - -4.0, - 4.0, - 1.5 - ], - "x": [ - -1.0, - 0.0, - -2.7755575615628914e-17 - ], - "n": [ - 0.0, - 1.0, - 0.0 - ], - "type": "Plane" - } + "setpoint": { + "identifier": "Generic Office Setpoints", + "heating_schedule": "Generic Office Heating", + "type": "SetpointAbridged", + "cooling_schedule": "Generic Office Cooling" + }, + "ventilation": { + "identifier": "Generic Office Ventilation", + "flow_per_person": 0.0023600000000000001, + "type": "VentilationAbridged", + "flow_per_area": 0.00030499999999999999 }, - "identifier": "Room_1_59f7ed65..Face0" + "type": "ProgramTypeAbridged", + "identifier": "Generic Office Program", + "lighting": { + "visible_fraction": 0.20000000000000001, + "properties": { + "revive": { + "id_num": 0, + "type": "LightingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "LightingProperties", + "ph": { + "target_lux": 300, + "id_num": 0, + "target_lux_height": 0.80000000000000004, + "type": "LightingPhProperties" + } + }, + "radiant_fraction": 0.69999999999999996, + "schedule": "Generic Office Lighting", + "watts_per_area": 10.550000000000001, + "type": "LightingAbridged", + "return_air_fraction": 0.0, + "identifier": "Generic Office Lighting" + } + } + ] + }, + "doe2": { + "type": "ModelDoe2Properties" + }, + "ph": { + "team": { + "user_data": {}, + "customer": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "dd05845d-d084-4ef7-aeee-981ae8acd7ad", + "post_code": null, + "name": null, + "identifier": "dd05845d-d084-4ef7-aeee-981ae8acd7ad", + "email": null, + "city": null + }, + "designer": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "c7a8eae6-5ccc-4bc1-a8a9-805bd01edc49", + "post_code": null, + "name": null, + "identifier": "c7a8eae6-5ccc-4bc1-a8a9-805bd01edc49", + "email": null, + "city": null + }, + "display_name": "204dd9d9-6dca-4df3-886a-e228e81b7bdf", + "owner": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "974deefc-f92f-411f-aa5d-2a2ba5dd3646", + "post_code": null, + "name": null, + "identifier": "974deefc-f92f-411f-aa5d-2a2ba5dd3646", + "email": null, + "city": null + }, + "building": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "32fd9b9d-9ea6-443b-832d-654b81a44f63", + "post_code": null, + "name": null, + "identifier": "32fd9b9d-9ea6-443b-832d-654b81a44f63", + "email": null, + "city": null }, + "identifier": "204dd9d9-6dca-4df3-886a-e228e81b7bdf" + }, + "id_num": 0, + "type": "ModelPhPropertiesAbridged", + "bldg_segments": [ { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" + "user_data": {}, + "set_points": { + "user_data": {}, + "summer": 25.0, + "display_name": "31ae9d5e-7e43-44bf-867e-c05efa354e40", + "winter": 20.0, + "identifier": "31ae9d5e-7e43-44bf-867e-c05efa354e40" }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "display_name": "Unnamed_Bldg_Segment", + "site": { + "user_data": {}, + "location": { + "user_data": {}, + "latitude": 40.600000000000001, + "hours_from_UTC": -4, + "display_name": "5d33a623-5cdd-470d-9f72-8053938f8680", + "climate_zone": 1, + "site_elevation": null, + "identifier": "5d33a623-5cdd-470d-9f72-8053938f8680", + "longitude": -73.799999999999997 }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "phpp_library_codes": { + "user_data": {}, + "dataset_name": "US0055c-New York", + "display_name": "US0055c-New York", + "identifier": "bd33516e-f102-4655-9d9a-5b41920e9eba", + "country_code": "US-United States of America", + "region_code": "New York" }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_1_59f7ed65..Face1", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - 4.0, - 3.0 - ], - [ - 0.0, - 4.0, - 0.0 - ], - [ - 0.0, - 0.0, - 0.0 - ], - [ - 0.0, - 0.0, - 3.0 - ] - ], - "plane": { - "o": [ - 0.0, - 0.0, - 1.5 - ], - "x": [ - 0.0, - -1.0, - 0.0 - ], - "n": [ - -1.0, - 0.0, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_1_59f7ed65..Face1" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_1_59f7ed65..Face2", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - 0.0, - 3.0 - ], - [ - 0.0, - 0.0, - 0.0 - ], - [ - 5.0, - 0.0, - 0.0 - ], - [ - 5.0, - 0.0, - 3.0 - ] - ], - "plane": { - "o": [ - 0.0, - 0.0, - 1.5 - ], - "x": [ - 1.0, - 0.0, - -2.7755575615628914e-17 - ], - "n": [ - 0.0, - -1.0, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_1_59f7ed65..Face2" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_1_59f7ed65..Face3", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.0, - 0.0, - 3.0 - ], - [ - 5.0, - 0.0, - 0.0 - ], - [ - 5.0, - 4.0, - 0.0 - ], - [ - 5.0, - 4.0, - 3.0 - ] - ], - "plane": { - "o": [ - 5.0, - -5.0, - 1.5 - ], - "x": [ - 0.0, - 1.0, - 0.0 - ], - "n": [ - 1.0, - -0.0, - 1.1102230246251565e-16 - ], - "type": "Plane" - } + "display_name": "3e4a329b-717d-43e5-9fbe-96de1cec2f1d", + "climate": { + "user_data": {}, + "monthly_radiation": { + "user_data": {}, + "glob": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "d1bd9f2b-b2de-4362-affb-e012b16eb243", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "d1bd9f2b-b2de-4362-affb-e012b16eb243", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "display_name": "0b8326b9-fa4a-44bf-ac3f-a4cc3f4c81f9", + "east": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "c16d79fd-83e0-4bb0-9396-8f1fb25172be", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "c16d79fd-83e0-4bb0-9396-8f1fb25172be", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "north": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "318b0eb0-ed43-4be8-9b3b-07d9abfb47de", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "318b0eb0-ed43-4be8-9b3b-07d9abfb47de", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "west": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "f439f5ab-e515-45ac-8eed-5c08f120fd11", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "f439f5ab-e515-45ac-8eed-5c08f120fd11", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "south": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "576dc2d8-5fe0-43fd-a788-a91dfa6f439a", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "576dc2d8-5fe0-43fd-a788-a91dfa6f439a", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "identifier": "0b8326b9-fa4a-44bf-ac3f-a4cc3f4c81f9" + }, + "display_name": "New York", + "peak_loads": { + "user_data": {}, + "heat_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "e58c33e6-253a-480b-aec9-dacfc9ad9e83", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "e58c33e6-253a-480b-aec9-dacfc9ad9e83", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "heat_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "b5f496c7-2ab2-4c94-a146-6886a1a88d3a", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "b5f496c7-2ab2-4c94-a146-6886a1a88d3a", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "cooling_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "246f56c7-ac70-41e9-b46e-20f8e77ede4e", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "246f56c7-ac70-41e9-b46e-20f8e77ede4e", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "display_name": "059065b3-4649-48e8-9aff-6b7c49d50b3e", + "cooling_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "adfb1de9-47b3-44b4-a302-63a73e6c130e", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "adfb1de9-47b3-44b4-a302-63a73e6c130e", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "identifier": "059065b3-4649-48e8-9aff-6b7c49d50b3e" + }, + "average_wind_speed": 4.0, + "summer_daily_temperature_swing": 8.0, + "ground": { + "user_data": {}, + "ground_density": 2000, + "depth_groundwater": 3, + "ground_heat_capacity": 1000, + "display_name": "d24ccb2d-ecba-43f0-a862-0233a8f2732c", + "identifier": "d24ccb2d-ecba-43f0-a862-0233a8f2732c", + "flow_rate_groundwater": 0.050000000000000003, + "ground_thermal_conductivity": 2 + }, + "identifier": "b0a82390-52b3-44cb-8e08-bfb0026b0995", + "station_elevation": 0.0, + "monthly_temps": { + "user_data": {}, + "sky_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "eaabea55-1d73-40f6-b9c1-9b48357bce2f", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "eaabea55-1d73-40f6-b9c1-9b48357bce2f", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "dewpoints": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "f226f4f8-a7e0-48f0-b508-036f2d353918", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "f226f4f8-a7e0-48f0-b508-036f2d353918", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "display_name": "2b285526-70b7-438b-b6ba-222017a61d09", + "ground_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "805600a9-5a1c-46a5-b9d0-0d6c8f5fa90d", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "805600a9-5a1c-46a5-b9d0-0d6c8f5fa90d", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "identifier": "2b285526-70b7-438b-b6ba-222017a61d09", + "air_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "46f1b463-964f-445e-b07c-40fad9447a81", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "46f1b463-964f-445e-b07c-40fad9447a81", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + } + } + }, + "identifier": "3e4a329b-717d-43e5-9fbe-96de1cec2f1d" }, - "identifier": "Room_1_59f7ed65..Face3" - }, - { - "boundary_condition": { - "type": "Ground" + "co2e_factors": { + "factors": [] }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 + "phius_certification": { + "PHIUS2021_cooling_load": 10.0, + "localization_selection_type": 2, + "int_gains_evap_per_person": 15, + "int_gains_toilet_room_util_pat": null, + "user_data": {}, + "display_name": "49aeaa97-a0d0-4eb7-9fe3-4f2752b376c9", + "int_gains_dhw_marginal_perf_ratio": null, + "int_gains_flush_heat_loss": true, + "int_gains_use_school_defaults": false, + "certification_program": { + "value": "7-PHIUS 2021 CORE" }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" + "building_use_type": { + "value": "1-RESIDENTIAL" }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "building_category_type": { + "value": "1-RESIDENTIAL BUILDING" }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "icfa_override": null, + "identifier": "49aeaa97-a0d0-4eb7-9fe3-4f2752b376c9", + "int_gains_num_toilets": 1, + "building_status": { + "value": "1-IN_PLANNING" }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_1_59f7ed65..Face4", - "type": "Face", - "face_type": "Floor", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.0, - 4.0, - 0.0 - ], - [ - 5.0, - 0.0, - 0.0 - ], - [ - 0.0, - 0.0, - 0.0 - ], - [ - 0.0, - 4.0, - 0.0 - ] - ], - "plane": { - "o": [ - 2.5, - 2.0, - 0.0 - ], - "x": [ - 0.0, - 1.0, - 0.0 - ], - "n": [ - -0.0, - -0.0, - -1.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_1_59f7ed65..Face4" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" + "PHIUS2021_heating_demand": 15.0, + "building_type": { + "value": "1-NEW_CONSTRUCTION" }, - "type": "Outdoors" + "PHIUS2021_cooling_demand": 15.0, + "PHIUS2021_heating_load": 10.0 }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "phi_certification": { + "user_data": {}, + "display_name": "4cf96eff-420a-49ca-8bd1-8ce80dbcfdc5", + "phpp_version": 9, + "attributes": { + "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", + "retrofit_type": "1-NEW BUILDING", + "certification_class": "1-CLASSIC", + "phpp_version": 9, + "ihg_type": "2-STANDARD", + "building_use_type": "10-DWELLING", + "certification_type": "1-PASSIVE HOUSE", + "enerphit_type": "2-ENERGY DEMAND METHOD", + "tfa_override": null, + "building_category_type": "1-RESIDENTIAL BUILDING", + "primary_energy_type": "2-PER (RENEWABLE)" }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } + "identifier": "4cf96eff-420a-49ca-8bd1-8ce80dbcfdc5" }, - "display_name": "Room_1_59f7ed65..Face5", - "type": "Face", - "face_type": "RoofCeiling", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - 4.0, - 3.0 - ], - [ - 0.0, - 0.0, - 3.0 - ], - [ - 5.0, - 0.0, - 3.0 - ], - [ - 5.0, - 4.0, - 3.0 - ] - ], - "plane": { - "o": [ - 2.5, - 2.0, - 3.0 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } + "non_combustible_materials": false, + "thermal_bridges": {}, + "mech_room_temp": 20.0, + "num_floor_levels": 1, + "name": "Unnamed_Bldg_Segment", + "num_dwelling_units": 1, + "identifier": "75427f77-327b-432f-bd9c-2675af05efee", + "summer_hrv_bypass_mode": { + "value": "4-ALWAYS" }, - "identifier": "Room_1_59f7ed65..Face5" - } - ], - "properties": { - "ph": { - "specific_heat_capacity_wh_m2k": null, - "type": "RoomPhPropertiesAbridged", - "spaces": [], - "ph_bldg_segment_id": "e82c7dec-db76-4428-a9e9-50fa956daee4", - "specific_heat_capacity": "1-LIGHTWEIGHT", - "ph_foundations": [] - }, - "doe2": { - "type": "RoomDoe2Properties" - }, - "ph_hvac": { - "id_num": 0, - "renewable_devices": [], - "exhaust_vent_devices": [], - "ventilation_system": null, - "type": "RoomPhHvacPropertiesAbridged", - "supportive_devices": [], - "hot_water_system": null, - "heat_pump_systems": [], - "heating_systems": [] - }, - "radiance": { - "type": "RoomRadiancePropertiesAbridged" - }, - "energy": { - "type": "RoomEnergyPropertiesAbridged", - "program_type": "Generic Office Program", - "hvac": "Room_1_59f7ed65 Ideal Loads Air System" - }, - "type": "RoomPropertiesAbridged", - "revive": { - "type": "RoomRevivePropertiesAbridged" + "source_energy_factors": { + "factors": [] + }, + "wind_exposure_type": { + "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + } } - }, - "display_name": "Room_1", - "type": "Room", - "identifier": "Room_1_59f7ed65" - } - ], + ] + }, + "ph_hvac": { + "type": "ModelPhHvacProperties" + }, + "type": "ModelProperties" + }, + "units": "Meters", + "type": "Model", "tolerance": 0.001, - "identifier": "unnamed_5fd1c4c4" + "identifier": "unnamed_5454acc1", + "version": "1.59.0" } \ No newline at end of file diff --git a/tests/_test_reference_files_hbjson/Default_Room_Single_Zone.json b/tests/_test_reference_files_hbjson/Default_Room_Single_Zone.json index fa2b7b3..d7b46f5 100644 --- a/tests/_test_reference_files_hbjson/Default_Room_Single_Zone.json +++ b/tests/_test_reference_files_hbjson/Default_Room_Single_Zone.json @@ -1,21 +1,11 @@ { "faces": [ { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "display_name": "Room_2_a861ea48..Face0", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -23,17 +13,44 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" } }, - "display_name": "Room_2_60b57ed5..Face0", "type": "Face", "face_type": "Wall", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + 1.0, + 0.0 + ], + "x": [ + -1.0, + 0.0, + -2.7755575615628914e-17 + ], + "o": [ + -4.0, + 4.0, + 1.5 + ] + }, "boundary": [ [ 5.0, @@ -56,43 +73,16 @@ 3.0 ] ], - "plane": { - "o": [ - -4.0, - 4.0, - 1.5 - ], - "x": [ - -1.0, - 0.0, - -2.7755575615628914e-17 - ], - "n": [ - 0.0, - 1.0, - 0.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face0" + "identifier": "Room_2_a861ea48..Face0" }, { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "display_name": "Room_2_a861ea48..Face1", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -100,17 +90,44 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" } }, - "display_name": "Room_2_60b57ed5..Face1", "type": "Face", "face_type": "Wall", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + -1.0, + 0.0, + 0.0 + ], + "x": [ + 0.0, + -1.0, + 0.0 + ], + "o": [ + 0.0, + 0.0, + 1.5 + ] + }, "boundary": [ [ 0.0, @@ -133,43 +150,16 @@ 3.0 ] ], - "plane": { - "o": [ - 0.0, - 0.0, - 1.5 - ], - "x": [ - 0.0, - -1.0, - 0.0 - ], - "n": [ - -1.0, - 0.0, - 0.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face1" + "identifier": "Room_2_a861ea48..Face1" }, { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "display_name": "Room_2_a861ea48..Face2", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -177,17 +167,44 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" } }, - "display_name": "Room_2_60b57ed5..Face2", "type": "Face", "face_type": "Wall", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + -1.0, + 0.0 + ], + "x": [ + 1.0, + 0.0, + -2.7755575615628914e-17 + ], + "o": [ + 0.0, + 0.0, + 1.5 + ] + }, "boundary": [ [ 0.0, @@ -210,43 +227,16 @@ 3.0 ] ], - "plane": { - "o": [ - 0.0, - 0.0, - 1.5 - ], - "x": [ - 1.0, - 0.0, - -2.7755575615628914e-17 - ], - "n": [ - 0.0, - -1.0, - 0.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face2" + "identifier": "Room_2_a861ea48..Face2" }, { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "display_name": "Room_2_a861ea48..Face3", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -254,17 +244,44 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" } }, - "display_name": "Room_2_60b57ed5..Face3", "type": "Face", "face_type": "Wall", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 1.0, + -0.0, + 1.1102230246251565e-16 + ], + "x": [ + 0.0, + 1.0, + 0.0 + ], + "o": [ + 5.0, + -5.0, + 1.5 + ] + }, "boundary": [ [ 5.0, @@ -287,38 +304,16 @@ 3.0 ] ], - "plane": { - "o": [ - 5.0, - -5.0, - 1.5 - ], - "x": [ - 0.0, - 1.0, - 0.0 - ], - "n": [ - 1.0, - -0.0, - 1.1102230246251565e-16 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face3" + "identifier": "Room_2_a861ea48..Face3" }, { - "boundary_condition": { - "type": "Ground" - }, + "display_name": "Room_2_a861ea48..Face4", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -326,23 +321,45 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 - } + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "type": "Ground" }, - "display_name": "Room_2_60b57ed5..Face4", "type": "Face", "face_type": "Floor", "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.0, - 4.0, - 0.0 - ], + "plane": { + "type": "Plane", + "n": [ + -0.0, + -0.0, + -1.0 + ], + "x": [ + 0.0, + 1.0, + 0.0 + ], + "o": [ + 2.5, + 2.0, + 0.0 + ] + }, + "boundary": [ + [ + 5.0, + 4.0, + 0.0 + ], [ 5.0, 0.0, @@ -359,43 +376,16 @@ 0.0 ] ], - "plane": { - "o": [ - 2.5, - 2.0, - 0.0 - ], - "x": [ - 0.0, - 1.0, - 0.0 - ], - "n": [ - -0.0, - -0.0, - -1.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face4" + "identifier": "Room_2_a861ea48..Face4" }, { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "display_name": "Room_2_a861ea48..Face5", "properties": { - "ph": { - "type": "FacePhProperties", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacProperties" + "revive": { + "id_num": 0, + "type": "FaceReviveProperties" }, "radiance": { "type": "FaceRadianceProperties" @@ -403,17 +393,44 @@ "energy": { "type": "FaceEnergyProperties" }, - "type": "FaceProperties", - "revive": { - "type": "FaceReviveProperties", - "id_num": 0 + "ph": { + "id_num": 0, + "type": "FacePhProperties" + }, + "ph_hvac": { + "type": "FacePhHvacProperties" + }, + "type": "FaceProperties" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" } }, - "display_name": "Room_2_60b57ed5..Face5", "type": "Face", "face_type": "RoofCeiling", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 2.5, + 2.0, + 3.0 + ] + }, "boundary": [ [ 0.0, @@ -436,463 +453,99 @@ 3.0 ] ], - "plane": { - "o": [ - 2.5, - 2.0, - 3.0 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Room_2_60b57ed5..Face5" + "identifier": "Room_2_a861ea48..Face5" } ], + "display_name": "Room_2", "properties": { - "ph": { + "revive": { "id_num": 0, - "specific_heat_capacity_wh_m2k": null, - "type": "RoomPhProperties", - "spaces": [], - "specific_heat_capacity": "1-LIGHTWEIGHT", - "ph_foundations": [], - "ph_bldg_segment": { - "identifier": "6d5cadba-4222-4301-8cf2-c6209823d750", - "source_energy_factors": { - "factors": [] - }, - "phi_certification": { - "phpp_version": 9, - "attributes": { - "phpp_version": 9, - "tfa_override": null, - "certification_type": "1-PASSIVE HOUSE", - "primary_energy_type": "2-PER (RENEWABLE)", - "ihg_type": "2-STANDARD", - "enerphit_type": "2-ENERGY DEMAND METHOD", - "retrofit_type": "1-NEW BUILDING", - "building_use_type": "10-DWELLING", - "building_category_type": "1-RESIDENTIAL BUILDING", - "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", - "certification_class": "1-CLASSIC" + "type": "RoomReviveProperties" + }, + "radiance": { + "type": "RoomRadianceProperties" + }, + "energy": { + "hvac": { + "sensible_heat_recovery": 0.0, + "demand_controlled_ventilation": false, + "latent_heat_recovery": 0.0, + "properties": { + "revive": { + "type": "IdealAirSystemReviveProperties", + "equipment_collection": { + "type": "PhiusReviveHVACEquipmentCollection", + "equipment": [] + } }, - "display_name": "97580576-783a-47df-82a1-5cd6171bd8fd", - "user_data": {}, - "identifier": "97580576-783a-47df-82a1-5cd6171bd8fd" - }, - "thermal_bridges": {}, - "name": "Unnamed_Bldg_Segment", - "set_points": { - "winter": 20.0, - "display_name": "c3a1d912-3324-4376-ac96-7666ba618004", - "user_data": {}, - "summer": 25.0, - "identifier": "c3a1d912-3324-4376-ac96-7666ba618004" - }, - "mech_room_temp": 20.0, - "display_name": "Unnamed_Bldg_Segment", - "wind_exposure_type": { - "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + "type": "IdealAirSystemProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs4ea509b8", + "uris": [] + } }, - "co2e_factors": { - "factors": [] + "heating_air_temperature": 50.0, + "type": "IdealAirSystem", + "cooling_air_temperature": 13.0, + "cooling_limit": { + "type": "Autosize" }, - "user_data": {}, - "num_dwelling_units": 1, - "site": { - "climate": { - "average_wind_speed": 4.0, - "ground": { - "depth_groundwater": 3, - "ground_density": 2000, - "flow_rate_groundwater": 0.050000000000000003, - "ground_heat_capacity": 1000, - "ground_thermal_conductivity": 2, - "display_name": "0a1301e7-f06b-4635-9a91-1eada99932d9", - "user_data": {}, - "identifier": "0a1301e7-f06b-4635-9a91-1eada99932d9" + "identifier": "Room_2_a861ea48 Ideal Loads Air System", + "economizer_type": "DifferentialDryBulb", + "heating_limit": { + "type": "Autosize" + } + }, + "program_type": { + "electric_equipment": { + "properties": { + "revive": { + "id_num": 0, + "type": "ElectricEquipmentReviveProperties" }, - "peak_loads": { - "heat_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "4ff33fd6-41cf-4ace-a0f5-1bb561777b21", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "4ff33fd6-41cf-4ace-a0f5-1bb561777b21" - }, - "cooling_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "4116cb15-be0d-4340-9087-6b012d294503", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "4116cb15-be0d-4340-9087-6b012d294503" - }, - "display_name": "63a85b9a-9b40-48bd-94ba-e887ccb9cc78", - "cooling_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "6be4d2f7-9c77-4013-9141-323017f94671", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "6be4d2f7-9c77-4013-9141-323017f94671" - }, - "user_data": {}, - "heat_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "a2f0cc19-a0ed-4c4f-be3b-06a20f7b4d6d", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "a2f0cc19-a0ed-4c4f-be3b-06a20f7b4d6d" + "type": "ElectricEquipmentProperties", + "ph": { + "type": "ElectricEquipmentPhProperties", + "equipment_collection": { + "equipment_set": {} + } + } + }, + "latent_fraction": 0.0, + "radiant_fraction": 0.5, + "lost_fraction": 0.0, + "schedule": { + "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "identifier": "63a85b9a-9b40-48bd-94ba-e887ccb9cc78" - }, - "summer_daily_temperature_swing": 8.0, - "display_name": "New York", - "station_elevation": 0.0, - "user_data": {}, - "monthly_radiation": { - "west": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "cf9a2b03-036c-4488-aec7-caec99daa457", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "cf9a2b03-036c-4488-aec7-caec99daa457" - }, - "east": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "e5ad8cab-e31f-4574-b88d-2a054e064508", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "e5ad8cab-e31f-4574-b88d-2a054e064508" - }, - "display_name": "3fdf4544-5e10-48fd-90be-51fafe2c516d", - "south": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "d09801e4-b561-4197-9b50-b16e7271590d", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "d09801e4-b561-4197-9b50-b16e7271590d" - }, - "user_data": {}, - "north": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "44e3ca4c-283d-49b5-8752-5d053e7299bb", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "44e3ca4c-283d-49b5-8752-5d053e7299bb" - }, - "glob": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "52144027-4565-40bb-b72f-43699a42b74e", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "52144027-4565-40bb-b72f-43699a42b74e" - }, - "identifier": "3fdf4544-5e10-48fd-90be-51fafe2c516d" - }, - "monthly_temps": { - "sky_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "5a65813f-0da1-427f-a8dc-e3f3b2e197e4", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "5a65813f-0da1-427f-a8dc-e3f3b2e197e4" - }, - "ground_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "f1013c6d-3e14-4416-9746-53754f86d88c", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "f1013c6d-3e14-4416-9746-53754f86d88c" - }, - "dewpoints": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "64d8748a-338e-461a-8d98-ae11bee89e49", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "64d8748a-338e-461a-8d98-ae11bee89e49" - }, - "display_name": "273ac7dc-5e87-4f80-8252-dfa5d9e6b7d2", - "air_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "eb5ea2ef-c95f-48b4-80af-18bebad4f01c", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "eb5ea2ef-c95f-48b4-80af-18bebad4f01c" - }, - "user_data": {}, - "identifier": "273ac7dc-5e87-4f80-8252-dfa5d9e6b7d2" - }, - "identifier": "cec01604-87f0-41e5-a780-c339f2ff00f9" - }, - "display_name": "28081424-ec27-407c-be69-fcdb3dd555f4", - "location": { - "hours_from_UTC": -4, - "display_name": "87dc1b1c-cef9-4c17-949e-d95cba0f00ae", - "latitude": 40.600000000000001, - "longitude": -73.799999999999997, - "site_elevation": null, - "user_data": {}, - "climate_zone": 1, - "identifier": "87dc1b1c-cef9-4c17-949e-d95cba0f00ae" - }, - "user_data": {}, - "phpp_library_codes": { - "region_code": "New York", - "country_code": "US-United States of America", - "display_name": "US0055c-New York", - "dataset_name": "US0055c-New York", - "user_data": {}, - "identifier": "8f2bd20f-3321-4f64-8b46-be9b3cc4daf6" - }, - "identifier": "28081424-ec27-407c-be69-fcdb3dd555f4" - }, - "non_combustible_materials": false, - "summer_hrv_bypass_mode": { - "value": "4-ALWAYS" - }, - "phius_certification": { - "PHIUS2021_heating_load": 10.0, - "PHIUS2021_cooling_load": 10.0, - "icfa_override": null, - "building_status": { - "value": "1-IN_PLANNING" - }, - "PHIUS2021_heating_demand": 15.0, - "PHIUS2021_cooling_demand": 15.0, - "certification_program": { - "value": "7-PHIUS 2021 CORE" - }, - "int_gains_use_school_defaults": false, - "int_gains_evap_per_person": 15, - "display_name": "e2aada90-4fb3-46f7-b8a7-9fecf9c256d5", - "int_gains_num_toilets": 1, - "int_gains_dhw_marginal_perf_ratio": null, - "localization_selection_type": 2, - "user_data": {}, - "building_use_type": { - "value": "1-RESIDENTIAL" - }, - "building_category_type": { - "value": "1-RESIDENTIAL BUILDING" - }, - "int_gains_flush_heat_loss": true, - "building_type": { - "value": "1-NEW_CONSTRUCTION" - }, - "int_gains_toilet_room_util_pat": null, - "identifier": "e2aada90-4fb3-46f7-b8a7-9fecf9c256d5" - }, - "num_floor_levels": 1 - } - }, - "doe2": { - "type": "RoomDoe2Properties" - }, - "ph_hvac": { - "id_num": 0, - "renewable_devices": [], - "exhaust_vent_devices": [], - "ventilation_system": null, - "type": "RoomPhHvacProperties", - "supportive_devices": [], - "hot_water_system": null, - "heat_pump_systems": [], - "heating_systems": [] - }, - "radiance": { - "type": "RoomRadianceProperties" - }, - "energy": { - "type": "RoomEnergyProperties", - "program_type": { - "lighting": { - "visible_fraction": 0.20000000000000001, - "return_air_fraction": 0.0, - "radiant_fraction": 0.69999999999999996, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "LightingReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "LightingPhProperties", - "target_lux_height": 0.80000000000000004, - "target_lux": 300, - "id_num": 0 - }, - "type": "LightingProperties" - }, - "type": "Lighting", - "watts_per_area": 10.550000000000001, - "schedule": { - "identifier": "Generic Office Lighting", - "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": 0.0, - "upper_limit": 1.0, - "unit_type": "Dimensionless", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Fractional" + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } }, "day_schedules": [ { - "interpolate": false, "values": [ - 0.050000000000000003, - 0.04311628, - 0.050000000000000003 + 0.2307553806, + 0.28810717499999999, + 0.2307553806 ], "times": [ [ @@ -909,10 +562,10 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" }, { - "interpolate": false, "values": [ 1.0 ], @@ -923,10 +576,10 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" }, { - "interpolate": false, "values": [ 0.0 ], @@ -937,17 +590,17 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" }, { - "interpolate": false, "values": [ - 0.050000000000000003, - 0.08623256, - 0.25869767999999999, - 0.12934883999999999, - 0.04311628, - 0.050000000000000003 + 0.2307553806, + 0.38123479599999999, + 0.47654349499999998, + 0.33358044650000002, + 0.28592609699999999, + 0.2307553806 ], "times": [ [ @@ -976,146 +629,203 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" }, { - "interpolate": false, "values": [ - 0.050000000000000003, - 0.10000000000000001, - 0.08623256, - 0.25869767999999999, - 0.77609304000000001, - 0.43116280000000001, - 0.25869767999999999, - 0.17246512, - 0.08623256, - 0.04311628 + 0.30767384079999999, + 0.38123479599999999, + 0.85777829100000003, + 0.76246959199999997, + 0.85777829100000003, + 0.47654349499999998, + 0.38123479599999999 ], "times": [ [ 0, 0 ], - [ - 5, - 0 - ], [ 6, 0 ], - [ - 7, - 0 - ], [ 8, 0 ], [ - 17, - 0 - ], - [ - 18, + 12, 0 ], [ - 20, + 13, 0 ], [ - 22, + 17, 0 ], [ - 23, + 18, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" } ], + "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Equipment", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Fractional", + "upper_limit": 1.0, + "numeric_type": "Continuous", + "unit_type": "Dimensionless" + }, + "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" }, - "identifier": "Generic Office Lighting" + "watts_per_area": 10.330000000000000, + "type": "ElectricEquipment", + "identifier": "Generic Office Equipment" }, "people": { - "occupancy_schedule": { - "identifier": "Generic Office Occupancy", - "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "PeopleReviveProperties" + }, + "type": "PeopleProperties", + "ph": { + "dwellings": { + "identifier": "a4a99464-ce1b-461b-8997-f524a2dad2c9", + "num_dwellings": 0 + }, + "number_bedrooms": 0, + "id_num": 0, + "number_people": 0.0, + "type": "PeoplePhProperties" + } + }, + "latent_fraction": { + "type": "Autocalculate" + }, + "radiant_fraction": 0.29999999999999999, + "type": "People", + "people_per_area": 0.056500000000000002, + "activity_schedule": { "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" + } }, + "day_schedules": [ + { + "values": [ + 120.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "Seated Adult Activity_Day Schedule" + } + ], "type": "ScheduleRuleset", + "identifier": "Seated Adult Activity", "schedule_type_limit": { - "lower_limit": 0.0, - "upper_limit": 1.0, - "unit_type": "Dimensionless", "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Activity Level", + "upper_limit": { + "type": "NoLimit" + }, "numeric_type": "Continuous", - "identifier": "Fractional" + "unit_type": "ActivityLevel" + }, + "default_day_schedule": "Seated Adult Activity_Day Schedule" + }, + "occupancy_schedule": { + "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } }, "day_schedules": [ { - "interpolate": false, "values": [ 0.0, 0.050000000000000003, @@ -1136,10 +846,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium BLDG_OCC_SCH_Default" }, { - "interpolate": false, "values": [ 0.0, 1.0, @@ -1160,10 +870,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium BLDG_OCC_SCH_SmrDsn" }, { - "interpolate": false, "values": [ 0.0 ], @@ -1174,10 +884,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium BLDG_OCC_SCH_WntrDsn" }, { - "interpolate": false, "values": [ 0.0, 0.10000000000000001, @@ -1228,10 +938,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium BLDG_OCC_SCH_Wkdy" }, { - "interpolate": false, "values": [ 0.0, 0.10000000000000001, @@ -1267,169 +977,89 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium BLDG_OCC_SCH_Sat" } ], + "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - "radiant_fraction": 0.29999999999999999, - "people_per_area": 0.056500000000000002, - "properties": { - "revive": { - "type": "PeopleReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "number_bedrooms": 0, - "type": "PeoplePhProperties", - "number_people": 0.0, - "dwellings": { - "identifier": "3efe775f-fd49-46b8-abb0-70ac606e192c", - "num_dwellings": 0 + ] } + ], + "identifier": "Generic Office Occupancy", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Fractional", + "upper_limit": 1.0, + "numeric_type": "Continuous", + "unit_type": "Dimensionless" }, - "type": "PeopleProperties" - }, - "type": "People", - "latent_fraction": { - "type": "Autocalculate" + "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default" }, - "activity_schedule": { - "default_day_schedule": "Seated Adult Activity_Day Schedule", + "identifier": "Generic Office People" + }, + "infiltration": { + "schedule": { + "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": 0.0, - "upper_limit": { - "type": "NoLimit" - }, - "unit_type": "ActivityLevel", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Activity Level" - }, - "day_schedules": [ - { - "interpolate": false, - "values": [ - 120.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "Seated Adult Activity_Day Schedule" - } - ], - "identifier": "Seated Adult Activity" - }, - "identifier": "Generic Office People" - }, - "ventilation": { - "type": "Ventilation", - "identifier": "Generic Office Ventilation", - "flow_per_person": 0.0023600000000000001, - "flow_per_area": 0.00030499999999999999 - }, - "type": "ProgramType", - "setpoint": { - "type": "Setpoint", - "cooling_schedule": { - "identifier": "Generic Office Cooling", - "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", - "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": -273.14999999999998, - "upper_limit": { - "type": "NoLimit" - }, - "unit_type": "Temperature", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Temperature" + } }, "day_schedules": [ { - "interpolate": false, "values": [ - 26.699999999999999 + 1.0 ], "times": [ [ @@ -1438,203 +1068,186 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" }, { - "interpolate": false, "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 + 1.0, + 0.25, + 1.0 ], "times": [ [ 0, 0 ], - [ - 5, - 0 - ], [ 6, 0 ], - [ - 7, - 0 - ], [ 22, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn" }, { - "interpolate": false, "values": [ - 26.699999999999999 + 1.0, + 0.25, + 1.0 ], "times": [ [ 0, 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn" }, { - "interpolate": false, "values": [ - 26.699999999999999, - 25.600000000000001, - 25.0, - 24.0, - 26.699999999999999 + 1.0, + 0.25, + 1.0 ], "times": [ [ 0, 0 ], - [ - 5, - 0 - ], [ 6, 0 ], - [ - 7, - 0 - ], [ 22, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy" }, { - "interpolate": false, "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 + 1.0, + 0.25, + 1.0 ], "times": [ [ 0, 0 ], - [ - 5, - 0 - ], [ 6, 0 ], [ - 7, - 0 - ], - [ - 17, + 18, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat" } ], + "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Infiltration", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Fractional", + "upper_limit": 1.0, + "numeric_type": "Continuous", + "unit_type": "Dimensionless" + }, + "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default" }, + "identifier": "Generic Office Infiltration", + "flow_per_exterior_area": 0.00022660000000000001, + "type": "Infiltration" + }, + "setpoint": { "identifier": "Generic Office Setpoints", "heating_schedule": { - "identifier": "Generic Office Heating", - "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", "winter_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn", - "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": -273.14999999999998, - "upper_limit": { - "type": "NoLimit" - }, - "unit_type": "Temperature", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Temperature" + } }, "day_schedules": [ { - "interpolate": false, "values": [ 15.600000000000000 ], @@ -1645,10 +1258,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" }, { - "interpolate": false, "values": [ 15.600000000000000 ], @@ -1659,10 +1272,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn" }, { - "interpolate": false, "values": [ 15.600000000000000, 17.600000000000001, @@ -1693,10 +1306,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn" }, { - "interpolate": false, "values": [ 15.600000000000000, 17.800000000000001, @@ -1727,10 +1340,10 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy" }, { - "interpolate": false, "values": [ 15.600000000000000, 17.800000000000001, @@ -1761,91 +1374,89 @@ ] ], "type": "ScheduleDay", + "interpolate": false, "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat" } ], + "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] - } - }, - "infiltration": { - "type": "Infiltration", - "flow_per_exterior_area": 0.00022660000000000001, - "identifier": "Generic Office Infiltration", - "schedule": { - "identifier": "Generic Office Infiltration", - "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", - "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", + ], + "identifier": "Generic Office Heating", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": -273.14999999999998, + "identifier": "Temperature", + "upper_limit": { + "type": "NoLimit" + }, + "numeric_type": "Continuous", + "unit_type": "Temperature" + }, + "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" + }, + "type": "Setpoint", + "cooling_schedule": { + "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": 0.0, - "upper_limit": 1.0, - "unit_type": "Dimensionless", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Fractional" + } }, "day_schedules": [ { - "interpolate": false, "values": [ - 1.0 + 26.699999999999999 ], "times": [ [ @@ -1854,203 +1465,234 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" }, { - "interpolate": false, "values": [ - 1.0, - 0.25, - 1.0 + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 ], "times": [ [ 0, 0 ], + [ + 5, + 0 + ], [ 6, 0 ], + [ + 7, + 0 + ], [ 22, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" }, { - "interpolate": false, "values": [ - 1.0, - 0.25, - 1.0 + 26.699999999999999 ], "times": [ [ 0, 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" }, { - "interpolate": false, "values": [ - 1.0, - 0.25, - 1.0 + 26.699999999999999, + 25.600000000000001, + 25.0, + 24.0, + 26.699999999999999 ], "times": [ [ 0, 0 ], + [ + 5, + 0 + ], [ 6, 0 ], + [ + 7, + 0 + ], [ 22, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" }, { - "interpolate": false, "values": [ - 1.0, - 0.25, - 1.0 + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 ], "times": [ [ 0, 0 ], + [ + 5, + 0 + ], [ 6, 0 ], [ - 18, + 7, + 0 + ], + [ + 17, 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat" + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" } ], + "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Cooling", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": -273.14999999999998, + "identifier": "Temperature", + "upper_limit": { + "type": "NoLimit" + }, + "numeric_type": "Continuous", + "unit_type": "Temperature" + }, + "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" } }, - "electric_equipment": { - "radiant_fraction": 0.5, - "lost_fraction": 0.0, + "ventilation": { + "identifier": "Generic Office Ventilation", + "flow_per_person": 0.0023600000000000001, + "type": "Ventilation", + "flow_per_area": 0.00030499999999999999 + }, + "type": "ProgramType", + "identifier": "Generic Office Program", + "lighting": { + "visible_fraction": 0.20000000000000001, "properties": { "revive": { - "type": "ElectricEquipmentReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "LightingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, + "type": "LightingProperties", "ph": { - "type": "ElectricEquipmentPhProperties", - "equipment_collection": { - "equipment_set": {} - } - }, - "type": "ElectricEquipmentProperties" + "target_lux": 300, + "id_num": 0, + "target_lux_height": 0.80000000000000004, + "type": "LightingPhProperties" + } }, - "type": "ElectricEquipment", - "watts_per_area": 10.330000000000000, + "radiant_fraction": 0.69999999999999996, "schedule": { - "identifier": "Generic Office Equipment", - "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", + "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", "properties": { "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", "operating_periods": { "collection": [] }, + "id_num": 0, "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRuleset", - "schedule_type_limit": { - "lower_limit": 0.0, - "upper_limit": 1.0, - "unit_type": "Dimensionless", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Fractional" + } }, "day_schedules": [ { - "interpolate": false, "values": [ - 0.2307553806, - 0.28810717499999999, - 0.2307553806 + 0.050000000000000003, + 0.04311628, + 0.050000000000000003 ], "times": [ [ @@ -2067,10 +1709,10 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" }, { - "interpolate": false, "values": [ 1.0 ], @@ -2081,10 +1723,10 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" }, { - "interpolate": false, "values": [ 0.0 ], @@ -2095,17 +1737,17 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" }, { - "interpolate": false, "values": [ - 0.2307553806, - 0.38123479599999999, - 0.47654349499999998, - 0.33358044650000002, - 0.28592609699999999, - 0.2307553806 + 0.050000000000000003, + 0.08623256, + 0.25869767999999999, + 0.12934883999999999, + 0.04311628, + 0.050000000000000003 ], "times": [ [ @@ -2134,38 +1776,41 @@ ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" }, { - "interpolate": false, "values": [ - 0.30767384079999999, - 0.38123479599999999, - 0.85777829100000003, - 0.76246959199999997, - 0.85777829100000003, - 0.47654349499999998, - 0.38123479599999999 - ], + 0.050000000000000003, + 0.10000000000000001, + 0.08623256, + 0.25869767999999999, + 0.77609304000000001, + 0.43116280000000001, + 0.25869767999999999, + 0.17246512, + 0.08623256, + 0.04311628 + ], "times": [ [ 0, 0 ], [ - 6, + 5, 0 ], [ - 8, + 6, 0 ], [ - 12, + 7, 0 ], [ - 13, + 8, 0 ], [ @@ -2175,102 +1820,457 @@ [ 18, 0 + ], + [ + 20, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 ] ], "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" } ], + "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", + "type": "ScheduleRuleset", + "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", "schedule_rules": [ { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", - "apply_wednesday": true, "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + ] }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "apply_wednesday": false, "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", "start_date": [ 1, 1 ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", "end_date": [ 12, 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false + ] } - ] + ], + "identifier": "Generic Office Lighting", + "schedule_type_limit": { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Fractional", + "upper_limit": 1.0, + "numeric_type": "Continuous", + "unit_type": "Dimensionless" + }, + "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" }, - "latent_fraction": 0.0, - "identifier": "Generic Office Equipment" - }, - "identifier": "Generic Office Program" + "watts_per_area": 10.550000000000001, + "type": "Lighting", + "return_air_fraction": 0.0, + "identifier": "Generic Office Lighting" + } }, - "hvac": { - "cooling_air_temperature": 13.0, - "demand_controlled_ventilation": false, - "properties": { - "revive": { - "type": "IdealAirSystemReviveProperties", - "equipment_collection": { - "type": "PhiusReviveHVACEquipmentCollection", - "equipment": [] - } + "type": "RoomEnergyProperties" + }, + "doe2": { + "type": "RoomDoe2Properties" + }, + "ph": { + "ph_bldg_segment": { + "user_data": {}, + "set_points": { + "user_data": {}, + "summer": 25.0, + "display_name": "a105ad7f-0b04-4e21-a129-e1444885a19e", + "winter": 20.0, + "identifier": "a105ad7f-0b04-4e21-a129-e1444885a19e" + }, + "display_name": "Unnamed_Bldg_Segment", + "site": { + "user_data": {}, + "location": { + "user_data": {}, + "latitude": 40.600000000000001, + "hours_from_UTC": -4, + "display_name": "5d33a623-5cdd-470d-9f72-8053938f8680", + "climate_zone": 1, + "site_elevation": null, + "identifier": "5d33a623-5cdd-470d-9f72-8053938f8680", + "longitude": -73.799999999999997 }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, + "phpp_library_codes": { "user_data": {}, - "identifier": "rfsd732386d" + "dataset_name": "US0055c-New York", + "display_name": "US0055c-New York", + "identifier": "bd33516e-f102-4655-9d9a-5b41920e9eba", + "country_code": "US-United States of America", + "region_code": "New York" }, - "type": "IdealAirSystemProperties" + "display_name": "466f406d-80d4-4d54-a178-0a003faa95c8", + "climate": { + "user_data": {}, + "monthly_radiation": { + "user_data": {}, + "glob": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "d1bd9f2b-b2de-4362-affb-e012b16eb243", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "d1bd9f2b-b2de-4362-affb-e012b16eb243", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "display_name": "0b8326b9-fa4a-44bf-ac3f-a4cc3f4c81f9", + "east": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "c16d79fd-83e0-4bb0-9396-8f1fb25172be", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "c16d79fd-83e0-4bb0-9396-8f1fb25172be", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "north": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "318b0eb0-ed43-4be8-9b3b-07d9abfb47de", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "318b0eb0-ed43-4be8-9b3b-07d9abfb47de", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "west": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "f439f5ab-e515-45ac-8eed-5c08f120fd11", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "f439f5ab-e515-45ac-8eed-5c08f120fd11", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "south": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "576dc2d8-5fe0-43fd-a788-a91dfa6f439a", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "576dc2d8-5fe0-43fd-a788-a91dfa6f439a", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "identifier": "0b8326b9-fa4a-44bf-ac3f-a4cc3f4c81f9" + }, + "display_name": "New York", + "peak_loads": { + "user_data": {}, + "heat_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "e58c33e6-253a-480b-aec9-dacfc9ad9e83", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "e58c33e6-253a-480b-aec9-dacfc9ad9e83", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "heat_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "b5f496c7-2ab2-4c94-a146-6886a1a88d3a", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "b5f496c7-2ab2-4c94-a146-6886a1a88d3a", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "cooling_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "246f56c7-ac70-41e9-b46e-20f8e77ede4e", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "246f56c7-ac70-41e9-b46e-20f8e77ede4e", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "display_name": "059065b3-4649-48e8-9aff-6b7c49d50b3e", + "cooling_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "adfb1de9-47b3-44b4-a302-63a73e6c130e", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "adfb1de9-47b3-44b4-a302-63a73e6c130e", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 + }, + "identifier": "059065b3-4649-48e8-9aff-6b7c49d50b3e" + }, + "average_wind_speed": 4.0, + "summer_daily_temperature_swing": 8.0, + "ground": { + "user_data": {}, + "ground_density": 2000, + "depth_groundwater": 3, + "ground_heat_capacity": 1000, + "display_name": "d24ccb2d-ecba-43f0-a862-0233a8f2732c", + "identifier": "d24ccb2d-ecba-43f0-a862-0233a8f2732c", + "flow_rate_groundwater": 0.050000000000000003, + "ground_thermal_conductivity": 2 + }, + "identifier": "b0a82390-52b3-44cb-8e08-bfb0026b0995", + "station_elevation": 0.0, + "monthly_temps": { + "user_data": {}, + "sky_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "eaabea55-1d73-40f6-b9c1-9b48357bce2f", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "eaabea55-1d73-40f6-b9c1-9b48357bce2f", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "dewpoints": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "f226f4f8-a7e0-48f0-b508-036f2d353918", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "f226f4f8-a7e0-48f0-b508-036f2d353918", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "display_name": "2b285526-70b7-438b-b6ba-222017a61d09", + "ground_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "805600a9-5a1c-46a5-b9d0-0d6c8f5fa90d", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "805600a9-5a1c-46a5-b9d0-0d6c8f5fa90d", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + }, + "identifier": "2b285526-70b7-438b-b6ba-222017a61d09", + "air_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "46f1b463-964f-445e-b07c-40fad9447a81", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "46f1b463-964f-445e-b07c-40fad9447a81", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 + } + } + }, + "identifier": "466f406d-80d4-4d54-a178-0a003faa95c8" }, - "type": "IdealAirSystem", - "heating_limit": { - "type": "Autosize" + "co2e_factors": { + "factors": [] }, - "cooling_limit": { - "type": "Autosize" + "phius_certification": { + "PHIUS2021_cooling_load": 10.0, + "localization_selection_type": 2, + "int_gains_evap_per_person": 15, + "int_gains_toilet_room_util_pat": null, + "user_data": {}, + "display_name": "3baf8a7c-1dcb-4b78-a768-8a3ff79c054a", + "int_gains_dhw_marginal_perf_ratio": null, + "int_gains_flush_heat_loss": true, + "int_gains_use_school_defaults": false, + "certification_program": { + "value": "7-PHIUS 2021 CORE" + }, + "building_use_type": { + "value": "1-RESIDENTIAL" + }, + "building_category_type": { + "value": "1-RESIDENTIAL BUILDING" + }, + "icfa_override": null, + "identifier": "3baf8a7c-1dcb-4b78-a768-8a3ff79c054a", + "int_gains_num_toilets": 1, + "building_status": { + "value": "1-IN_PLANNING" + }, + "PHIUS2021_heating_demand": 15.0, + "building_type": { + "value": "1-NEW_CONSTRUCTION" + }, + "PHIUS2021_cooling_demand": 15.0, + "PHIUS2021_heating_load": 10.0 }, - "latent_heat_recovery": 0.0, - "heating_air_temperature": 50.0, - "economizer_type": "DifferentialDryBulb", - "sensible_heat_recovery": 0.0, - "identifier": "Room_2_60b57ed5 Ideal Loads Air System" - } + "phi_certification": { + "user_data": {}, + "display_name": "724e59f9-f5aa-4a0a-baad-3d9b6df456a3", + "phpp_version": 9, + "attributes": { + "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", + "retrofit_type": "1-NEW BUILDING", + "certification_class": "1-CLASSIC", + "phpp_version": 9, + "ihg_type": "2-STANDARD", + "building_use_type": "10-DWELLING", + "certification_type": "1-PASSIVE HOUSE", + "enerphit_type": "2-ENERGY DEMAND METHOD", + "tfa_override": null, + "building_category_type": "1-RESIDENTIAL BUILDING", + "primary_energy_type": "2-PER (RENEWABLE)" + }, + "identifier": "724e59f9-f5aa-4a0a-baad-3d9b6df456a3" + }, + "non_combustible_materials": false, + "thermal_bridges": {}, + "mech_room_temp": 20.0, + "num_floor_levels": 1, + "name": "Unnamed_Bldg_Segment", + "num_dwelling_units": 1, + "identifier": "955b949d-611d-45fb-9f56-8d04167e7275", + "summer_hrv_bypass_mode": { + "value": "4-ALWAYS" + }, + "source_energy_factors": { + "factors": [] + }, + "wind_exposure_type": { + "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + } + }, + "ph_foundations": [], + "spaces": [], + "id_num": 0, + "type": "RoomPhProperties", + "specific_heat_capacity": "1-LIGHTWEIGHT", + "specific_heat_capacity_wh_m2k": null }, - "type": "RoomProperties", - "revive": { - "type": "RoomReviveProperties", - "id_num": 0 - } + "ph_hvac": { + "renewable_devices": [], + "ventilation_system": null, + "id_num": 0, + "supportive_devices": [], + "type": "RoomPhHvacProperties", + "exhaust_vent_devices": [], + "hot_water_system": null, + "heat_pump_systems": [], + "heating_systems": [] + }, + "type": "RoomProperties" }, - "display_name": "Room_2", "type": "Room", - "identifier": "Room_2_60b57ed5" + "identifier": "Room_2_a861ea48" } \ No newline at end of file diff --git a/tests/_test_reference_files_hbjson/Multi_Room_Complete.hbjson b/tests/_test_reference_files_hbjson/Multi_Room_Complete.hbjson index 2d9f592..5df01f5 100644 --- a/tests/_test_reference_files_hbjson/Multi_Room_Complete.hbjson +++ b/tests/_test_reference_files_hbjson/Multi_Room_Complete.hbjson @@ -1,11457 +1,11451 @@ { - "version": "1.59.0", "angle_tolerance": 1.0, - "units": "Meters", - "properties": { - "ph": { - "type": "ModelPhPropertiesAbridged", - "bldg_segments": [ + "rooms": [ + { + "zone": "HBPH_DWELLING_3c8b9d5b", + "faces": [ { - "identifier": "b0c4f67c-ab8f-4493-aa7e-8118ae2b5540", - "source_energy_factors": { - "factors": [ - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "OIL" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "HARD_COAL" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "LPG" - }, - { - "value": 1.5, - "units": "kWh/kWh", - "fuel_name": "GAS_CGS_0_CHP" - }, - { - "value": 1.5, - "units": "kWh/kWh", - "fuel_name": "HARD_COAL_CGS_0_CHP" - }, - { - "value": 0.69999999999999996, - "units": "kWh/kWh", - "fuel_name": "GAS_CGS_70_CHP" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "OIL_CGS_35_CHP" - }, - { - "value": 2.0, - "units": "kWh/kWh", - "fuel_name": "ELECTRICITY_MIX" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "HARD_COAL_CGS_35_CHP" - }, - { - "value": 1.5, - "units": "kWh/kWh", - "fuel_name": "OIL_CGS_0_CHP" - }, - { - "value": 0.69999999999999996, - "units": "kWh/kWh", - "fuel_name": "ELECTRICITY_PV" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "GAS_CGS_35_CHP" - }, - { - "value": 0.80000000000000004, - "units": "kWh/kWh", - "fuel_name": "HARD_COAL_CGS_70_CHP" - }, - { - "value": 1.1000000000000001, - "units": "kWh/kWh", - "fuel_name": "NATURAL_GAS" - }, - { - "value": 0.20000000000000001, - "units": "kWh/kWh", - "fuel_name": "WOOD" - }, - { - "value": 0.80000000000000004, - "units": "kWh/kWh", - "fuel_name": "OIL_CGS_70_CHP" - } - ] + "display_name": "Room_4_6b80c479..Face0", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "phi_certification": { - "phpp_version": 9, - "attributes": { - "phpp_version": 9, - "tfa_override": null, - "certification_type": "1-PASSIVE HOUSE", - "primary_energy_type": "1-PE (NON-RENEWABLE)", - "ihg_type": "2-STANDARD", - "enerphit_type": "2-ENERGY DEMAND METHOD", - "retrofit_type": "1-NEW BUILDING", - "building_use_type": "10-DWELLING", - "building_category_type": "1-RESIDENTIAL BUILDING", - "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", - "certification_class": "1-CLASSIC" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -0.17364817766693011, + -0.98480775301220813, + 0.0 + ], + "x": [ + -0.98480775301220813, + 0.17364817766693011, + 0.0 + ], + "o": [ + 4.6523906598326512, + -10.788219090421832, + 5.5 + ] }, - "display_name": "94811b38-a389-4dd9-ace2-6303fa4b6cc5", - "user_data": {}, - "identifier": "94811b38-a389-4dd9-ace2-6303fa4b6cc5" + "boundary": [ + [ + -0.76405198173449351, + -9.8331541132537161, + 5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 5.5 + ] + ], + "type": "Face3D" }, - "thermal_bridges": { - "84b3f778-d6a0-446e-8cc3-63b1beb3743f": { - "_group_type": { - "value": "15-AMBIENT" + "identifier": "Room_4_6b80c479..Face0", + "apertures": [ + { + "is_operable": false, + "display_name": "Room_4_6b80c479..Face0_Glz0", + "properties": { + "revive": { + "id_num": 0, + "type": "ApertureRevivePropertiesAbridged" + }, + "radiance": { + "type": "ApertureRadiancePropertiesAbridged" + }, + "energy": { + "type": "ApertureEnergyPropertiesAbridged" + }, + "ph": { + "summer_shading_factor": 0.95527773909664049, + "id_num": 0, + "type": "AperturePhPropertiesAbridged", + "winter_shading_factor": 0.97427603830067, + "install_depth": 0.1016, + "variant_type": "_unnamed_type_", + "default_monthly_shading_correction_factor": 1.0 + }, + "ph_hvac": { + "type": "AperturePhHvacPropertiesAbridged" + }, + "type": "AperturePropertiesAbridged" }, - "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__387c71f1", - "user_data": {}, - "quantity": 1.0, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Aperture", "geometry": { - "vertices": [ - [ - 4.6523906598326512, - -10.788219090421832, - -5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, + "plane": { + "type": "Plane", + "n": [ + -0.17364817766692991, + -0.98480775301220813, 0.0 ], - [ - 4.6523906598326512, - -10.788219090421832, + "x": [ + -0.98480775301220813, + 0.17364817766692991, 0.0 ], - [ - 4.6523906598326512, - -10.788219090421832, - -5.5 + "o": [ + 3.7608994304649785, + -10.631025133619353, + 4.5947560814373274 ] - ], - "type": "Polyline3D" - }, - "identifier": "84b3f778-d6a0-446e-8cc3-63b1beb3743f" - }, - "0c8393b1-d75e-4519-b2f8-5018224ad394": { - "_group_type": { - "value": "15-AMBIENT" - }, - "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__f4606ddf", - "user_data": {}, - "quantity": 1.0, - "geometry": { - "vertices": [ - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], + }, + "boundary": [ [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 + 0.12743924763317918, + -9.9903480700561964, + 4.5947560814373274 ], [ - 0.0, - -5.5, - 0.0 + 0.12743924763317918, + -9.9903480700561964, + 0.9052439185626735 ], [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 + 3.7608994304649785, + -10.631025133619353, + 0.9052439185626735 ], [ - 4.6523906598326512, - -10.788219090421832, - 0.0 + 3.7608994304649785, + -10.631025133619353, + 4.5947560814373274 ] ], - "type": "Polyline3D" - }, - "identifier": "0c8393b1-d75e-4519-b2f8-5018224ad394" - }, - "0f049799-34d8-4258-89ad-29caa18570e3": { - "_group_type": { - "value": "15-AMBIENT" + "type": "Face3D" }, - "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__10009fc5", - "user_data": {}, - "quantity": 1.0, - "geometry": { - "vertices": [ - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ] - ], - "type": "Polyline3D" - }, - "identifier": "0f049799-34d8-4258-89ad-29caa18570e3" + "identifier": "Room_4_6b80c479..Face0_Glz0" + } + ] + }, + { + "display_name": "Room_4_6b80c479..Face1", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "6d8913a1-f3cf-4f26-9744-3db055f32632": { - "_group_type": { - "value": "15-AMBIENT" - }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__5ab223ce", - "user_data": {}, - "quantity": 1.0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -0.98480775301220813, + 0.17364817766693033, + 0.0 + ], + "x": [ + 0.17364817766693033, + 0.98480775301220813, + 0.0 + ], + "o": [ + -0.76405198173449351, + -9.8331541132537161, + 5.5 + ] + }, + "boundary": [ + [ + 0.0, + -5.5, + 5.5 + ], + [ + 0.0, + -5.5, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 5.5 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_4_6b80c479..Face1", + "apertures": [ + { + "is_operable": false, + "display_name": "Room_4_6b80c479..Face1_Glz0", + "properties": { + "revive": { + "id_num": 0, + "type": "ApertureRevivePropertiesAbridged" + }, + "radiance": { + "type": "ApertureRadiancePropertiesAbridged" + }, + "energy": { + "type": "ApertureEnergyPropertiesAbridged" + }, + "ph": { + "summer_shading_factor": 0.97642791240333782, + "id_num": 0, + "type": "AperturePhPropertiesAbridged", + "winter_shading_factor": 0.97116661808983007, + "install_depth": 0.1016, + "variant_type": "_unnamed_type_", + "default_monthly_shading_correction_factor": 1.0 + }, + "ph_hvac": { + "type": "AperturePhHvacPropertiesAbridged" + }, + "type": "AperturePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Aperture", "geometry": { - "vertices": [ - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - 0.0, - -5.5, + "plane": { + "type": "Plane", + "n": [ + -0.98480775301220813, + 0.17364817766693036, 0.0 ], - [ - 5.4164426415671443, - -6.4550649771681172, + "x": [ + 0.17364817766693036, + 0.98480775301220813, 0.0 ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 + "o": [ + -0.63829681629251001, + -9.1199611297595773, + 4.5947560814373274 ] - ], - "type": "Polyline3D" - }, - "identifier": "6d8913a1-f3cf-4f26-9744-3db055f32632" - }, - "1fe19422-0387-4dc0-b3dc-873bce3cb101": { - "_group_type": { - "value": "15-AMBIENT" - }, - "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__6fb77911", - "user_data": {}, - "quantity": 1.0, - "geometry": { - "vertices": [ + }, + "boundary": [ [ - 3.7608994304649785, - -10.631025133619353, - 0.9052439185626735 + -0.12575516544198348, + -6.2131929834941388, + 4.5947560814373274 ], [ - 0.12743924763317918, - -9.9903480700561964, + -0.12575516544198348, + -6.2131929834941388, 0.9052439185626735 ], [ - 0.12743924763317918, - -9.9903480700561964, - 4.5947560814373274 + -0.63829681629251001, + -9.1199611297595773, + 0.9052439185626735 ], [ - 3.7608994304649785, - -10.631025133619353, + -0.63829681629251001, + -9.1199611297595773, 4.5947560814373274 - ], - [ - 3.7608994304649785, - -10.631025133619353, - 0.9052439185626735 ] ], - "type": "Polyline3D" - }, - "identifier": "1fe19422-0387-4dc0-b3dc-873bce3cb101" - }, - "4d46a1a7-bac8-40e8-a493-4dc638863f4c": { - "_group_type": { - "value": "15-AMBIENT" + "type": "Face3D" }, + "identifier": "Room_4_6b80c479..Face1_Glz0" + } + ] + }, + { + "display_name": "Room_4_6b80c479..Face2", + "properties": { + "revive": { "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__638e3e9d", - "user_data": {}, - "quantity": 1.0, - "geometry": { - "vertices": [ - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - [ - 0.0, - -5.5, - -5.5 - ], - [ - 0.0, - -5.5, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ] - ], - "type": "Polyline3D" - }, - "identifier": "4d46a1a7-bac8-40e8-a493-4dc638863f4c" + "type": "FaceRevivePropertiesAbridged" }, - "556be39a-5c61-407c-a11d-e7075bebfdf2": { - "_group_type": { - "value": "15-AMBIENT" - }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { "id_num": 0, - "psi_value": 0.01, - "fRsi_value": 0.75, - "display_name": "_unnamed_bldg_segment__83859341", - "user_data": {}, - "quantity": 1.0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.17364817766693044, + 0.98480775301220813, + 0.0 + ], + "x": [ + 0.98480775301220813, + -0.17364817766693044, + 0.0 + ], + "o": [ + 0.0, + -5.5, + 5.5 + ] + }, + "boundary": [ + [ + 5.4164426415671443, + -6.4550649771681172, + 5.5 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 0.0, + -5.5, + 0.0 + ], + [ + 0.0, + -5.5, + 5.5 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_4_6b80c479..Face2", + "apertures": [ + { + "is_operable": false, + "display_name": "Room_4_6b80c479..Face2_Glz0", + "properties": { + "revive": { + "id_num": 0, + "type": "ApertureRevivePropertiesAbridged" + }, + "radiance": { + "type": "ApertureRadiancePropertiesAbridged" + }, + "energy": { + "type": "ApertureEnergyPropertiesAbridged" + }, + "ph": { + "summer_shading_factor": 0.94975253969036832, + "id_num": 0, + "type": "AperturePhPropertiesAbridged", + "winter_shading_factor": 0.99207368057867318, + "install_depth": 0.1016, + "variant_type": "_unnamed_type_", + "default_monthly_shading_correction_factor": 1.0 + }, + "ph_hvac": { + "type": "AperturePhHvacPropertiesAbridged" + }, + "type": "AperturePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Aperture", "geometry": { - "vertices": [ - [ - 4.5113301595281179, - -6.9497746774215505, - 5.5 + "plane": { + "type": "Plane", + "n": [ + 0.17364817766693044, + 0.98480775301220813, + 0.0 + ], + "x": [ + 0.98480775301220813, + -0.17364817766693044, + 0.0 ], + "o": [ + 0.89149122936767267, + -5.6571939568024794, + 4.5947560814373274 + ] + }, + "boundary": [ [ - 3.9710638220646373, - -10.013777334829634, - 5.5 + 4.5249514121994716, + -6.2978710203656378, + 4.5947560814373274 ], [ - 0.14106050030453293, - -9.3384444130002837, - 5.5 + 4.5249514121994716, + -6.2978710203656378, + 0.9052439185626735 ], [ - 0.6813268377680135, - -6.2744417555921990, - 5.5 + 0.89149122936767267, + -5.6571939568024794, + 0.9052439185626735 ], [ - 4.5113301595281179, - -6.9497746774215505, - 5.5 + 0.89149122936767267, + -5.6571939568024794, + 4.5947560814373274 ] ], - "type": "Polyline3D" + "type": "Face3D" }, - "identifier": "556be39a-5c61-407c-a11d-e7075bebfdf2" + "identifier": "Room_4_6b80c479..Face2_Glz0" } + ] + }, + { + "display_name": "Room_4_6b80c479..Face3", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "name": "_unnamed_bldg_segment_", - "set_points": { - "winter": 21.0, - "display_name": "bc899902-850e-4618-ad03-688239b045fc", - "user_data": {}, - "summer": 24.0, - "identifier": "bc899902-850e-4618-ad03-688239b045fc" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } }, - "mech_room_temp": 20.0, - "display_name": "_unnamed_bldg_segment_", - "wind_exposure_type": { - "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.98480775301220813, + -0.1736481776669303, + 0.0 + ], + "x": [ + -0.1736481776669303, + -0.98480775301220813, + 0.0 + ], + "o": [ + 5.4164426415671443, + -6.4550649771681172, + 5.5 + ] + }, + "boundary": [ + [ + 4.6523906598326512, + -10.788219090421832, + 5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 5.5 + ] + ], + "type": "Face3D" }, - "co2e_factors": { - "factors": [ - { - "value": 309.99660000000000, - "units": "g/kWh", - "fuel_name": "OIL" - }, - { - "value": 439.98640000000000, - "units": "g/kWh", - "fuel_name": "HARD_COAL" + "identifier": "Room_4_6b80c479..Face3", + "apertures": [ + { + "is_operable": false, + "display_name": "Room_4_6b80c479..Face3_Glz0", + "properties": { + "revive": { + "id_num": 0, + "type": "ApertureRevivePropertiesAbridged" + }, + "radiance": { + "type": "ApertureRadiancePropertiesAbridged" + }, + "energy": { + "type": "ApertureEnergyPropertiesAbridged" + }, + "ph": { + "summer_shading_factor": 0.97614217434077266, + "id_num": 0, + "type": "AperturePhPropertiesAbridged", + "winter_shading_factor": 0.97047874429337377, + "install_depth": 0.1016, + "variant_type": "_unnamed_type_", + "default_monthly_shading_correction_factor": 1.0 + }, + "ph_hvac": { + "type": "AperturePhHvacPropertiesAbridged" + }, + "type": "AperturePropertiesAbridged" }, - { - "value": 270.01020000000000, - "units": "g/kWh", - "fuel_name": "LPG" - }, - { - "value": 319.99320000000000, - "units": "g/kWh", - "fuel_name": "GAS_CGS_0_CHP" - }, - { - "value": 409.99660000000000, - "units": "g/kWh", - "fuel_name": "HARD_COAL_CGS_0_CHP" - }, - { - "value": -70.010199999999998, - "units": "g/kWh", - "fuel_name": "GAS_CGS_70_CHP" - }, - { - "value": 250.01710000000000, - "units": "g/kWh", - "fuel_name": "OIL_CGS_35_CHP" - }, - { - "value": 680.00680000000000, - "units": "g/kWh", - "fuel_name": "ELECTRICITY_MIX" - }, - { - "value": 319.99320000000000, - "units": "g/kWh", - "fuel_name": "HARD_COAL_CGS_35_CHP" - }, - { - "value": 409.99660000000000, - "units": "g/kWh", - "fuel_name": "OIL_CGS_0_CHP" - }, - { - "value": 250.01710000000000, - "units": "g/kWh", - "fuel_name": "ELECTRICITY_PV" - }, - { - "value": 129.98980000000000, - "units": "g/kWh", - "fuel_name": "GAS_CGS_35_CHP" - }, - { - "value": 239.98640000000000, - "units": "g/kWh", - "fuel_name": "HARD_COAL_CGS_70_CHP" - }, - { - "value": 250.01710000000000, - "units": "g/kWh", - "fuel_name": "NATURAL_GAS" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } }, - { - "value": 53.428899999999999, - "units": "g/kWh", - "fuel_name": "WOOD" + "type": "Aperture", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.98480775301220802, + -0.17364817766693058, + 0.0 + ], + "x": [ + -0.17364817766693058, + -0.98480775301220802, + 0.0 + ], + "o": [ + 5.2906874761251608, + -7.1682579606622552, + 4.5947560814373274 + ] + }, + "boundary": [ + [ + 4.7781458252746338, + -10.075026106927693, + 4.5947560814373274 + ], + [ + 4.7781458252746338, + -10.075026106927693, + 0.9052439185626735 + ], + [ + 5.2906874761251608, + -7.1682579606622552, + 0.9052439185626735 + ], + [ + 5.2906874761251608, + -7.1682579606622552, + 4.5947560814373274 + ] + ], + "type": "Face3D" }, - { - "value": 100.0, - "units": "g/kWh", - "fuel_name": "OIL_CGS_70_CHP" - } - ] + "identifier": "Room_4_6b80c479..Face3_Glz0" + } + ] + }, + { + "display_name": "Room_4_6b80c479..Face4", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "user_data": {}, - "num_dwelling_units": 1, - "site": { - "climate": { - "average_wind_speed": 4.0, - "ground": { - "depth_groundwater": 3, - "ground_density": 2000, - "flow_rate_groundwater": 0.050000000000000003, - "ground_heat_capacity": 1000, - "ground_thermal_conductivity": 2, - "display_name": "a37fd859-1a46-4671-826a-5091a6994d77", - "user_data": {}, - "identifier": "a37fd859-1a46-4671-826a-5091a6994d77" - }, - "peak_loads": { - "heat_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "test_peak_heat_2", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "e4bfa02e-cdaf-4bd7-bce2-ca863a3fc1cc" + "boundary_condition": { + "type": "Ground" + }, + "type": "Face", + "face_type": "Floor", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + -1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ] + }, + "boundary": [ + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 0.0, + -5.5, + 0.0 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_4_6b80c479..Face4" + }, + { + "display_name": "Room_4_6b80c479..Face5", + "properties": { + "revive": { + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" + }, + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" + }, + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Face", + "face_type": "RoofCeiling", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 5.4164426415671443, + -6.4550649771681172, + 5.5 + ] + }, + "boundary": [ + [ + 0.0, + -5.5, + 5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 5.5 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 5.5 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_4_6b80c479..Face5", + "apertures": [ + { + "is_operable": false, + "display_name": "Room_4_6b80c479..Face5_Glz0", + "properties": { + "revive": { + "id_num": 0, + "type": "ApertureRevivePropertiesAbridged" }, - "cooling_load_2": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "test_peak_cooling_2", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "34d76a01-80d7-483c-ae1e-a95a5940ce1c" - }, - "display_name": "361852a0-e3fa-4db1-b0cb-d5c5fb48c429", - "cooling_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "test_peak_cooling_1", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "54bfa4d4-e40f-4ab5-ac65-adb40d0cf051" - }, - "user_data": {}, - "heat_load_1": { - "rad_south": 0.0, - "rad_global": 0.0, - "sky_temp": null, - "ground_temp": null, - "temp": 0.0, - "rad_east": 0.0, - "display_name": "test_peak_heat_1", - "rad_west": 0.0, - "rad_north": 0.0, - "dewpoint": null, - "user_data": {}, - "identifier": "aab5361a-1cb0-42c2-a9ae-93be9c5367f2" - }, - "identifier": "361852a0-e3fa-4db1-b0cb-d5c5fb48c429" - }, - "summer_daily_temperature_swing": 10.0, - "display_name": "My_Test_Climate", - "station_elevation": 0.0, - "user_data": {}, - "monthly_radiation": { - "west": { - "april": 131.66000000000000, - "may": 149.97000000000000, - "february": 26.660000000000000, - "june": 165.0, - "july": 200.0, - "september": 104.03000000000000, - "november": 42.049999999999997, - "january": 0.0, - "display_name": "61179e80-f0c9-4a38-b856-732e488fbbae", - "march": 66.659999999999997, - "october": 74.319999999999993, - "user_data": {}, - "december": 0.0, - "august": 145.61000000000001, - "identifier": "61179e80-f0c9-4a38-b856-732e488fbbae" - }, - "east": { - "april": 131.66000000000000, - "may": 149.97000000000000, - "february": 26.660000000000000, - "june": 165.0, - "july": 200.0, - "september": 104.03000000000000, - "november": 42.049999999999997, - "january": 0.0, - "display_name": "f728c061-9069-42b4-aa19-4c67dcaee1d5", - "march": 66.659999999999997, - "october": 74.319999999999993, - "user_data": {}, - "december": 0.0, - "august": 145.61000000000001, - "identifier": "f728c061-9069-42b4-aa19-4c67dcaee1d5" + "radiance": { + "type": "ApertureRadiancePropertiesAbridged" }, - "display_name": "c7f99962-ddc1-4338-84bd-213d539e8bfe", - "south": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "f38630f3-64bd-4e40-b734-b617ec16b2e9", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "f38630f3-64bd-4e40-b734-b617ec16b2e9" + "energy": { + "type": "ApertureEnergyPropertiesAbridged" }, - "user_data": {}, - "north": { - "april": 131.66000000000000, - "may": 149.97000000000000, - "february": 26.660000000000000, - "june": 165.0, - "july": 200.0, - "september": 104.03000000000000, - "november": 42.049999999999997, - "january": 0.0, - "display_name": "4785c444-730d-4a44-8a99-8336c7e71826", - "march": 66.659999999999997, - "october": 74.319999999999993, - "user_data": {}, - "december": 0.0, - "august": 145.61000000000001, - "identifier": "4785c444-730d-4a44-8a99-8336c7e71826" + "ph": { + "summer_shading_factor": 0.98136541971227753, + "id_num": 0, + "type": "AperturePhPropertiesAbridged", + "winter_shading_factor": 0.95601811393700986, + "install_depth": 0.1016, + "variant_type": "_unnamed_type_", + "default_monthly_shading_correction_factor": 1.0 }, - "glob": { - "april": 131.66000000000000, - "may": 149.97000000000000, - "february": 26.660000000000000, - "june": 165.0, - "july": 200.0, - "september": 104.03000000000000, - "november": 42.049999999999997, - "january": 0.0, - "display_name": "b0aaf672-4904-4956-8ee0-0dad7d7086c5", - "march": 66.659999999999997, - "october": 74.319999999999993, - "user_data": {}, - "december": 0.0, - "august": 145.61000000000001, - "identifier": "b0aaf672-4904-4956-8ee0-0dad7d7086c5" + "ph_hvac": { + "type": "AperturePhHvacPropertiesAbridged" }, - "identifier": "c7f99962-ddc1-4338-84bd-213d539e8bfe" + "type": "AperturePropertiesAbridged" }, - "monthly_temps": { - "sky_temps": { - "april": 16.460000000000001, - "may": 17.920000000000002, - "february": 3.3300000000000001, - "june": 20.620000000000001, - "july": 17.699999999999999, - "september": 9.7799999999999994, - "november": 5.0599999999999996, - "january": 0.0, - "display_name": "6c1e1e77-97a6-4609-9738-a23c4b3726d6", - "march": 8.3300000000000001, - "october": 6.4800000000000004, - "user_data": {}, - "december": 3.6200000000000001, - "august": 13.210000000000001, - "identifier": "6c1e1e77-97a6-4609-9738-a23c4b3726d6" - }, - "ground_temps": { - "april": 0.0, - "may": 0.0, - "february": 0.0, - "june": 0.0, - "july": 0.0, - "september": 0.0, - "november": 0.0, - "january": 0.0, - "display_name": "9205049b-9e13-47a1-9726-1a957033b57b", - "march": 0.0, - "october": 0.0, - "user_data": {}, - "december": 0.0, - "august": 0.0, - "identifier": "9205049b-9e13-47a1-9726-1a957033b57b" - }, - "dewpoints": { - "april": 7.9600000000000000, - "may": 5.1299999999999999, - "february": 2.6699999999999999, - "june": 6.9500000000000002, - "july": 4.9500000000000002, - "september": 1.0500000000000000, - "november": 1.6200000000000001, - "january": 0.0, - "display_name": "2bdb8df1-a32b-4a2c-b4f0-7967820816c7", - "march": 6.6699999999999999, - "october": 1.5400000000000000, - "user_data": {}, - "december": 4.2800000000000002, - "august": 4.1399999999999997, - "identifier": "2bdb8df1-a32b-4a2c-b4f0-7967820816c7" - }, - "display_name": "4fe58ee5-9406-466b-81ef-cee01d3accad", - "air_temps": { - "april": 19.75, - "may": 21.5, - "february": 4.0, - "june": 24.75, - "july": 21.230000000000000, - "september": 11.740000000000000, - "november": 6.0700000000000003, - "january": 0.0, - "display_name": "aa0da4fb-b123-4c90-b183-ce4ee136022e", - "march": 10.0, - "october": 7.7800000000000002, - "user_data": {}, - "december": 4.3399999999999999, - "august": 15.850000000000000, - "identifier": "aa0da4fb-b123-4c90-b183-ce4ee136022e" + "boundary_condition": { + "wind_exposure": true, + "type": "Outdoors", + "sun_exposure": true, + "view_factor": { + "type": "Autocalculate" + } + }, + "type": "Aperture", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 0.6813268377680135, + -6.2744417555921990, + 5.5 + ] }, - "user_data": {}, - "identifier": "4fe58ee5-9406-466b-81ef-cee01d3accad" + "boundary": [ + [ + 0.6813268377680135, + -6.2744417555921990, + 5.5 + ], + [ + 0.14106050030453293, + -9.3384444130002837, + 5.5 + ], + [ + 3.9710638220646373, + -10.013777334829634, + 5.5 + ], + [ + 4.5113301595281179, + -6.9497746774215505, + 5.5 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_4_6b80c479..Face5_Glz0" + } + ] + } + ], + "display_name": "Room_4", + "properties": { + "revive": { + "type": "RoomRevivePropertiesAbridged" + }, + "radiance": { + "type": "RoomRadiancePropertiesAbridged" + }, + "energy": { + "electric_equipment": { + "display_name": "HBPH_SFH_ElectricEquipment", + "latent_fraction": 0.0, + "radiant_fraction": 0.5, + "lost_fraction": 0.0, + "schedule": "Always On", + "properties": { + "revive": { + "id_num": 0, + "type": "ElectricEquipmentReviveProperties" }, - "identifier": "82486542-6e5f-4e7e-b660-dca0ca36d23a" + "type": "ElectricEquipmentProperties", + "ph": { + "type": "ElectricEquipmentPhProperties", + "equipment_collection": { + "equipment_set": {} + } + } }, - "display_name": "_unnamed_", - "location": { - "hours_from_UTC": -4, - "display_name": "New_York", - "latitude": 40.600000000000001, - "longitude": -73.799999999999997, - "site_elevation": 0.0, - "user_data": {}, - "climate_zone": 1, - "identifier": "bb0d7049-9260-4c40-bb1c-f8bc4284a2b9" - }, - "user_data": {}, - "phpp_library_codes": { - "region_code": "New York", - "country_code": "US-United States of America", - "display_name": "US0055b-New York", - "dataset_name": "US0055b-New York", - "user_data": {}, - "identifier": "af474350-cc0b-4ccc-8676-d9e9a5dbec84" - }, - "identifier": "e6b859bc-a753-47e6-9045-74be77cfa2a2" - }, - "non_combustible_materials": false, - "summer_hrv_bypass_mode": { - "value": "2-TEMPERATURE CONTROLLED" + "watts_per_area": 0.0, + "type": "ElectricEquipmentAbridged", + "identifier": "HBPH_SFH_Equipment_6f69374a" }, - "phius_certification": { - "PHIUS2021_heating_load": 10.0, - "PHIUS2021_cooling_load": 10.0, - "icfa_override": null, - "building_status": { - "value": "1-IN_PLANNING" - }, - "PHIUS2021_heating_demand": 15.0, - "PHIUS2021_cooling_demand": 15.0, - "certification_program": { - "value": "7-PHIUS 2021 CORE" - }, - "int_gains_use_school_defaults": false, - "int_gains_evap_per_person": 15, - "display_name": "1158870d-3d40-48a7-8d8d-ac6176210621", - "int_gains_num_toilets": 1, - "int_gains_dhw_marginal_perf_ratio": null, - "localization_selection_type": 2, - "user_data": {}, - "building_use_type": { - "value": "1-RESIDENTIAL" + "service_hot_water": { + "properties": { + "revive": { + "id_num": 0, + "type": "ServiceHotWaterReviveProperties" + }, + "type": "ServiceHotWaterProperties" }, - "building_category_type": { - "value": "1-RESIDENTIAL BUILDING" + "target_temperature": 43.299999999999997, + "latent_fraction": 0.050000000000000003, + "schedule": "hbph_sfh_Combined_HotWater", + "type": "ServiceHotWaterAbridged", + "flow_per_area": 0.23146215804218456, + "identifier": "HBPH_SFH_ServiceHotWater_4bd903f7", + "sensible_fraction": 0.20000000000000001 + }, + "people": { + "display_name": "HBPH_SFH_People", + "latent_fraction": { + "type": "Autocalculate" }, - "int_gains_flush_heat_loss": true, - "building_type": { - "value": "1-NEW_CONSTRUCTION" + "radiant_fraction": 0.29999999999999999, + "properties": { + "revive": { + "id_num": 0, + "type": "PeopleReviveProperties" + }, + "type": "PeopleProperties", + "ph": { + "dwellings": { + "identifier": "HBPH_DWELLING_3c8b9d5b", + "num_dwellings": 1 + }, + "number_bedrooms": 1, + "id_num": 0, + "number_people": 1, + "type": "PeoplePhProperties" + } }, - "int_gains_toilet_room_util_pat": null, - "identifier": "1158870d-3d40-48a7-8d8d-ac6176210621" - }, - "num_floor_levels": 1 - } - ], - "team": { - "owner": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "51e556ed-08b3-4492-aa22-554768246f1d", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "51e556ed-08b3-4492-aa22-554768246f1d" - }, - "display_name": "eee332b2-40ec-41f5-a559-6dd1e085720f", - "customer": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "72ad4c70-8f44-41d7-8227-d651b11e9659", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "72ad4c70-8f44-41d7-8227-d651b11e9659" - }, - "user_data": {}, - "designer": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "a6c08877-6d07-45bc-a6ca-b2fa92cf6dcd", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "a6c08877-6d07-45bc-a6ca-b2fa92cf6dcd" - }, - "building": { - "email": null, - "street": null, - "name": null, - "post_code": null, - "display_name": "65bb19c7-f299-4a08-aa51-be3ae38db4ec", - "city": null, - "telephone": null, - "license_number": null, - "user_data": {}, - "identifier": "65bb19c7-f299-4a08-aa51-be3ae38db4ec" - }, - "identifier": "eee332b2-40ec-41f5-a559-6dd1e085720f" - }, - "id_num": 0 - }, - "doe2": { - "type": "ModelDoe2Properties" - }, - "ph_hvac": { - "type": "ModelPhHvacProperties" - }, - "radiance": { - "type": "ModelRadianceProperties", - "modifier_sets": [], - "global_modifier_set": { - "floor_set": { - "interior_modifier": "generic_floor_0.20", - "type": "FloorModifierSetAbridged", - "exterior_modifier": "generic_floor_0.20" - }, - "shade_set": { - "interior_modifier": "generic_interior_shade_0.50", - "type": "ShadeModifierSetAbridged", - "exterior_modifier": "generic_exterior_shade_0.35" - }, - "air_boundary_modifier": "air_boundary", - "modifiers": [ - { - "g_reflectance": 0.20000000000000001, - "b_reflectance": 0.20000000000000001, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.20000000000000001, - "roughness": 0.0, - "identifier": "generic_floor_0.20" - }, - { - "specularity": 0.0, - "b_reflectance": 1.0, - "transmitted_spec": 1.0, - "dependencies": [], - "type": "Trans", - "g_reflectance": 1.0, - "r_reflectance": 1.0, - "roughness": 0.0, - "transmitted_diff": 1.0, - "modifier": null, - "identifier": "air_boundary" - }, - { - "identifier": "generic_interior_window_vis_0.88", - "type": "Glass", - "g_transmissivity": 0.95841543286105957, - "r_transmissivity": 0.95841543286105957, - "b_transmissivity": 0.95841543286105957, - "refraction_index": null, - "modifier": null, - "dependencies": [] - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_interior_shade_0.50" - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_wall_0.50" - }, - { - "g_reflectance": 0.5, - "b_reflectance": 0.5, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.5, - "roughness": 0.0, - "identifier": "generic_opaque_door_0.50" + "type": "PeopleAbridged", + "people_per_area": 0.10000000000000001, + "activity_schedule": "hbph_sfh_Occupant_Activity", + "occupancy_schedule": "hbph_sfh_Occupant_Presence", + "identifier": "HBPH_SFH_People_2fd9ccd3" }, - { - "identifier": "generic_exterior_window_vis_0.64", - "type": "Glass", - "g_transmissivity": 0.69757618153843315, - "r_transmissivity": 0.69757618153843315, - "b_transmissivity": 0.69757618153843315, - "refraction_index": null, - "modifier": null, - "dependencies": [] + "infiltration": { + "display_name": "HBPH_SFH_Infiltration", + "schedule": "Always On", + "type": "InfiltrationAbridged", + "flow_per_exterior_area": 2.8846153846153845e-05, + "identifier": "Room_4_6b80c479_infiltration" }, - { - "g_reflectance": 0.34999999999999998, - "b_reflectance": 0.34999999999999998, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.34999999999999998, - "roughness": 0.0, - "identifier": "generic_exterior_shade_0.35" + "setpoint": { + "type": "SetpointAbridged", + "heating_schedule": "hbph_sfh_Heating_Setpoint", + "dehumidifying_schedule": "HBPH_SFH_Setpoint_165940b1_DeHumidSetp", + "humidifying_schedule": "HumidNoLimit", + "identifier": "HBPH_SFH_Setpoint_165940b1", + "cooling_schedule": "hbph_sfh_Cooling_Setpoint" }, - { - "g_reflectance": 0.80000000000000004, - "b_reflectance": 0.80000000000000004, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.80000000000000004, - "roughness": 0.0, - "identifier": "generic_ceiling_0.80" + "ventilation": { + "identifier": "HBPH_SFH_Ventilation_f8828676", + "air_changes_per_hour": 0.40000000000000002, + "type": "VentilationAbridged" }, - { - "g_reflectance": 0.20000000000000001, - "b_reflectance": 0.20000000000000001, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.20000000000000001, - "roughness": 0.0, - "identifier": "generic_context_0.20" - } - ], - "aperture_set": { - "interior_modifier": "generic_interior_window_vis_0.88", - "type": "ApertureModifierSetAbridged", - "skylight_modifier": "generic_exterior_window_vis_0.64", - "operable_modifier": "generic_exterior_window_vis_0.64", - "window_modifier": "generic_exterior_window_vis_0.64" - }, - "type": "GlobalModifierSet", - "door_set": { - "overhead_modifier": "generic_opaque_door_0.50", - "exterior_modifier": "generic_opaque_door_0.50", - "exterior_glass_modifier": "generic_exterior_window_vis_0.64", - "interior_modifier": "generic_opaque_door_0.50", - "type": "DoorModifierSetAbridged", - "interior_glass_modifier": "generic_interior_window_vis_0.88" - }, - "context_modifier": "generic_context_0.20", - "wall_set": { - "interior_modifier": "generic_wall_0.50", - "type": "WallModifierSetAbridged", - "exterior_modifier": "generic_wall_0.50" - }, - "roof_ceiling_set": { - "interior_modifier": "generic_ceiling_0.80", - "type": "RoofCeilingModifierSetAbridged", - "exterior_modifier": "generic_ceiling_0.80" - } - }, - "modifiers": [ - { - "g_reflectance": 0.20000000000000001, - "b_reflectance": 0.20000000000000001, - "modifier": null, - "specularity": 0.0, - "dependencies": [], - "type": "Plastic", - "r_reflectance": 0.20000000000000001, - "roughness": 0.0, - "identifier": "generic_context_0.20" - } - ] - }, - "energy": { - "schedules": [ - { - "default_day_schedule": "HBPH_SFH_Setpoint_91a54ab3_DeHumidSetp_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "program_type": "Generic Office Program", + "type": "RoomEnergyPropertiesAbridged", + "construction_set": "ConstructionSet_331aca03", + "hvac": "Room_4_6b80c479 Ideal Loads Air System", + "process_loads": [ + { + "watts": 25.416666666666668, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Refrigerator", + "lost_fraction": 0.0, + "display_name": "PhFridgeFreezer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhFridgeFreezer", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen fridge/freeze combo", + "in_conditioned_space": true, + "energy_demand": 1.2200000000000000, + "identifier": "a3649a9e-c466-4aab-a422-6f423b4d74b7", + "reference_quantity": 4, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_PhFridgeFreezer_a01db1e3" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Humidity", - "day_schedules": [ { - "interpolate": false, - "values": [ - 60.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "HBPH_SFH_Setpoint_91a54ab3_DeHumidSetp_Day Schedule" - } - ], - "identifier": "HBPH_SFH_Setpoint_91a54ab3_DeHumidSetp" - }, - { - "identifier": "Generic Office Occupancy", - "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", - "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "watts": 368.86201269764467, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Dishwasher", + "lost_fraction": 0.0, + "display_name": "PhDishwasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhDishwasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 12, + "display_name": "Kitchen dishwasher", + "in_conditioned_space": true, + "energy_demand": 269, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "836fcda0-45e3-4052-b0a7-b731229ddbf5", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "capacity_type": 1, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_PhDishwasher_370dd434" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ { - "interpolate": false, - "values": [ - 0.0, - 0.050000000000000003, - 0.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Default" + "watts": 164.21934230153215, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clotheswasher", + "lost_fraction": 0.0, + "display_name": "PhClothesWasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesWasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 0.12740000000000001, + "utilization_factor": 1.0, + "display_name": "Laundry - washer", + "in_conditioned_space": true, + "energy_demand": 120, + "modified_energy_factor": 2.7000000000000002, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "8cb05810-628b-4bb8-b232-99e87c3eade9", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhClothesWasher_4ed89ce4" }, { - "interpolate": false, - "values": [ - 0.0, - 1.0, - 0.050000000000000003 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_SmrDsn" + "watts": 741.66831073273784, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clothesdryer", + "lost_fraction": 0.0, + "display_name": "PhClothesDryer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesDryer", + "combined_energy_factor": 3.9300000000000002, + "comment": "default", + "field_utilization_factor_type": 1, + "display_name": "Laundry - dryer", + "in_conditioned_space": true, + "energy_demand": 0, + "field_utilization_factor": 1.1799999999999999, + "gas_consumption": 0, + "identifier": "8f9fd1cb-3a5b-476d-ba56-9763cc91ce23", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "_dryer_type": { + "value": "5-ELECTRIC EXHAUST AIR DRYER" + }, + "gas_efficiency_factor": 2.6699999999999999, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhClothesDryer_2919b7a5" }, { - "interpolate": false, - "values": [ - 0.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 0.0, - 0.10000000000000001, - 0.20000000000000001, - 0.94999999999999996, - 0.5, - 0.94999999999999996, - 0.29999999999999999, - 0.10000000000000001, - 0.050000000000000003 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Wkdy" + "watts": 546.30628661958428, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Cooktop", + "lost_fraction": 0.0, + "display_name": "PhCooktop", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhCooktop", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen cooking", + "in_conditioned_space": true, + "energy_demand": 0.20000000000000001, + "_cooktop_type": { + "value": "1-ELECTRICITY" + }, + "identifier": "53f31466-6ced-4727-b078-398dcbbcd830", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhCooktop_139bdd3e" }, { - "interpolate": false, - "values": [ - 0.0, - 0.10000000000000001, - 0.29999999999999999, - 0.10000000000000001, - 0.050000000000000003, - 0.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 17, - 0 - ], - [ - 19, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_OCC_SCH_Sat" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true + "watts": 1.2521406321689497, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingExterior", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingExterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Exterior Lighting", + "in_conditioned_space": false, + "energy_demand": 0, + "identifier": "3040e87b-5571-4ee6-9007-46355e1c2049", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhPhiusLightingExterior_376acd25" }, { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "default_day_schedule": "hbph_sfh_Cooktop_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "watts": 1.1415525114155252, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingGarage", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingGarage", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Garage Lighting", + "in_conditioned_space": false, + "energy_demand": 100, + "identifier": "6f148de3-1014-49b9-a612-864cb5709862", + "reference_quantity": 2, + "quantity": 0, + "reference_energy_norm": 2, + "energy_demand_per_use": 100 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_PhPhiusLightingGarage_7c020a86" }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Cooktop", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ { - "interpolate": false, - "values": [ - 0.0070000000000000001, - 0.0040000000000000001, - 0.0070000000000000001, - 0.010999999999999999, - 0.025000000000000001, - 0.042000000000000003, - 0.045999999999999999, - 0.048000000000000001, - 0.042000000000000003, - 0.050000000000000003, - 0.057000000000000002, - 0.045999999999999999, - 0.057000000000000002, - 0.043999999999999997, - 0.091999999999999998, - 0.14999999999999999, - 0.11700000000000001, - 0.059999999999999998, - 0.035000000000000003, - 0.025000000000000001, - 0.016, - 0.010999999999999999 - ], - "times": [ - [ - 0, - 0 - ], - [ - 2, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 11, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 19, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Cooktop_Day Schedule" - } - ], - "identifier": "hbph_sfh_Cooktop" - }, - { - "default_day_schedule": "Seated Adult Activity_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "watts": 872.67161937496485, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_MEL", + "lost_fraction": 0.0, + "display_name": "PhPhiusMEL", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusMEL", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "PHIUS+ MELS", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "9f72f764-4a90-4b03-8f29-e80447cdca2b", + "reference_quantity": 3, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_PhPhiusMEL_e0dabd2b" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Activity Level", - "day_schedules": [ { - "interpolate": false, - "values": [ - 120.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "Seated Adult Activity_Day Schedule" - } - ], - "identifier": "Seated Adult Activity" - }, - { - "default_day_schedule": "hbph_sfh_Cooling_Setpoint_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "watts": 737.72402539528935, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Dishwasher", + "lost_fraction": 0.0, + "display_name": "PhDishwasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhDishwasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 12, + "display_name": "Kitchen dishwasher", + "in_conditioned_space": true, + "energy_demand": 269, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "836fcda0-45e3-4052-b0a7-b731229ddbf5", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "capacity_type": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_76307564" }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + { + "watts": 328.43868460306430, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clotheswasher", + "lost_fraction": 0.0, + "display_name": "PhClothesWasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesWasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 0.12740000000000001, + "utilization_factor": 1.0, + "display_name": "Laundry - washer", + "in_conditioned_space": true, + "energy_demand": 120, + "modified_energy_factor": 2.7000000000000002, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "8cb05810-628b-4bb8-b232-99e87c3eade9", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_71231b2e" }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Cooling_Setpoint", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", - "day_schedules": [ { - "interpolate": false, - "values": [ - 25.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Cooling_Setpoint_Day Schedule" - } - ], - "identifier": "hbph_sfh_Cooling_Setpoint" - }, - { - "default_day_schedule": "hbph_sfh_Clotheswasher_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "watts": 1112.5024660991069, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clothesdryer", + "lost_fraction": 0.0, + "display_name": "PhClothesDryer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesDryer", + "combined_energy_factor": 3.9300000000000002, + "comment": "default", + "field_utilization_factor_type": 1, + "display_name": "Laundry - dryer", + "in_conditioned_space": true, + "energy_demand": 0, + "field_utilization_factor": 1.1799999999999999, + "gas_consumption": 0, + "identifier": "8f9fd1cb-3a5b-476d-ba56-9763cc91ce23", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "_dryer_type": { + "value": "5-ELECTRIC EXHAUST AIR DRYER" + }, + "gas_efficiency_factor": 2.6699999999999999, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_62b3eb1e" }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Clotheswasher", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ { - "interpolate": false, - "values": [ - 0.0089999999999999993, - 0.0070000000000000001, - 0.0040000000000000001, - 0.0070000000000000001, - 0.010999999999999999, - 0.021999999999999999, - 0.049000000000000002, - 0.072999999999999995, - 0.085999999999999993, - 0.084000000000000005, - 0.074999999999999997, - 0.067000000000000004, - 0.059999999999999998, - 0.049000000000000002, - 0.051999999999999998, - 0.050000000000000003, - 0.049000000000000002, - 0.047, - 0.032000000000000001, - 0.017000000000000001 - ], - "times": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 11, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Clotheswasher_Day Schedule" - } - ], - "identifier": "hbph_sfh_Clotheswasher" - }, - { - "default_day_schedule": "hbph_sfh_MEL_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 + "watts": 50.833333333333336, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Refrigerator", + "lost_fraction": 0.0, + "display_name": "PhFridgeFreezer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhFridgeFreezer", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen fridge/freeze combo", + "in_conditioned_space": true, + "energy_demand": 1.2200000000000000, + "identifier": "a3649a9e-c466-4aab-a422-6f423b4d74b7", + "reference_quantity": 4, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_a4835eca" }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + { + "watts": 819.45942992937648, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Cooktop", + "lost_fraction": 0.0, + "display_name": "PhCooktop", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhCooktop", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen cooking", + "in_conditioned_space": true, + "energy_demand": 0.20000000000000001, + "_cooktop_type": { + "value": "1-ELECTRICITY" + }, + "identifier": "53f31466-6ced-4727-b078-398dcbbcd830", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "identifier": "HBPH_Process_7af0c387" }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ { - "interpolate": false, - "values": [ - 0.0080000000000000002, - 0.024, - 0.050000000000000003, - 0.056000000000000001, - 0.050000000000000003, - 0.021999999999999999, - 0.014999999999999999, - 0.025999999999999999, - 0.014999999999999999, - 0.056000000000000001, - 0.078, - 0.105, - 0.126, - 0.128, - 0.087999999999999995, - 0.049000000000000002, - 0.02 - ], - "times": [ - [ - 0, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 19, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_MEL_Day Schedule" + "watts": 572.18674727811469, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Lighting", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingInterior", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingInterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Interior Lighting", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "8a6b193f-8e04-4751-8460-c8ce44c81c6f", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_0a5afd42" + }, + { + "watts": 2.5288564022831053, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingExterior", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingExterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Exterior Lighting", + "in_conditioned_space": false, + "energy_demand": 0, + "identifier": "3040e87b-5571-4ee6-9007-46355e1c2049", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_3d830a79" + }, + { + "watts": 1637.0480430554567, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_MEL", + "lost_fraction": 0.0, + "display_name": "PhPhiusMEL", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusMEL", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "PHIUS+ MELS", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "9f72f764-4a90-4b03-8f29-e80447cdca2b", + "reference_quantity": 3, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_351d78cc" } ], - "identifier": "hbph_sfh_MEL" - }, - { - "default_day_schedule": "hbph_sfh_Dishwasher_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "lighting": { + "visible_fraction": 0.25, + "display_name": "HBPH_SFH_Lighting", + "radiant_fraction": 0.32000000000000001, + "schedule": "hbph_sfh_Lighting", + "properties": { + "revive": { + "id_num": 0, + "type": "LightingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 + "type": "LightingProperties", + "ph": { + "id_num": 0, + "type": "LightingPhProperties", + "target_lux": 300, + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingInterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Interior Lighting", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "8a6b193f-8e04-4751-8460-c8ce44c81c6f", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + }, + "target_lux_height": 0.80000000000000004 + } }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Dishwasher", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ + "watts_per_area": 13.911891558295746, + "type": "LightingAbridged", + "return_air_fraction": 0.0, + "identifier": "HBPH_SFH_Lighting_d0ae4f92" + } + }, + "doe2": { + "type": "RoomDoe2Properties" + }, + "ph": { + "ph_foundations": [], + "spaces": [ { - "interpolate": false, - "values": [ - 0.014999999999999999, - 0.0070000000000000001, - 0.0050000000000000001, - 0.0030000000000000001, - 0.01, - 0.02, - 0.031, - 0.058000000000000003, - 0.065000000000000002, - 0.056000000000000001, - 0.048000000000000001, - 0.041000000000000002, - 0.045999999999999999, - 0.035999999999999997, - 0.037999999999999999, - 0.049000000000000002, - 0.086999999999999994, - 0.111, - 0.089999999999999997, - 0.067000000000000004, - 0.043999999999999997, - 0.031 - ], - "times": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 11, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 19, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Dishwasher_Day Schedule" - } - ], - "identifier": "hbph_sfh_Dishwasher" - }, - { - "default_day_schedule": "hbph_sfh_Clothesdryer_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] + "user_data": {}, + "wufi_type": 99, + "properties": { + "ph": { + "_v_sup": null, + "id_num": 0, + "_v_tran": null, + "type": "SpacePhProperties", + "_v_eta": null + }, + "type": "SpaceProperties", + "energy": { + "id_num": 0, + "type": "SpaceEnergyProperties" + } }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Clothesdryer", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.01, - 0.0060000000000000001, - 0.0040000000000000001, - 0.002, - 0.0040000000000000001, - 0.0060000000000000001, - 0.016, - 0.032000000000000001, - 0.048000000000000001, - 0.068000000000000005, - 0.078, - 0.081000000000000003, - 0.073999999999999996, - 0.067000000000000004, - 0.057000000000000002, - 0.060999999999999999, - 0.055, - 0.053999999999999999, - 0.050999999999999997, - 0.051999999999999998, - 0.053999999999999999, - 0.043999999999999997, - 0.024 - ], - "times": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 3, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 11, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Clothesdryer_Day Schedule" - } - ], - "identifier": "hbph_sfh_Clothesdryer" - }, - { - "identifier": "Generic Office Equipment", - "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.2307553806, - 0.28810717499999999, - 0.2307553806 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" - }, - { - "interpolate": false, - "values": [ - 1.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" - }, - { - "interpolate": false, - "values": [ - 0.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 0.2307553806, - 0.38123479599999999, - 0.47654349499999998, - 0.33358044650000002, - 0.28592609699999999, - 0.2307553806 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 17, - 0 - ], - [ - 19, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" - }, - { - "interpolate": false, - "values": [ - 0.30767384079999999, - 0.38123479599999999, - 0.85777829100000003, - 0.76246959199999997, - 0.85777829100000003, - 0.47654349499999998, - 0.38123479599999999 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "identifier": "Generic Office Heating", - "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", - "winter_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn", - "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" - }, - { - "interpolate": false, - "values": [ - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn" - }, - { - "interpolate": false, - "values": [ - 15.600000000000000, - 17.600000000000001, - 19.600000000000001, - 21.0, - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 15.600000000000000, - 17.800000000000001, - 20.0, - 21.0, - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy" - }, - { - "interpolate": false, - "values": [ - 15.600000000000000, - 17.800000000000001, - 20.0, - 21.0, - 15.600000000000000 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 17, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "identifier": "Generic Office Lighting", - "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun", - "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", - "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.050000000000000003, - 0.04311628, - 0.050000000000000003 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" - }, - { - "interpolate": false, - "values": [ - 1.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" - }, - { - "interpolate": false, - "values": [ - 0.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 0.050000000000000003, - 0.08623256, - 0.25869767999999999, - 0.12934883999999999, - 0.04311628, - 0.050000000000000003 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 8, - 0 - ], - [ - 12, - 0 - ], - [ - 17, - 0 - ], - [ - 19, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" - }, - { - "interpolate": false, - "values": [ - 0.050000000000000003, - 0.10000000000000001, - 0.08623256, - 0.25869767999999999, - 0.77609304000000001, - 0.43116280000000001, - 0.25869767999999999, - 0.17246512, - 0.08623256, - 0.04311628 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 20, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "identifier": "Generic Office Cooling", - "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", - "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", - "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" - }, - { - "interpolate": false, - "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" - }, - { - "interpolate": false, - "values": [ - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 26.699999999999999, - 25.600000000000001, - 25.0, - 24.0, - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" - }, - { - "interpolate": false, - "values": [ - 26.699999999999999, - 25.699999999999999, - 25.0, - 24.0, - 26.699999999999999 - ], - "times": [ - [ - 0, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 17, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "default_day_schedule": "Always On_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 1.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "Always On_Day Schedule" - } - ], - "identifier": "Always On" - }, - { - "default_day_schedule": "hbph_sfh_Lighting_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.0080000000000000002, - 0.024, - 0.050000000000000003, - 0.056000000000000001, - 0.050000000000000003, - 0.021999999999999999, - 0.014999999999999999, - 0.025999999999999999, - 0.014999999999999999, - 0.056000000000000001, - 0.078, - 0.105, - 0.126, - 0.128, - 0.087999999999999995, - 0.049000000000000002, - 0.02 - ], - "times": [ - [ - 0, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 14, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 19, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Lighting_Day Schedule" - } - ], - "identifier": "hbph_sfh_Lighting" - }, - { - "default_day_schedule": "HBPH_SFH_Setpoint_34d06c34_DeHumidSetp_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Humidity", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 60.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "HBPH_SFH_Setpoint_34d06c34_DeHumidSetp_Day Schedule" - } - ], - "identifier": "HBPH_SFH_Setpoint_34d06c34_DeHumidSetp" - }, - { - "default_day_schedule": "hbph_sfh_Refrigerator_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Refrigerator", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 1.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Refrigerator_Day Schedule" - } - ], - "identifier": "hbph_sfh_Refrigerator" - }, - { - "default_day_schedule": "hbph_sfh_Occupant_Presence_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 1.0, - 0.90000000000000002, - 0.40000000000000002, - 0.25, - 0.55000000000000004, - 0.90000000000000002, - 1.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 21, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Occupant_Presence_Day Schedule" - } - ], - "identifier": "hbph_sfh_Occupant_Presence" - }, - { - "default_day_schedule": "hbph_sfh_Combined_HotWater_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.0060000000000000001, - 0.0030000000000000001, - 0.001, - 0.0030000000000000001, - 0.021999999999999999, - 0.074999999999999997, - 0.079000000000000001, - 0.075999999999999998, - 0.067000000000000004, - 0.060999999999999999, - 0.048000000000000001, - 0.042000000000000003, - 0.036999999999999998, - 0.033000000000000002, - 0.043999999999999997, - 0.058000000000000003, - 0.069000000000000006, - 0.065000000000000002, - 0.058999999999999997, - 0.048000000000000001, - 0.042000000000000003, - 0.023 - ], - "times": [ - [ - 0, - 0 - ], - [ - 1, - 0 - ], - [ - 2, - 0 - ], - [ - 4, - 0 - ], - [ - 5, - 0 - ], - [ - 6, - 0 - ], - [ - 7, - 0 - ], - [ - 8, - 0 - ], - [ - 9, - 0 - ], - [ - 10, - 0 - ], - [ - 11, - 0 - ], - [ - 12, - 0 - ], - [ - 13, - 0 - ], - [ - 15, - 0 - ], - [ - 16, - 0 - ], - [ - 17, - 0 - ], - [ - 18, - 0 - ], - [ - 19, - 0 - ], - [ - 20, - 0 - ], - [ - 21, - 0 - ], - [ - 22, - 0 - ], - [ - 23, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Combined_HotWater_Day Schedule" - } - ], - "identifier": "hbph_sfh_Combined_HotWater" - }, - { - "identifier": "Generic Office Infiltration", - "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", - "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", - "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Fractional", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 1.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" - }, - { - "interpolate": false, - "values": [ - 1.0, - 0.25, - 1.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn" - }, - { - "interpolate": false, - "values": [ - 1.0, - 0.25, - 1.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn" - }, - { - "interpolate": false, - "values": [ - 1.0, - 0.25, - 1.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 22, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy" - }, - { - "interpolate": false, - "values": [ - 1.0, - 0.25, - 1.0 - ], - "times": [ - [ - 0, - 0 - ], - [ - 6, - 0 - ], - [ - 18, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat" - } - ], - "schedule_rules": [ - { - "apply_saturday": false, - "apply_tuesday": true, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", - "apply_wednesday": true, - "apply_thursday": true, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": true, - "apply_sunday": false, - "apply_friday": true - }, - { - "apply_saturday": true, - "apply_tuesday": false, - "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", - "apply_wednesday": false, - "apply_thursday": false, - "start_date": [ - 1, - 1 - ], - "end_date": [ - 12, - 31 - ], - "type": "ScheduleRuleAbridged", - "apply_monday": false, - "apply_sunday": false, - "apply_friday": false - } - ] - }, - { - "default_day_schedule": "hbph_sfh_Heating_Setpoint_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "display_name": "hbph_sfh_Heating_Setpoint", - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Temperature", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 20.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Heating_Setpoint_Day Schedule" - } - ], - "identifier": "hbph_sfh_Heating_Setpoint" - }, - { - "default_day_schedule": "hbph_sfh_Occupant_Activity_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Activity Level", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 112.53934481000194 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "hbph_sfh_Occupant_Activity_Day Schedule" - } - ], - "identifier": "hbph_sfh_Occupant_Activity" - }, - { - "default_day_schedule": "HumidNoLimit_Day Schedule", - "properties": { - "revive": { - "type": "ScheduleRulesetReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "type": "ScheduleRulesetPhProperties", - "operating_periods": { - "collection": [] - }, - "operating_days_wk": 7.0, - "operating_weeks_year": 52.142899999999997 - }, - "type": "ScheduleRulesetProperties" - }, - "type": "ScheduleRulesetAbridged", - "schedule_type_limit": "Humidity", - "day_schedules": [ - { - "interpolate": false, - "values": [ - 0.0 - ], - "times": [ - [ - 0, - 0 - ] - ], - "type": "ScheduleDay", - "identifier": "HumidNoLimit_Day Schedule" - } - ], - "identifier": "HumidNoLimit" - } - ], - "construction_sets": [ - { - "identifier": "ConstructionSet_1bf1f18e", - "floor_set": { - "ground_construction": null, - "interior_construction": null, - "exterior_construction": "test_floor", - "type": "FloorConstructionSetAbridged" - }, - "shade_construction": null, - "aperture_set": { - "skylight_construction": "PhWindowConstruction_e3fae238", - "window_construction": "PhWindowConstruction_e3fae238", - "operable_construction": "PhWindowConstruction_e3fae238", - "type": "ApertureConstructionSetAbridged", - "interior_construction": null - }, - "air_boundary_construction": null, - "type": "ConstructionSetAbridged", - "door_set": { - "exterior_construction": null, - "interior_glass_construction": null, - "overhead_construction": null, - "exterior_glass_construction": "PhWindowConstruction_e3fae238", - "type": "DoorConstructionSetAbridged", - "interior_construction": null - }, - "wall_set": { - "ground_construction": "My New Assembly", - "interior_construction": null, - "exterior_construction": "Ext_Wall", - "type": "WallConstructionSetAbridged" - }, - "roof_ceiling_set": { - "ground_construction": null, - "interior_construction": null, - "exterior_construction": "Ext_Roof", - "type": "RoofCeilingConstructionSetAbridged" - } - }, - { - "identifier": "ConstructionSet_a56012e3", - "floor_set": { - "ground_construction": null, - "interior_construction": null, - "exterior_construction": null, - "type": "FloorConstructionSetAbridged" - }, - "shade_construction": null, - "aperture_set": { - "skylight_construction": "PhWindowConstruction_78cc838a", - "window_construction": "PhWindowConstruction_78cc838a", - "operable_construction": "PhWindowConstruction_78cc838a", - "type": "ApertureConstructionSetAbridged", - "interior_construction": null - }, - "air_boundary_construction": null, - "type": "ConstructionSetAbridged", - "door_set": { - "exterior_construction": null, - "interior_glass_construction": null, - "overhead_construction": null, - "exterior_glass_construction": "PhWindowConstruction_78cc838a", - "type": "DoorConstructionSetAbridged", - "interior_construction": null - }, - "wall_set": { - "ground_construction": null, - "interior_construction": null, - "exterior_construction": null, - "type": "WallConstructionSetAbridged" - }, - "roof_ceiling_set": { - "ground_construction": null, - "interior_construction": null, - "exterior_construction": null, - "type": "RoofCeilingConstructionSetAbridged" - } - } - ], - "global_construction_set": { - "floor_set": { - "ground_construction": "Generic Ground Slab", - "interior_construction": "Generic Interior Floor", - "exterior_construction": "Generic Exposed Floor", - "type": "FloorConstructionSetAbridged" - }, - "shade_construction": "Generic Shade", - "materials": [ - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Painted Metal", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 7690.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsd0b2b4d3" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 45.0, - "roughness": "Smooth", - "thickness": 0.0015, - "specific_heat": 410.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Wall Air Gap", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 1.2800000000000000, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs3ba86059" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.66700000000000004, - "roughness": "Smooth", - "thickness": 0.10000000000000001, - "specific_heat": 1000.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic LW Concrete", - "solar_absorptance": 0.80000000000000004, - "type": "EnergyMaterial", - "visible_absorptance": 0.80000000000000004, - "density": 1280.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs2b7cbfca" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.53000000000000003, - "roughness": "MediumRough", - "thickness": 0.10000000000000001, - "specific_heat": 840.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Brick", - "solar_absorptance": 0.65000000000000002, - "type": "EnergyMaterial", - "visible_absorptance": 0.65000000000000002, - "density": 1920.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs196b775c" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.90000000000000002, - "roughness": "MediumRough", - "thickness": 0.10000000000000001, - "specific_heat": 790.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Acoustic Tile", - "solar_absorptance": 0.20000000000000001, - "type": "EnergyMaterial", - "visible_absorptance": 0.20000000000000001, - "density": 368.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs27157348" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.059999999999999998, - "roughness": "MediumSmooth", - "thickness": 0.02, - "specific_heat": 590.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 25mm Insulation", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 43.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs40b26389" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.029999999999999999, - "roughness": "MediumRough", - "thickness": 0.025000000000000001, - "specific_heat": 1210.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic HW Concrete", - "solar_absorptance": 0.80000000000000004, - "type": "EnergyMaterial", - "visible_absorptance": 0.80000000000000004, - "density": 2240.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs2258995e" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 1.9500000000000000, - "roughness": "MediumRough", - "thickness": 0.20000000000000001, - "specific_heat": 900.0 - }, - { - "identifier": "Generic Low-e Glass", - "solar_reflectance": 0.35999999999999999, - "conductivity": 1.0, - "visible_transmittance": 0.70999999999999996, - "dirt_correction": 1.0, - "visible_reflectance_back": 0.20999999999999999, - "type": "EnergyWindowMaterialGlazing", - "solar_reflectance_back": 0.35999999999999999, - "infrared_transmittance": 0.0, - "emissivity": 0.83999999999999997, - "visible_reflectance": 0.20999999999999999, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGlazingReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc83738ea" - }, - "type": "EnergyWindowMaterialGlazingsProperties" - }, - "solar_transmittance": 0.45000000000000001, - "emissivity_back": 0.047, - "solar_diffusing": false, - "thickness": 0.0060000000000000001 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Roof Membrane", - "solar_absorptance": 0.65000000000000002, - "type": "EnergyMaterial", - "visible_absorptance": 0.65000000000000002, - "density": 1120.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfa38963a" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.16, - "roughness": "MediumRough", - "thickness": 0.01, - "specific_heat": 1460.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Gypsum Board", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 800.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc76af7a3" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.16, - "roughness": "MediumSmooth", - "thickness": 0.012699999999999999, - "specific_heat": 1090.0 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 50mm Insulation", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 43.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfd186077" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.029999999999999999, - "roughness": "MediumRough", - "thickness": 0.050000000000000003, - "specific_heat": 1210.0 - }, - { - "gas_type": "Air", - "identifier": "Generic Window Air Gap", - "thickness": 0.012699999999999999, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGasReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs7d43404d" - }, - "type": "EnergyWindowMaterialGasProperties" - }, - "type": "EnergyWindowMaterialGas" - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic 25mm Wood", - "solar_absorptance": 0.5, - "type": "EnergyMaterial", - "visible_absorptance": 0.5, - "density": 608.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs7a22b428" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.14999999999999999, - "roughness": "MediumSmooth", - "thickness": 0.025399999999999999, - "specific_heat": 1630.0 - }, - { - "identifier": "Generic Clear Glass", - "solar_reflectance": 0.070000000000000007, - "conductivity": 1.0, - "visible_transmittance": 0.88, - "dirt_correction": 1.0, - "visible_reflectance_back": 0.080000000000000002, - "type": "EnergyWindowMaterialGlazing", - "solar_reflectance_back": 0.070000000000000007, - "infrared_transmittance": 0.0, - "emissivity": 0.83999999999999997, - "visible_reflectance": 0.080000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialGlazingReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8b75e2ab" - }, - "type": "EnergyWindowMaterialGlazingsProperties" - }, - "solar_transmittance": 0.77000000000000002, - "emissivity_back": 0.83999999999999997, - "solar_diffusing": false, - "thickness": 0.0060000000000000001 - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Generic Ceiling Air Gap", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 1.2800000000000000, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs89feed43" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.55600000000000005, - "roughness": "Smooth", - "thickness": 0.10000000000000001, - "specific_heat": 1000.0 - } - ], - "constructions": [ - { - "solar_reflectance": 0.20000000000000001, - "visible_reflectance": 0.20000000000000001, - "properties": { - "revive": { - "type": "ShadeConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs52c33215" - }, - "type": "ShadeConstructionProperties" - }, - "type": "ShadeConstruction", - "is_specular": false, - "identifier": "Generic Context" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete", - "Generic Wall Air Gap", - "Generic Gypsum Board" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsa5d391f7" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Underground Wall" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Painted Metal", - "Generic 25mm Insulation", - "Generic Painted Metal" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfca5e0eb" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Exterior Door" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsdf3d5298" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Ground Slab" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic LW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsca23f1d1" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Ceiling" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 50mm Insulation", - "Generic HW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs3a37a589" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Underground Roof" - }, - { - "type": "WindowConstructionAbridged", - "materials": [ - "Generic Clear Glass" - ], - "properties": { - "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs0ca1a2e8" - }, - "ph": { - "type": "WindowConstructionPhProperties", - "id_num": 0 - }, - "type": "WindowConstructionProperties" - }, - "identifier": "Generic Single Pane" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Acoustic Tile", - "Generic Ceiling Air Gap", - "Generic LW Concrete" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc891ca92" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Floor" - }, - { - "solar_reflectance": 0.34999999999999998, - "visible_reflectance": 0.34999999999999998, - "properties": { - "revive": { - "type": "ShadeConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs6388f9ce" - }, - "type": "ShadeConstructionProperties" - }, - "type": "ShadeConstruction", - "is_specular": false, - "identifier": "Generic Shade" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Gypsum Board", - "Generic Wall Air Gap", - "Generic Gypsum Board" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs43876e75" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Wall" - }, - { - "properties": { - "ph": { - "type": "AirBoundaryConstructionPhProperties", - "id_num": 0 - }, - "type": "AirBoundaryConstructionProperties" - }, - "type": "AirBoundaryConstructionAbridged", - "air_mixing_per_area": 0.10000000000000001, - "air_mixing_schedule": "Always On", - "identifier": "Generic Air Boundary" - }, - { - "type": "WindowConstructionAbridged", - "materials": [ - "Generic Low-e Glass", - "Generic Window Air Gap", - "Generic Clear Glass" - ], - "properties": { - "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse9f88510" - }, - "ph": { - "type": "WindowConstructionPhProperties", - "id_num": 0 - }, - "type": "WindowConstructionProperties" - }, - "identifier": "Generic Double Pane" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Painted Metal", - "Generic Ceiling Air Gap", - "Generic 50mm Insulation", - "Generic LW Concrete" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse55a9158" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Exposed Floor" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Brick", - "Generic LW Concrete", - "Generic 50mm Insulation", - "Generic Wall Air Gap", - "Generic Gypsum Board" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs28d69a4b" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Exterior Wall" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic 25mm Wood" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc8b9ca31" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Interior Door" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "Generic Roof Membrane", - "Generic 50mm Insulation", - "Generic LW Concrete", - "Generic Ceiling Air Gap", - "Generic Acoustic Tile" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfse912f9d8" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "Generic Roof" - } - ], - "context_construction": "Generic Context", - "aperture_set": { - "skylight_construction": "Generic Double Pane", - "window_construction": "Generic Double Pane", - "operable_construction": "Generic Double Pane", - "type": "ApertureConstructionSetAbridged", - "interior_construction": "Generic Single Pane" - }, - "air_boundary_construction": "Generic Air Boundary", - "type": "GlobalConstructionSet", - "door_set": { - "exterior_construction": "Generic Exterior Door", - "interior_glass_construction": "Generic Single Pane", - "overhead_construction": "Generic Exterior Door", - "exterior_glass_construction": "Generic Double Pane", - "type": "DoorConstructionSetAbridged", - "interior_construction": "Generic Interior Door" - }, - "wall_set": { - "ground_construction": "Generic Underground Wall", - "interior_construction": "Generic Interior Wall", - "exterior_construction": "Generic Exterior Wall", - "type": "WallConstructionSetAbridged" - }, - "roof_ceiling_set": { - "ground_construction": "Generic Underground Roof", - "interior_construction": "Generic Interior Ceiling", - "exterior_construction": "Generic Roof", - "type": "RoofCeilingConstructionSetAbridged" - } - }, - "program_types": [ - { - "lighting": { - "visible_fraction": 0.20000000000000001, - "return_air_fraction": 0.0, - "radiant_fraction": 0.69999999999999996, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "LightingReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "LightingPhProperties", - "target_lux_height": 0.80000000000000004, - "target_lux": 300, - "id_num": 0 - }, - "type": "LightingProperties" - }, - "type": "LightingAbridged", - "watts_per_area": 10.550000000000001, - "schedule": "Generic Office Lighting", - "identifier": "Generic Office Lighting" - }, - "people": { - "occupancy_schedule": "Generic Office Occupancy", - "radiant_fraction": 0.29999999999999999, - "people_per_area": 0.056500000000000002, - "properties": { - "revive": { - "type": "PeopleReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "number_bedrooms": 0, - "type": "PeoplePhProperties", - "number_people": 0.0, - "dwellings": { - "identifier": "3efe775f-fd49-46b8-abb0-70ac606e192c", - "num_dwellings": 0 - } - }, - "type": "PeopleProperties" - }, - "type": "PeopleAbridged", - "latent_fraction": { - "type": "Autocalculate" - }, - "activity_schedule": "Seated Adult Activity", - "identifier": "Generic Office People" - }, - "ventilation": { - "type": "VentilationAbridged", - "identifier": "Generic Office Ventilation", - "flow_per_person": 0.0023600000000000001, - "flow_per_area": 0.00030499999999999999 - }, - "type": "ProgramTypeAbridged", - "setpoint": { - "type": "SetpointAbridged", - "cooling_schedule": "Generic Office Cooling", - "identifier": "Generic Office Setpoints", - "heating_schedule": "Generic Office Heating" - }, - "infiltration": { - "type": "InfiltrationAbridged", - "flow_per_exterior_area": 0.00022660000000000001, - "identifier": "Generic Office Infiltration", - "schedule": "Generic Office Infiltration" - }, - "electric_equipment": { - "radiant_fraction": 0.5, - "lost_fraction": 0.0, - "properties": { - "revive": { - "type": "ElectricEquipmentReviveProperties", - "id_num": 0 - }, - "ph": { - "type": "ElectricEquipmentPhProperties", - "equipment_collection": { - "equipment_set": {} - } - }, - "type": "ElectricEquipmentProperties" - }, - "type": "ElectricEquipmentAbridged", - "watts_per_area": 10.330000000000000, - "schedule": "Generic Office Equipment", - "latent_fraction": 0.0, - "identifier": "Generic Office Equipment" - }, - "identifier": "Generic Office Program" - } - ], - "materials": [ - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Plywood", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsb5199210" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.12, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.019, - "identifier": "Plywood" - }, - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "SS_Cladding", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsfb487af3" - }, - "ph": { - "ph_color": { - "a": 255, - "b": 99, - "r": 212, - "g": 182 - }, - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 2.0605180000000001, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.025399999999999999, - "identifier": "SS_Cladding" - }, - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "SS_GWB", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs0df07a8b" - }, - "ph": { - "ph_color": { - "a": 255, - "b": 161, - "r": 161, - "g": 161 - }, - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.25756499999999999, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.025399999999999999, - "identifier": "SS_GWB" - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "MAT_Mass", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 2500.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc71f07fe" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 100.0, - "roughness": "Rough", - "thickness": 0.01, - "specific_heat": 460.0 - }, - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "GWB", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsbb6e228a" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.12, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.012699999999999999, - "identifier": "GWB" - }, - { - "display_name": "test-shade", - "solar_transmittance": 0.90000000000000002, - "top_opening_multiplier": 0.5, - "visible_transmittance": 0.90000000000000002, - "left_opening_multiplier": 0.5, - "thickness": 0.10000000000000001, - "visible_reflectance": 0.099999999999999978, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialShadeReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs6eb71c15" - }, - "type": "EnergyWindowMaterialShadeProperties" - }, - "distance_to_glass": 0.050000000000000003, - "airflow_permeability": 0.0, - "conductivity": 0.90000000000000002, - "type": "EnergyWindowMaterialShade", - "bottom_opening_multiplier": 0.5, - "identifier": "test-shade", - "right_opening_multiplier": 0.5, - "infrared_transmittance": 0.0, - "emissivity": 0.90000000000000002, - "solar_reflectance": 0.099999999999999978 - }, - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_1+Mix_1+Mix_2", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs20a2021b" - }, - "ph": { - "ph_color": { - "a": 255, - "b": 255, - "r": 255, - "g": 84 - }, - "divisions": { - "column_widths": [ - 0.012699999999999999, - 0.07619999999999999, - 0.012699999999999999 - ], - "cells": [ - { - "column": 0, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Mix_2", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsd2ba3734" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Mix_2" - }, - "row": 0 - }, - { - "column": 1, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs20a2021b" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.040000000000000001, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_1" - }, - "row": 0 - }, - { - "column": 2, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs20a2021b" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.040000000000000001, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_1" - }, - "row": 0 - } - ], - "steel_stud_spacing_mm": null, - "row_heights": [ - 1.0 - ] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.16, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_1+Mix_1+Mix_2" - }, - { - "thermal_absorptance": 0.90000000000000002, - "identifier": "Steel-Stud Layer [SS_Roxul]", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterial", - "visible_absorptance": 0.69999999999999996, - "density": 999.0, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsaf03a6c6" - }, - "ph": { - "ph_color": { - "a": 255, - "b": 76, - "r": 85, - "g": 207 - }, - "divisions": { - "column_widths": [ - 1.0 - ], - "cells": [ - { - "column": 0, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "SS_Roxul", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsb66f4f99" - }, - "ph": { - "ph_color": { - "a": 255, - "b": 76, - "r": 85, - "g": 207 - }, - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.038832999999999999, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.088900000000000007, - "identifier": "SS_Roxul" - }, - "row": 0 - } - ], - "steel_stud_spacing_mm": 406.39999999999998, - "row_heights": [ - 1.0 - ] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "conductivity": 0.082997690079743267, - "roughness": "MediumRough", - "thickness": 0.088900000000000007, - "specific_heat": 999.0 - }, - { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_2 + Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsae59ad0f" - }, - "ph": { - "divisions": { - "column_widths": [ - 0.18414999999999998, - 0.038099999999999995, - 0.18414999999999998 - ], - "cells": [ - { - "column": 0, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" - }, - "row": 0 - }, - { - "column": 1, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" - }, - "row": 0 - }, - { - "column": 2, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "number": "102", + "name": "Room_4", + "identifier": "f7cc8237-23ea-4e23-9ff9-4ea3663bf8a5", + "quantity": 1, + "volumes": [ + { + "user_data": {}, + "floor": { + "user_data": {}, + "display_name": "0e31d160-9075-41c3-bd72-07791924c41b", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ] }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" + "boundary": [ + [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 0.0 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 0.0 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ] + ], + "type": "Face3D" }, - "row": 0 - }, - { - "column": 0, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_2", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsae59ad0f" + "identifier": "0e31d160-9075-41c3-bd72-07791924c41b", + "floor_segments": [ + { + "user_data": {}, + "net_floor_area": 10.890000000000002, + "net_area_factor": 1.0, + "display_name": "941394fa-c60b-4d25-8399-ea6ef0ac2a7e", + "weighting_factor": 1.0, + "floor_area": 10.890000000000002, + "weighted_net_floor_area": 10.890000000000002, + "reference_point": { + "z": 0.11000000000000001, + "type": "Point3D", + "x": 1.7845510657596111, + "y": -8.0486030474941046 }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] + "identifier": "941394fa-c60b-4d25-8399-ea6ef0ac2a7e", + "weighted_floor_area": 10.890000000000002, + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ] }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "boundary": [ + [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 0.0 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 0.0 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ] + ], + "type": "Face3D" + } + } + ] + }, + "display_name": "00505a11-dbc0-4b88-ad5e-d8590267bd0b", + "avg_ceiling_height": 2.75, + "geometry": [ + { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + -1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ] }, - "type": "EnergyMaterial", - "conductivity": 0.040000000000000001, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_2" + "boundary": [ + [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 0.0 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 0.0 + ], + [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ] + ], + "type": "Face3D" }, - "row": 1 - }, - { - "column": 1, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + { + "plane": { + "type": "Plane", + "n": [ + -0.98480775301220813, + 0.17364817766693041, + 0.0 + ], + "x": [ + 0.17364817766693041, + 0.98480775301220813, + 0.0 + ], + "o": [ + -0.12690121986096739, + -9.3870163468138124, + 2.75 + ] + }, + "boundary": [ + [ + -0.12690121986096739, + -9.3870163468138124, + 2.75 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 2.75 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ], + [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ] + ], + "type": "Face3D" + }, + { + "plane": { + "type": "Plane", + "n": [ + 0.17364817766692997, + 0.98480775301220813, + 0.0 + ], + "x": [ + 0.98480775301220813, + -0.17364817766692997, + 0.0 + ], + "o": [ + 0.44613776643990277, + -6.1371507618735270, + 2.75 + ] }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" + "boundary": [ + [ + 0.44613776643990277, + -6.1371507618735270, + 2.75 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 2.75 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 0.0 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 0.0 + ] + ], + "type": "Face3D" }, - "row": 1 - }, - { - "column": 2, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Insulation_2", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsae59ad0f" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + { + "plane": { + "type": "Plane", + "n": [ + 0.98480775301220813, + -0.17364817766693033, + 0.0 + ], + "x": [ + -0.17364817766693033, + -0.98480775301220813, + 0.0 + ], + "o": [ + 3.6960033513801895, + -6.7101897481743960, + 2.75 + ] }, - "type": "EnergyMaterial", - "conductivity": 0.040000000000000001, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_2" + "boundary": [ + [ + 3.6960033513801895, + -6.7101897481743960, + 2.75 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 2.75 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 0.0 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 0.0 + ] + ], + "type": "Face3D" }, - "row": 1 - }, - { - "column": 0, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + { + "plane": { + "type": "Plane", + "n": [ + -0.1736481776669305, + -0.98480775301220802, + 0.0 + ], + "x": [ + -0.98480775301220802, + 0.1736481776669305, + 0.0 + ], + "o": [ + 3.1229643650793193, + -9.9600553331146831, + 2.75 + ] }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" + "boundary": [ + [ + 3.1229643650793193, + -9.9600553331146831, + 2.75 + ], + [ + -0.12690121986096739, + -9.3870163468138124, + 2.75 + ], + [ + -0.12690121986096739, + -9.3870163468138124, + 0.0 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + 0.0 + ] + ], + "type": "Face3D" + }, + { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 3.1229643650793193, + -9.9600553331146831, + 2.75 + ] + }, + "boundary": [ + [ + 3.1229643650793193, + -9.9600553331146831, + 2.75 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + 2.75 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + 2.75 + ], + [ + -0.12690121986096739, + -9.3870163468138124, + 2.75 + ] + ], + "type": "Face3D" + } + ], + "identifier": "00505a11-dbc0-4b88-ad5e-d8590267bd0b" + } + ] + } + ], + "type": "RoomPhPropertiesAbridged", + "specific_heat_capacity": "1-LIGHTWEIGHT", + "specific_heat_capacity_wh_m2k": null, + "ph_bldg_segment_id": "4d4a70c3-d7bb-4822-9d05-76690826f3cf" + }, + "ph_hvac": { + "renewable_devices": [ + { + "user_data": {}, + "photovoltaic_renewable_energy": 1000.0, + "utilization_factor": 1.0, + "array_size": 0.0, + "display_name": "my_PV_system", + "identifier": "4a922833-32b0-47fd-960a-c4303fb0d354", + "percent_coverage": 1.0, + "device_typename": "PhPhotovoltaicDevice" + } + ], + "ventilation_system": { + "user_data": {}, + "exhaust_ducting": [ + { + "user_data": {}, + "display_name": "Test_Vent_System_exhaust", + "duct_type": 2, + "identifier": "83b6d684-38cf-4004-868f-216236ccb039", + "segments": { + "0608b827-200f-4371-b417-7a32b5a700ea": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness": 0.02794, + "width": null, + "display_name": "0608b827-200f-4371-b417-7a32b5a700ea", + "insulation_reflective": true, + "height": null, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 1.0832885283134288, + -0.19101299543362338, + 0.0 + ] }, - "row": 2 - }, - { - "column": 1, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" + "identifier": "0608b827-200f-4371-b417-7a32b5a700ea", + "diameter": 0.17600000000000002 + } + } + } + ], + "display_name": "Test_Vent_System", + "id_num": 0, + "supply_ducting": [ + { + "user_data": {}, + "display_name": "__unnamed_vent_duct__", + "duct_type": 1, + "identifier": "fbb4d378-19bd-4f8e-913c-804d02965a68", + "segments": { + "30773295-10c7-4575-b9d2-d278bcd648ce": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness": 0.02794, + "width": null, + "display_name": "30773295-10c7-4575-b9d2-d278bcd648ce", + "insulation_reflective": true, + "height": null, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 1.1000000000000001 + ] + }, + "identifier": "30773295-10c7-4575-b9d2-d278bcd648ce", + "diameter": 0.17600000000000002 + } + } + } + ], + "ventilation_unit": { + "user_data": {}, + "sensible_heat_recovery": 0.82999999999999996, + "display_name": "Test_Unit", + "latent_heat_recovery": 0.0, + "electric_efficiency": 0.33300000000000002, + "frost_protection_reqd": true, + "in_conditioned_space": true, + "identifier": "1f7b47b6-c3a0-4fff-98ea-2afd0b9eee29", + "quantity": 1, + "temperature_below_defrost_used": -5.0 + }, + "sys_type": 1, + "identifier": "9a7088f7-b815-4cfe-b0dd-cf9829768942" + }, + "id_num": 0, + "supportive_devices": [ + { + "user_data": {}, + "annual_period_operation_khrs": 6.5, + "device_class_name": "PhSupportiveDevice", + "display_name": "Example Device", + "device_type": 10, + "in_conditioned_space": false, + "norm_energy_demand_W": 123.0, + "identifier": "e23d6695-f807-4da4-819f-f4bb97db5e52", + "quantity": 3 + } + ], + "type": "RoomPhHvacPropertiesAbridged", + "exhaust_vent_devices": [ + { + "user_data": {}, + "device_class_name": "ExhaustVentDryer", + "display_name": "example_dryer_vent", + "annual_runtime_minutes": 7.625, + "exhaust_flow_rate_m3s": 123.0, + "identifier": "e7b33f1a-350a-4de0-a856-45d210f912c2", + "quantity": 1 + } + ], + "hot_water_system": { + "tank_solar": { + "user_data": {}, + "standby_losses": 4.0, + "display_name": "_unnamed_hw_tank_", + "_tank_type": { + "value": "2-DHW ONLY" + }, + "in_conditioned_space": true, + "room_temp": 20, + "storage_capacity": 300, + "solar_losses": 0.0, + "identifier": "b9a5862e-728a-47e5-9a97-dc3c61f1b43b", + "quantity": 1, + "storage_loss_rate": 0.0, + "standby_fraction": 0.29999999999999999, + "solar_connection": false, + "water_temp": 60 + }, + "recirc_temp": 48.0, + "display_name": "SHW System_18a3d481", + "id_num": 0, + "type": "PhHvacHotWaterSystemPh", + "distribution_piping": { + "d7658299-88be-4055-b690-afedd35c43ec": { + "user_data": {}, + "multiplier": 1, + "demand_recirculation": true, + "display_name": "Test_Trunk", + "pipe_element": { + "display_name": "79387bb8-1edd-483d-ad3f-dc2c457775c6", + "identifier": "79387bb8-1edd-483d-ad3f-dc2c457775c6", + "user_data": {}, + "segments": { + "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 38.099999999999994, + "water_temp_c": 60.0, + "daily_period": 24, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 5.5 + ] }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" + "identifier": "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d", + "material_value": "6-PEX" + } + } + }, + "identifier": "d7658299-88be-4055-b690-afedd35c43ec", + "branches": { + "389bfced-fd2f-4e93-9aef-00707806b84f": { + "user_data": {}, + "fixtures": { + "9386407e-ba7f-41cd-826d-d4d70e96a4d2": { + "display_name": "Test_Fixture", + "identifier": "9386407e-ba7f-41cd-826d-d4d70e96a4d2", + "user_data": {}, + "segments": { + "142afb5c-1cb3-4694-a1ce-66023f4be76c": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "142afb5c-1cb3-4694-a1ce-66023f4be76c", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 9.5249999999999986, + "water_temp_c": 55.0, + "daily_period": 24, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 5.5 + ] + }, + "identifier": "142afb5c-1cb3-4694-a1ce-66023f4be76c", + "material_value": "1-COPPER_M" + } + } + } }, - "row": 2 - }, - { - "column": 2, - "material": { - "solar_absorptance": 0.69999999999999996, - "roughness": "MediumRough", - "display_name": "Wood_1", - "thermal_absorptance": 0.90000000000000002, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs8576c9c8" - }, - "ph": { - "divisions": { - "column_widths": [], - "cells": [], - "steel_stud_spacing_mm": null, - "row_heights": [] - }, + "display_name": "Test_Branch", + "pipe_element": { + "display_name": "56d3fc8d-20a9-4f7c-9e7d-f163c63d5793", + "identifier": "56d3fc8d-20a9-4f7c-9e7d-f163c63d5793", + "user_data": {}, + "segments": { + "b01a32e7-de41-462a-8475-23299737446d": { "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 1.0, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Wood_1" + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "b01a32e7-de41-462a-8475-23299737446d", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 19.049999999999997, + "water_temp_c": 60.0, + "daily_period": 24, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 5.5 + ] + }, + "identifier": "b01a32e7-de41-462a-8475-23299737446d", + "material_value": "3-COPPER_K" + } + } }, - "row": 2 + "identifier": "389bfced-fd2f-4e93-9aef-00707806b84f" } - ], - "steel_stud_spacing_mm": null, - "row_heights": [ - 0.07619999999999999, - 2.3241000000000001, - 0.038099999999999995 - ] - }, - "user_data": {}, - "id_num": 0 - }, - "type": "EnergyMaterialProperties" - }, - "type": "EnergyMaterial", - "conductivity": 0.17078124999999994, - "visible_absorptance": 0.69999999999999996, - "specific_heat": 999.0, - "density": 999.0, - "thickness": 0.45000000000000001, - "identifier": "Insulation_2 + Wood_1" - }, - { - "r_value": 1.0, - "visible_absorptance": 0.69999999999999996, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyMaterialNoMassReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 + } + } }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsd74bff64" + "recirc_piping": { + "f6b5e96e-0af8-4740-be9a-b528c6026653": { + "display_name": "_unnamed_", + "identifier": "f6b5e96e-0af8-4740-be9a-b528c6026653", + "user_data": {}, + "segments": { + "d0282c9e-0509-403d-8ae5-4726ff85b965": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 25.399999999999999, + "display_name": "d0282c9e-0509-403d-8ae5-4726ff85b965", + "insulation_reflective": true, + "insulation_quality": null, + "diameter_mm": 25.399999999999999, + "water_temp_c": 48.0, + "daily_period": 23.0, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 1.1000000000000001 + ] + }, + "identifier": "d0282c9e-0509-403d-8ae5-4726ff85b965", + "material_value": "2-COPPER_L" + } + } + } }, - "ph": { - "user_data": {}, - "divisions": null, - "id_num": 0 + "identifier": "1e3f6097-1cb1-47f1-a238-f54d49838c27", + "heaters": { + "3a3e8231-f071-41a4-82f3-fc1da3023f4e": { + "user_data": {}, + "display_name": "3a3e8231-f071-41a4-82f3-fc1da3023f4e", + "in_conditioned_space": true, + "annual_energy_factor": 3.0251000000000001, + "annual_COP": null, + "total_system_perf_ratio": null, + "identifier": "3a3e8231-f071-41a4-82f3-fc1da3023f4e", + "percent_coverage": 1.0, + "heater_type": "PhHvacHotWaterHeaterHeatPump_Inside" + } }, - "type": "EnergyMaterialNoMassProperties" + "recirc_hours": 23, + "number_tap_points": 1 }, - "identifier": "MAT_test_floor", - "thermal_absorptance": 0.90000000000000002, - "roughness": "Rough", - "solar_absorptance": 0.69999999999999996, - "type": "EnergyMaterialNoMass" - }, - { - "vt": 0.59999999999999998, - "display_name": "PhWindowConstruction_e3fae238", - "identifier": "PhWindowConstruction_e3fae238", - "u_factor": 1.0757635684464950, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialSimpleGlazSysReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 - }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, + "heat_pump_systems": [ + { "user_data": {}, - "identifier": "rfs5c1777e2" - }, - "type": "EnergyWindowMaterialSimpleGlazSysProperties" - }, - "shgc": 0.40000000000000002, - "type": "EnergyWindowMaterialSimpleGlazSys" - }, - { - "vt": 0.59999999999999998, - "display_name": "PhWindowConstruction_78cc838a", - "identifier": "PhWindowConstruction_78cc838a", - "u_factor": 0.83391891891891878, - "properties": { - "revive": { - "id_num": 0, - "labor_fraction": 0.40000000000000002, - "type": "EnergyWindowMaterialSimpleGlazSysReviveProperties", - "kg_CO2_per_m2": { - "unit": "KG/M2", - "value": 0.0 - }, - "cost_per_m2": { - "unit": "COST/M2", - "value": 0.0 + "heat_pump_class_name": "PhHeatPumpRatedMonthly", + "ambient_temp_2": 8.3330000000000002, + "ambient_temp_1": -8.3330000000000002, + "display_name": "None", + "COP_1": 2.5, + "cooling_params": { + "recirculation": { + "user_data": {}, + "capacity": 10.0, + "flow_rate_m3_hr": 100.0, + "display_name": "25d8862b-ced8-4724-a307-96930d10c8e9", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "flow_rate_variable": true, + "used": false, + "identifier": "25d8862b-ced8-4724-a307-96930d10c8e9", + "single_speed": false + }, + "ventilation": { + "user_data": {}, + "capacity": 10.0, + "display_name": "15fe94a1-f94f-46b5-b823-bae561d2a49e", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "used": false, + "identifier": "15fe94a1-f94f-46b5-b823-bae561d2a49e", + "single_speed": false + }, + "dehumidification": { + "user_data": {}, + "display_name": "f0570d6b-181f-45d3-9463-a2ed44e4a5b8", + "annual_COP": 4.0, + "used": false, + "useful_heat_loss": false, + "identifier": "f0570d6b-181f-45d3-9463-a2ed44e4a5b8" + }, + "percent_coverage": 1.0, + "panel": { + "user_data": {}, + "display_name": "64c3e80a-7e5a-4732-8237-098ac41a0139", + "annual_COP": 4.0, + "used": false, + "identifier": "64c3e80a-7e5a-4732-8237-098ac41a0139" + } }, - "lifetime_years": 25 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsb998b1e1" - }, - "type": "EnergyWindowMaterialSimpleGlazSysProperties" - }, - "shgc": 0.40000000000000002, - "type": "EnergyWindowMaterialSimpleGlazSys" - } - ], - "constructions": [ - { - "materials": [ - "Plywood", - "Insulation_1+Mix_1+Mix_2", - "GWB" - ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "identifier": "ee11c751-7b31-4173-9c6b-fefbbcb1c327", + "percent_coverage": 1.0, + "COP_2": 2.5 }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, + { "user_data": {}, - "identifier": "rfs6ee9d2a1" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "display_name": "Ext_Roof", - "type": "OpaqueConstructionAbridged", - "identifier": "Ext_Roof" - }, - { - "type": "OpaqueConstructionAbridged", - "materials": [ - "MAT_Mass", - "MAT_test_floor", - "MAT_Mass" + "heat_pump_class_name": "PhHeatPumpRatedMonthly", + "ambient_temp_2": 12.0, + "ambient_temp_1": -3.3300000000000001, + "display_name": "Example_Heat_Pump", + "COP_1": 3.3999999999999999, + "cooling_params": { + "recirculation": { + "user_data": {}, + "capacity": 10.0, + "flow_rate_m3_hr": 100.08000000000000, + "display_name": "_unnamed_recirculation_cooling__8af3574b", + "min_coil_temp": 10.0, + "annual_COP": 2.0, + "flow_rate_variable": true, + "used": true, + "identifier": "9a933703-7df6-4328-a347-95ef4b15fe13", + "single_speed": false + }, + "ventilation": { + "user_data": {}, + "capacity": 10.0, + "display_name": "5decd2b4-edba-460c-ba97-58d8d3e60eab", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "used": false, + "identifier": "5decd2b4-edba-460c-ba97-58d8d3e60eab", + "single_speed": false + }, + "dehumidification": { + "user_data": {}, + "display_name": "_unnamed_dehumidification_cooling__8ff770a1", + "annual_COP": 2.0, + "used": true, + "useful_heat_loss": false, + "identifier": "3b186981-9e21-482a-b186-7b1a15bf1a3b" + }, + "percent_coverage": 1.0, + "panel": { + "user_data": {}, + "display_name": "d84b19ad-32ad-40e1-87b0-9d9c13f4db20", + "annual_COP": 4.0, + "used": false, + "identifier": "d84b19ad-32ad-40e1-87b0-9d9c13f4db20" + } + }, + "identifier": "efbb29ab-7f08-4719-a771-9b639bc09388", + "percent_coverage": 1.0, + "COP_2": 4.1200000000000001 + } ], - "properties": { - "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs683f2cc9" - }, - "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 - }, - "type": "OpaqueConstructionProperties" - }, - "identifier": "test_floor" + "heating_systems": [] }, + "type": "RoomPropertiesAbridged" + }, + "type": "Room", + "identifier": "Room_4_6b80c479", + "story": "2" + }, + { + "zone": "HBPH_DWELLING_3c8b9d5b", + "faces": [ { - "materials": [ - "Plywood", - "Insulation_2 + Wood_1", - "GWB" - ], + "display_name": "Room_3_68564805..Face0", "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsce961bd6" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 + "id_num": 0, + "type": "FacePhPropertiesAbridged" }, - "type": "OpaqueConstructionProperties" + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "display_name": "Ext_Wall", - "type": "OpaqueConstructionAbridged", - "identifier": "Ext_Wall" + "boundary_condition": { + "type": "Ground" + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -0.17364817766693011, + -0.98480775301220813, + 0.0 + ], + "x": [ + -0.98480775301220813, + 0.17364817766693011, + 0.0 + ], + "o": [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ] + }, + "boundary": [ + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + -5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ] + ], + "type": "Face3D" + }, + "identifier": "Room_3_68564805..Face0" }, { - "materials": [ - "SS_Cladding", - "SS_GWB", - "Steel-Stud Layer [SS_Roxul]", - "SS_GWB" - ], + "display_name": "Room_3_68564805..Face1", "properties": { "revive": { - "type": "OpaqueConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs7fbd65cd" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { - "type": "OpaqueConstructionPhProperties", - "id_num": 0 + "id_num": 0, + "type": "FacePhPropertiesAbridged" }, - "type": "OpaqueConstructionProperties" + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "display_name": "My New Assembly", - "type": "OpaqueConstructionAbridged", - "identifier": "My New Assembly" - }, - { - "control_type": "AlwaysOn", - "window_construction": { - "type": "WindowConstructionAbridged", - "materials": [ - "PhWindowConstruction_e3fae238" - ], - "properties": { - "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 - }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs94ea0a53" - }, - "ph": { - "type": "WindowConstructionPhProperties", - "ph_frame": { - "top": { - "u_factor": 1.0, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_08d4dcc7", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_08d4dcc7" - }, - "bottom": { - "u_factor": 1.0, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_08d4dcc7", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_08d4dcc7" - }, - "id_num": 0, - "display_name": "PhWindowFrame_5c45c8de", - "user_data": {}, - "left": { - "u_factor": 1.0, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_08d4dcc7", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_08d4dcc7" - }, - "right": { - "u_factor": 1.0, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_08d4dcc7", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_08d4dcc7" - }, - "identifier": "PhWindowFrame_5c45c8de" - }, - "ph_glazing": { - "u_factor": 0.80000000000000004, - "g_value": 0.40000000000000002, - "id_num": 0, - "display_name": "PhWindowGlazing_9b52cf10", - "user_data": {}, - "identifier": "PhWindowGlazing_9b52cf10" - }, - "id_num": 0 - }, - "type": "WindowConstructionProperties" + "boundary_condition": { + "type": "Ground" + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + -0.98480775301220813, + 0.17364817766693033, + 0.0 + ], + "x": [ + 0.17364817766693033, + 0.98480775301220813, + 0.0 + ], + "o": [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ] }, - "identifier": "PhWindowConstruction_e3fae238" + "boundary": [ + [ + 0.0, + -5.5, + 0.0 + ], + [ + 0.0, + -5.5, + -5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ] + ], + "type": "Face3D" }, + "identifier": "Room_3_68564805..Face1" + }, + { + "display_name": "Room_3_68564805..Face2", "properties": { "revive": { - "type": "WindowConstructionShadeReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs0d6dd22d" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { - "type": "WindowConstructionShadePhProperties", - "id_num": 0 + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" + }, + "boundary_condition": { + "type": "Ground" + }, + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.17364817766693044, + 0.98480775301220813, + 0.0 + ], + "x": [ + 0.98480775301220813, + -0.17364817766693044, + 0.0 + ], + "o": [ + 0.0, + -5.5, + 0.0 + ] }, - "type": "WindowConstructionShadeProperties" + "boundary": [ + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + -5.5 + ], + [ + 0.0, + -5.5, + -5.5 + ], + [ + 0.0, + -5.5, + 0.0 + ] + ], + "type": "Face3D" }, - "type": "WindowConstructionShadeAbridged", - "shade_location": "Interior", - "shade_material": "test-shade", - "identifier": "PhWindowConstruction_e3fae238" + "identifier": "Room_3_68564805..Face2" }, { - "type": "WindowConstructionAbridged", - "materials": [ - "PhWindowConstruction_78cc838a" - ], + "display_name": "Room_3_68564805..Face3", "properties": { "revive": { - "type": "WindowConstructionReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfs20b8934c" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" }, "ph": { - "type": "WindowConstructionPhProperties", - "ph_frame": { - "top": { - "u_factor": 0.123, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_41512c97", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_41512c97" - }, - "bottom": { - "u_factor": 0.123, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_41512c97", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_41512c97" - }, - "id_num": 0, - "display_name": "PhWindowFrame_1e8adb7e", - "user_data": {}, - "left": { - "u_factor": 0.123, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_41512c97", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_41512c97" - }, - "right": { - "u_factor": 0.123, - "psi_install": 0.040000000000000001, - "chi_value": 0.0, - "id_num": 0, - "psi_glazing": 0.040000000000000001, - "display_name": "PhWindowFrameElement_41512c97", - "user_data": {}, - "width": 0.10000000000000001, - "identifier": "PhWindowFrameElement_41512c97" - }, - "identifier": "PhWindowFrame_1e8adb7e" - }, - "ph_glazing": { - "u_factor": 0.80000000000000004, - "g_value": 0.40000000000000002, - "id_num": 0, - "display_name": "PhWindowGlazing_2de905c1", - "user_data": {}, - "identifier": "PhWindowGlazing_2de905c1" - }, - "id_num": 0 + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" }, - "type": "WindowConstructionProperties" + "type": "FacePropertiesAbridged" }, - "identifier": "PhWindowConstruction_78cc838a" - } - ], - "shws": [], - "schedule_type_limits": [ - { - "lower_limit": 0.0, - "upper_limit": { - "type": "NoLimit" + "boundary_condition": { + "type": "Ground" }, - "unit_type": "ActivityLevel", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Activity Level" - }, - { - "lower_limit": -273.14999999999998, - "upper_limit": { - "type": "NoLimit" + "type": "Face", + "face_type": "Wall", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.98480775301220813, + -0.1736481776669303, + 0.0 + ], + "x": [ + -0.1736481776669303, + -0.98480775301220813, + 0.0 + ], + "o": [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ] + }, + "boundary": [ + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + -5.5 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + -5.5 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ] + ], + "type": "Face3D" }, - "unit_type": "Temperature", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Temperature" - }, - { - "lower_limit": 0.0, - "upper_limit": 100.0, - "unit_type": "Percent", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Humidity" + "identifier": "Room_3_68564805..Face3" }, { - "lower_limit": 0.0, - "upper_limit": 1.0, - "unit_type": "Dimensionless", - "type": "ScheduleTypeLimit", - "numeric_type": "Continuous", - "identifier": "Fractional" - } - ], - "type": "ModelEnergyProperties", - "ventilation_simulation_control": { - "aspect_ratio": 1.0, - "reference_temperature": 20.0, - "vent_control_type": "SingleZone", - "reference_humidity_ratio": 0.0, - "type": "VentilationSimulationControl", - "long_axis_angle": 0.0, - "building_type": "LowRise", - "reference_pressure": 101325.0 - }, - "hvacs": [ - { - "cooling_air_temperature": 13.0, - "demand_controlled_ventilation": false, + "display_name": "Room_3_68564805..Face4", "properties": { "revive": { - "type": "IdealAirSystemReviveProperties", - "equipment_collection": { - "type": "PhiusReviveHVACEquipmentCollection", - "equipment": [] - } + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsf66fe61f" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" + }, + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" }, - "type": "IdealAirSystemProperties" + "type": "FacePropertiesAbridged" }, - "type": "IdealAirSystemAbridged", - "heating_limit": { - "type": "Autosize" + "boundary_condition": { + "type": "Ground" }, - "cooling_limit": { - "type": "Autosize" + "type": "Face", + "face_type": "Floor", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + -1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ] + }, + "boundary": [ + [ + 5.4164426415671443, + -6.4550649771681172, + -5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + -5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ], + [ + 0.0, + -5.5, + -5.5 + ] + ], + "type": "Face3D" }, - "latent_heat_recovery": 0.0, - "heating_air_temperature": 50.0, - "economizer_type": "DifferentialDryBulb", - "sensible_heat_recovery": 0.0, - "identifier": "Room_4_b3f5e5da Ideal Loads Air System" + "identifier": "Room_3_68564805..Face4" }, - { - "cooling_air_temperature": 13.0, - "demand_controlled_ventilation": false, + { + "display_name": "Room_3_68564805..Face5", "properties": { "revive": { - "type": "IdealAirSystemReviveProperties", - "equipment_collection": { - "type": "PhiusReviveHVACEquipmentCollection", - "equipment": [] - } + "id_num": 0, + "type": "FaceRevivePropertiesAbridged" }, - "ref": { - "image_refs": [], - "uris": [], - "document_refs": [], - "type": "_HBObjectWithReferences", - "ref_status": "NA", - "external_identifiers": {}, - "user_data": {}, - "identifier": "rfsc0bbdb23" + "radiance": { + "type": "FaceRadiancePropertiesAbridged" }, - "type": "IdealAirSystemProperties" + "energy": { + "type": "FaceEnergyPropertiesAbridged" + }, + "ph": { + "id_num": 0, + "type": "FacePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "FacePhHvacPropertiesAbridged" + }, + "type": "FacePropertiesAbridged" }, - "type": "IdealAirSystemAbridged", - "heating_limit": { - "type": "Autosize" + "boundary_condition": { + "type": "Ground" }, - "cooling_limit": { - "type": "Autosize" + "type": "Face", + "face_type": "RoofCeiling", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ] + }, + "boundary": [ + [ + 0.0, + -5.5, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ] + ], + "type": "Face3D" }, - "latent_heat_recovery": 0.0, - "heating_air_temperature": 50.0, - "economizer_type": "DifferentialDryBulb", - "sensible_heat_recovery": 0.0, - "identifier": "Room_3_4dd4f0c5 Ideal Loads Air System" + "identifier": "Room_3_68564805..Face5" } ], - "electric_load_center": { - "type": "ElectricLoadCenter", - "inverter_dc_to_ac_size_ratio": 1.1000000000000001, - "inverter_efficiency": 0.95999999999999996 - } - }, - "type": "ModelProperties", - "revive": { - "national_emissions_factors": { - "country_name": "", - "kg_CO2_per_USD": 0.0, - "us_trading_rank": 0, - "type": "NationalEmissionsFactors", - "CO2_MT": 0.0, - "GDP_million_USD": 0.0 - }, - "fuels": { - "NATURAL_GAS": { - "type": "Fuel", - "sale_price_per_kwh": 0.0, - "purchase_price_per_kwh": 0.047100000000000003, - "fuel_type": "NATURAL_GAS", - "annual_base_price": 200.0 + "display_name": "Room_3", + "properties": { + "revive": { + "type": "RoomRevivePropertiesAbridged" }, - "ELECTRICITY": { - "type": "Fuel", - "sale_price_per_kwh": 0.13200000000000001, - "purchase_price_per_kwh": 0.17984, - "fuel_type": "ELECTRICITY", - "annual_base_price": 200.0 - } - }, - "grid_region": { - "region_name": "", - "description": "", - "filepath": "", - "region_code": "" - }, - "id_num": 0, - "co2_measures": {}, - "type": "ModelRevivePropertiesAbridged", - "analysis_duration": 50, - "envelope_labor_cost_fraction": 0.40000000000000002 - } - }, - "display_name": "unnamed", - "type": "Model", - "rooms": [ - { - "zone": "HBPH_DWELLING_1dd11d4f", - "faces": [ - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" + "radiance": { + "type": "RoomRadiancePropertiesAbridged" + }, + "energy": { + "electric_equipment": { + "display_name": "HBPH_SFH_ElectricEquipment", + "latent_fraction": 0.0, + "radiant_fraction": 0.5, + "lost_fraction": 0.0, + "schedule": "Always On", + "properties": { + "revive": { + "id_num": 0, + "type": "ElectricEquipmentReviveProperties" + }, + "type": "ElectricEquipmentProperties", + "ph": { + "type": "ElectricEquipmentPhProperties", + "equipment_collection": { + "equipment_set": {} + } + } }, - "type": "Outdoors" + "watts_per_area": 0.0, + "type": "ElectricEquipmentAbridged", + "identifier": "HBPH_SFH_Equipment_84ea620a" }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" + "service_hot_water": { + "properties": { + "revive": { + "id_num": 0, + "type": "ServiceHotWaterReviveProperties" + }, + "type": "ServiceHotWaterProperties" }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "target_temperature": 43.299999999999997, + "latent_fraction": 0.050000000000000003, + "schedule": "hbph_sfh_Combined_HotWater", + "type": "ServiceHotWaterAbridged", + "flow_per_area": 0.23146215804218456, + "identifier": "HBPH_SFH_ServiceHotWater_8060d344", + "sensible_fraction": 0.20000000000000001 + }, + "people": { + "display_name": "HBPH_SFH_People", + "latent_fraction": { + "type": "Autocalculate" }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "radiant_fraction": 0.29999999999999999, + "properties": { + "revive": { + "id_num": 0, + "type": "PeopleReviveProperties" + }, + "type": "PeopleProperties", + "ph": { + "dwellings": { + "identifier": "HBPH_DWELLING_3c8b9d5b", + "num_dwellings": 1 + }, + "number_bedrooms": 2, + "id_num": 0, + "number_people": 3, + "type": "PeoplePhProperties" + } }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } + "type": "PeopleAbridged", + "people_per_area": 0.10000000000000001, + "activity_schedule": "hbph_sfh_Occupant_Activity", + "occupancy_schedule": "hbph_sfh_Occupant_Presence", + "identifier": "HBPH_SFH_People_83ecd5c2" }, - "display_name": "Room_4_b3f5e5da..Face0", - "type": "Face", - "face_type": "Wall", - "apertures": [ + "infiltration": { + "display_name": "HBPH_SFH_Infiltration", + "schedule": "Always On", + "type": "InfiltrationAbridged", + "flow_per_exterior_area": 2.8846153846153845e-05, + "identifier": "Room_3_68564805_infiltration" + }, + "setpoint": { + "type": "SetpointAbridged", + "heating_schedule": "hbph_sfh_Heating_Setpoint", + "dehumidifying_schedule": "HBPH_SFH_Setpoint_d68a1fed_DeHumidSetp", + "humidifying_schedule": "HumidNoLimit", + "identifier": "HBPH_SFH_Setpoint_d68a1fed", + "cooling_schedule": "hbph_sfh_Cooling_Setpoint" + }, + "ventilation": { + "identifier": "HBPH_SFH_Ventilation_118dcf23", + "air_changes_per_hour": 0.40000000000000002, + "type": "VentilationAbridged" + }, + "program_type": "Generic Office Program", + "type": "RoomEnergyPropertiesAbridged", + "construction_set": "ConstructionSet_e8b43d4f", + "hvac": "Room_3_68564805 Ideal Loads Air System", + "process_loads": [ { - "is_operable": false, - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" + "watts": 25.416666666666668, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Refrigerator", + "lost_fraction": 0.0, + "display_name": "PhFridgeFreezer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhFridgeFreezer", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen fridge/freeze combo", + "in_conditioned_space": true, + "energy_demand": 1.2200000000000000, + "identifier": "a3649a9e-c466-4aab-a422-6f423b4d74b7", + "reference_quantity": 4, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhFridgeFreezer_a01db1e3" + }, + { + "watts": 368.86201269764467, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Dishwasher", + "lost_fraction": 0.0, + "display_name": "PhDishwasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "Outdoors" + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhDishwasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 12, + "display_name": "Kitchen dishwasher", + "in_conditioned_space": true, + "energy_demand": 269, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "836fcda0-45e3-4052-b0a7-b731229ddbf5", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "capacity_type": 1, + "energy_demand_per_use": 0 + } + } }, + "identifier": "HBPH_Process_PhDishwasher_370dd434" + }, + { + "watts": 164.21934230153215, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clotheswasher", + "lost_fraction": 0.0, + "display_name": "PhClothesWasher", + "type": "ProcessAbridged", "properties": { - "ph": { + "revive": { "id_num": 0, - "summer_shading_factor": 0.95527773909664049, - "install_depth": 0.1016, - "variant_type": "_unnamed_type_", - "type": "AperturePhPropertiesAbridged", - "winter_shading_factor": 0.97427603830067, - "default_monthly_shading_correction_factor": 1.0 - }, - "ph_hvac": { - "type": "AperturePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "ApertureRadiancePropertiesAbridged" - }, - "energy": { - "type": "ApertureEnergyPropertiesAbridged" + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "AperturePropertiesAbridged", - "revive": { - "type": "ApertureRevivePropertiesAbridged", - "id_num": 0 + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesWasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 0.12740000000000001, + "utilization_factor": 1.0, + "display_name": "Laundry - washer", + "in_conditioned_space": true, + "energy_demand": 120, + "modified_energy_factor": 2.7000000000000002, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "8cb05810-628b-4bb8-b232-99e87c3eade9", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "energy_demand_per_use": 0 + } } }, - "display_name": "Room_4_b3f5e5da..Face0_Glz0", - "type": "Aperture", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.12743924763317918, - -9.9903480700561964, - 4.5947560814373274 - ], - [ - 0.12743924763317918, - -9.9903480700561964, - 0.9052439185626735 - ], - [ - 3.7608994304649785, - -10.631025133619353, - 0.9052439185626735 - ], - [ - 3.7608994304649785, - -10.631025133619353, - 4.5947560814373274 - ] - ], - "plane": { - "o": [ - 3.7608994304649785, - -10.631025133619353, - 4.5947560814373274 - ], - "x": [ - -0.98480775301220813, - 0.17364817766692991, - 0.0 - ], - "n": [ - -0.17364817766692991, - -0.98480775301220813, - 0.0 - ], - "type": "Plane" + "identifier": "HBPH_Process_PhClothesWasher_4ed89ce4" + }, + { + "watts": 741.66831073273784, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clothesdryer", + "lost_fraction": 0.0, + "display_name": "PhClothesDryer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesDryer", + "combined_energy_factor": 3.9300000000000002, + "comment": "default", + "field_utilization_factor_type": 1, + "display_name": "Laundry - dryer", + "in_conditioned_space": true, + "energy_demand": 0, + "field_utilization_factor": 1.1799999999999999, + "gas_consumption": 0, + "identifier": "8f9fd1cb-3a5b-476d-ba56-9763cc91ce23", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "_dryer_type": { + "value": "5-ELECTRIC EXHAUST AIR DRYER" + }, + "gas_efficiency_factor": 2.6699999999999999, + "energy_demand_per_use": 0 + } } }, - "identifier": "Room_4_b3f5e5da..Face0_Glz0" - } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.76405198173449351, - -9.8331541132537161, - 5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 5.5 - ] - ], - "plane": { - "o": [ - 4.6523906598326512, - -10.788219090421832, - 5.5 - ], - "x": [ - -0.98480775301220813, - 0.17364817766693011, - 0.0 - ], - "n": [ - -0.17364817766693011, - -0.98480775301220813, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face0" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 + "identifier": "HBPH_Process_PhClothesDryer_2919b7a5" + }, + { + "watts": 546.30628661958428, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Cooktop", + "lost_fraction": 0.0, + "display_name": "PhCooktop", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhCooktop", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen cooking", + "in_conditioned_space": true, + "energy_demand": 0.20000000000000001, + "_cooktop_type": { + "value": "1-ELECTRICITY" + }, + "identifier": "53f31466-6ced-4727-b078-398dcbbcd830", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_PhCooktop_139bdd3e" }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face1", - "type": "Face", - "face_type": "Wall", - "apertures": [ { - "is_operable": false, - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" + "watts": 1.2521406321689497, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingExterior", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "Outdoors" + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingExterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Exterior Lighting", + "in_conditioned_space": false, + "energy_demand": 0, + "identifier": "3040e87b-5571-4ee6-9007-46355e1c2049", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } }, + "identifier": "HBPH_Process_PhPhiusLightingExterior_376acd25" + }, + { + "watts": 1.1415525114155252, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingGarage", + "type": "ProcessAbridged", "properties": { - "ph": { + "revive": { "id_num": 0, - "summer_shading_factor": 0.97642791240333782, - "install_depth": 0.1016, - "variant_type": "_unnamed_type_", - "type": "AperturePhPropertiesAbridged", - "winter_shading_factor": 0.97116661808983007, - "default_monthly_shading_correction_factor": 1.0 - }, - "ph_hvac": { - "type": "AperturePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "ApertureRadiancePropertiesAbridged" - }, - "energy": { - "type": "ApertureEnergyPropertiesAbridged" + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "AperturePropertiesAbridged", - "revive": { - "type": "ApertureRevivePropertiesAbridged", - "id_num": 0 + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingGarage", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Garage Lighting", + "in_conditioned_space": false, + "energy_demand": 100, + "identifier": "6f148de3-1014-49b9-a612-864cb5709862", + "reference_quantity": 2, + "quantity": 0, + "reference_energy_norm": 2, + "energy_demand_per_use": 100 + } } }, - "display_name": "Room_4_b3f5e5da..Face1_Glz0", - "type": "Aperture", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.12575516544198348, - -6.2131929834941388, - 4.5947560814373274 - ], - [ - -0.12575516544198348, - -6.2131929834941388, - 0.9052439185626735 - ], - [ - -0.63829681629251001, - -9.1199611297595773, - 0.9052439185626735 - ], - [ - -0.63829681629251001, - -9.1199611297595773, - 4.5947560814373274 - ] - ], - "plane": { - "o": [ - -0.63829681629251001, - -9.1199611297595773, - 4.5947560814373274 - ], - "x": [ - 0.17364817766693036, - 0.98480775301220813, - 0.0 - ], - "n": [ - -0.98480775301220813, - 0.17364817766693036, - 0.0 - ], - "type": "Plane" + "identifier": "HBPH_Process_PhPhiusLightingGarage_7c020a86" + }, + { + "watts": 872.67161937496485, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_MEL", + "lost_fraction": 0.0, + "display_name": "PhPhiusMEL", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusMEL", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "PHIUS+ MELS", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "9f72f764-4a90-4b03-8f29-e80447cdca2b", + "reference_quantity": 3, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } } }, - "identifier": "Room_4_b3f5e5da..Face1_Glz0" - } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - -5.5, - 5.5 - ], - [ - 0.0, - -5.5, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 5.5 - ] - ], - "plane": { - "o": [ - -0.76405198173449351, - -9.8331541132537161, - 5.5 - ], - "x": [ - 0.17364817766693033, - 0.98480775301220813, - 0.0 - ], - "n": [ - -0.98480775301220813, - 0.17364817766693033, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face1" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "identifier": "HBPH_Process_PhPhiusMEL_e0dabd2b" + }, + { + "watts": 737.72402539528935, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Dishwasher", + "lost_fraction": 0.0, + "display_name": "PhDishwasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhDishwasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 12, + "display_name": "Kitchen dishwasher", + "in_conditioned_space": true, + "energy_demand": 269, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "836fcda0-45e3-4052-b0a7-b731229ddbf5", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "capacity_type": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_f5513131" }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face2", - "type": "Face", - "face_type": "Wall", - "apertures": [ { - "is_operable": false, - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" + "watts": 328.43868460306430, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clotheswasher", + "lost_fraction": 0.0, + "display_name": "PhClothesWasher", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "Outdoors" + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesWasher", + "combined_energy_factor": 0, + "comment": "default", + "capacity": 0.12740000000000001, + "utilization_factor": 1.0, + "display_name": "Laundry - washer", + "in_conditioned_space": true, + "energy_demand": 120, + "modified_energy_factor": 2.7000000000000002, + "_water_connection": { + "value": "2-COLD WATER CONNECTION" + }, + "identifier": "8cb05810-628b-4bb8-b232-99e87c3eade9", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "energy_demand_per_use": 0 + } + } }, + "identifier": "HBPH_Process_e02e5913" + }, + { + "watts": 1112.5024660991069, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Clothesdryer", + "lost_fraction": 0.0, + "display_name": "PhClothesDryer", + "type": "ProcessAbridged", "properties": { - "ph": { + "revive": { "id_num": 0, - "summer_shading_factor": 0.94975253969036832, - "install_depth": 0.1016, - "variant_type": "_unnamed_type_", - "type": "AperturePhPropertiesAbridged", - "winter_shading_factor": 0.99207368057867318, - "default_monthly_shading_correction_factor": 1.0 - }, - "ph_hvac": { - "type": "AperturePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "ApertureRadiancePropertiesAbridged" - }, - "energy": { - "type": "ApertureEnergyPropertiesAbridged" + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "AperturePropertiesAbridged", - "revive": { - "type": "ApertureRevivePropertiesAbridged", - "id_num": 0 + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhClothesDryer", + "combined_energy_factor": 3.9300000000000002, + "comment": "default", + "field_utilization_factor_type": 1, + "display_name": "Laundry - dryer", + "in_conditioned_space": true, + "energy_demand": 0, + "field_utilization_factor": 1.1799999999999999, + "gas_consumption": 0, + "identifier": "8f9fd1cb-3a5b-476d-ba56-9763cc91ce23", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 2, + "_dryer_type": { + "value": "5-ELECTRIC EXHAUST AIR DRYER" + }, + "gas_efficiency_factor": 2.6699999999999999, + "energy_demand_per_use": 0 + } } }, - "display_name": "Room_4_b3f5e5da..Face2_Glz0", - "type": "Aperture", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 4.5249514121994716, - -6.2978710203656378, - 4.5947560814373274 - ], - [ - 4.5249514121994716, - -6.2978710203656378, - 0.9052439185626735 - ], - [ - 0.89149122936767267, - -5.6571939568024794, - 0.9052439185626735 - ], - [ - 0.89149122936767267, - -5.6571939568024794, - 4.5947560814373274 - ] - ], - "plane": { - "o": [ - 0.89149122936767267, - -5.6571939568024794, - 4.5947560814373274 - ], - "x": [ - 0.98480775301220813, - -0.17364817766693044, - 0.0 - ], - "n": [ - 0.17364817766693044, - 0.98480775301220813, - 0.0 - ], - "type": "Plane" + "identifier": "HBPH_Process_2270bb9a" + }, + { + "watts": 50.833333333333336, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Refrigerator", + "lost_fraction": 0.0, + "display_name": "PhFridgeFreezer", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhFridgeFreezer", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen fridge/freeze combo", + "in_conditioned_space": true, + "energy_demand": 1.2200000000000000, + "identifier": "a3649a9e-c466-4aab-a422-6f423b4d74b7", + "reference_quantity": 4, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } } }, - "identifier": "Room_4_b3f5e5da..Face2_Glz0" - } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.4164426415671443, - -6.4550649771681172, - 5.5 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - [ - 0.0, - -5.5, - 0.0 - ], - [ - 0.0, - -5.5, - 5.5 - ] - ], - "plane": { - "o": [ - 0.0, - -5.5, - 5.5 - ], - "x": [ - 0.98480775301220813, - -0.17364817766693044, - 0.0 - ], - "n": [ - 0.17364817766693044, - 0.98480775301220813, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face2" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" + "identifier": "HBPH_Process_9e8b0b66" }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + { + "watts": 819.45942992937648, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Cooktop", + "lost_fraction": 0.0, + "display_name": "PhCooktop", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhCooktop", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "Kitchen cooking", + "in_conditioned_space": true, + "energy_demand": 0.20000000000000001, + "_cooktop_type": { + "value": "1-ELECTRICITY" + }, + "identifier": "53f31466-6ced-4727-b078-398dcbbcd830", + "reference_quantity": 1, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_72b2d81f" }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face3", - "type": "Face", - "face_type": "Wall", - "apertures": [ { - "is_operable": false, - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "watts": 1637.0480430554567, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_MEL", + "lost_fraction": 0.0, + "display_name": "PhPhiusMEL", + "type": "ProcessAbridged", "properties": { - "ph": { + "revive": { "id_num": 0, - "summer_shading_factor": 0.97614217434077266, - "install_depth": 0.1016, - "variant_type": "_unnamed_type_", - "type": "AperturePhPropertiesAbridged", - "winter_shading_factor": 0.97047874429337377, - "default_monthly_shading_correction_factor": 1.0 - }, - "ph_hvac": { - "type": "AperturePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "ApertureRadiancePropertiesAbridged" - }, - "energy": { - "type": "ApertureEnergyPropertiesAbridged" + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "AperturePropertiesAbridged", - "revive": { - "type": "ApertureRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face3_Glz0", - "type": "Aperture", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 4.7781458252746338, - -10.075026106927693, - 4.5947560814373274 - ], - [ - 4.7781458252746338, - -10.075026106927693, - 0.9052439185626735 - ], - [ - 5.2906874761251608, - -7.1682579606622552, - 0.9052439185626735 - ], - [ - 5.2906874761251608, - -7.1682579606622552, - 4.5947560814373274 - ] - ], - "plane": { - "o": [ - 5.2906874761251608, - -7.1682579606622552, - 4.5947560814373274 - ], - "x": [ - -0.17364817766693058, - -0.98480775301220802, - 0.0 - ], - "n": [ - 0.98480775301220802, - -0.17364817766693058, - 0.0 - ], - "type": "Plane" + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusMEL", + "combined_energy_factor": 0, + "comment": "default", + "display_name": "PHIUS+ MELS", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "9f72f764-4a90-4b03-8f29-e80447cdca2b", + "reference_quantity": 3, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } } }, - "identifier": "Room_4_b3f5e5da..Face3_Glz0" - } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 4.6523906598326512, - -10.788219090421832, - 5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 5.5 - ] - ], - "plane": { - "o": [ - 5.4164426415671443, - -6.4550649771681172, - 5.5 - ], - "x": [ - -0.1736481776669303, - -0.98480775301220813, - 0.0 - ], - "n": [ - 0.98480775301220813, - -0.1736481776669303, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face3" - }, - { - "boundary_condition": { - "type": "Ground" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face4", - "type": "Face", - "face_type": "Floor", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - 0.0, - -5.5, - 0.0 - ] - ], - "plane": { - "o": [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - -1.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face4" - }, - { - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "identifier": "HBPH_Process_c58e6635" }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + { + "watts": 572.18674727811469, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "hbph_sfh_Lighting", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingInterior", + "type": "ProcessAbridged", + "properties": { + "revive": { + "id_num": 0, + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingInterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Interior Lighting", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "8a6b193f-8e04-4751-8460-c8ce44c81c6f", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } + } + }, + "identifier": "HBPH_Process_7cd58794" }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face5", - "type": "Face", - "face_type": "RoofCeiling", - "apertures": [ { - "is_operable": false, - "boundary_condition": { - "sun_exposure": true, - "wind_exposure": true, - "view_factor": { - "type": "Autocalculate" - }, - "type": "Outdoors" - }, + "watts": 2.5288564022831053, + "fuel_type": "Electricity", + "end_use_category": "HBPH_Process", + "latent_fraction": 0.0, + "radiant_fraction": 0.0, + "schedule": "Always On", + "lost_fraction": 0.0, + "display_name": "PhPhiusLightingExterior", + "type": "ProcessAbridged", "properties": { - "ph": { + "revive": { "id_num": 0, - "summer_shading_factor": 0.98136541971227753, - "install_depth": 0.1016, - "variant_type": "_unnamed_type_", - "type": "AperturePhPropertiesAbridged", - "winter_shading_factor": 0.95601811393700986, - "default_monthly_shading_correction_factor": 1.0 - }, - "ph_hvac": { - "type": "AperturePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "ApertureRadiancePropertiesAbridged" - }, - "energy": { - "type": "ApertureEnergyPropertiesAbridged" + "type": "ProcessReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "AperturePropertiesAbridged", - "revive": { - "type": "ApertureRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_4_b3f5e5da..Face5_Glz0", - "type": "Aperture", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.6813268377680135, - -6.2744417555921990, - 5.5 - ], - [ - 0.14106050030453293, - -9.3384444130002837, - 5.5 - ], - [ - 3.9710638220646373, - -10.013777334829634, - 5.5 - ], - [ - 4.5113301595281179, - -6.9497746774215505, - 5.5 - ] - ], - "plane": { - "o": [ - 0.6813268377680135, - -6.2744417555921990, - 5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" + "type": "ProcessProperties", + "ph": { + "type": "ProcessPhProperties", + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingExterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Exterior Lighting", + "in_conditioned_space": false, + "energy_demand": 0, + "identifier": "3040e87b-5571-4ee6-9007-46355e1c2049", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + } } }, - "identifier": "Room_4_b3f5e5da..Face5_Glz0" + "identifier": "HBPH_Process_64febe8b" } ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - -5.5, - 5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 5.5 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 5.5 - ] - ], - "plane": { - "o": [ - 5.4164426415671443, - -6.4550649771681172, - 5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_4_b3f5e5da..Face5" - } - ], - "story": "2", - "properties": { + "lighting": { + "visible_fraction": 0.25, + "display_name": "HBPH_SFH_Lighting", + "radiant_fraction": 0.32000000000000001, + "schedule": "hbph_sfh_Lighting", + "properties": { + "revive": { + "id_num": 0, + "type": "LightingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 + }, + "type": "LightingProperties", + "ph": { + "id_num": 0, + "type": "LightingPhProperties", + "target_lux": 300, + "equipment": { + "user_data": {}, + "equipment_type": "PhPhiusLightingInterior", + "combined_energy_factor": 0, + "comment": "default", + "frac_high_efficiency": 1.0, + "display_name": "PHIUS+ Interior Lighting", + "in_conditioned_space": true, + "energy_demand": 0, + "identifier": "8a6b193f-8e04-4751-8460-c8ce44c81c6f", + "reference_quantity": 6, + "quantity": 1, + "reference_energy_norm": 1, + "energy_demand_per_use": 0 + }, + "target_lux_height": 0.80000000000000004 + } + }, + "watts_per_area": 13.911891558295746, + "type": "LightingAbridged", + "return_air_fraction": 0.0, + "identifier": "HBPH_SFH_Lighting_7cd1ce29" + } + }, + "doe2": { + "type": "RoomDoe2Properties" + }, "ph": { - "specific_heat_capacity_wh_m2k": null, - "type": "RoomPhPropertiesAbridged", + "ph_foundations": [], "spaces": [ { + "user_data": {}, "wufi_type": 99, - "name": "Room_4", - "number": "102", "properties": { - "type": "SpaceProperties", "ph": { + "_v_sup": null, "id_num": 0, - "_v_eta": null, - "type": "SpacePhProperties", "_v_tran": null, - "_v_sup": null + "type": "SpacePhProperties", + "_v_eta": null }, + "type": "SpaceProperties", "energy": { - "type": "SpaceEnergyProperties", - "id_num": 0 + "id_num": 0, + "type": "SpaceEnergyProperties" } }, + "number": "101", + "name": "Room_3", + "identifier": "49b346ed-a592-4500-9aca-da113cc8deba", + "quantity": 1, "volumes": [ { + "user_data": {}, "floor": { - "display_name": "50843070-8d29-4e23-b08c-495d995a8ca4", "user_data": {}, + "display_name": "6b9f369c-340f-4ffd-88fe-2409a721b660", + "geometry": { + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.12690121986096739, + -9.3870163468138124, + -5.5 + ] + }, + "boundary": [ + [ + -0.12690121986096739, + -9.3870163468138124, + -5.5 + ], + [ + 3.1229643650793193, + -9.9600553331146831, + -5.5 + ], + [ + 3.6960033513801895, + -6.7101897481743960, + -5.5 + ], + [ + 0.44613776643990277, + -6.1371507618735270, + -5.5 + ] + ], + "type": "Face3D" + }, + "identifier": "6b9f369c-340f-4ffd-88fe-2409a721b660", "floor_segments": [ { + "user_data": {}, + "net_floor_area": 10.890000000000002, + "net_area_factor": 1.0, + "display_name": "d263d3dd-9168-4c10-921c-296603f0a442", + "weighting_factor": 1.0, + "floor_area": 10.890000000000002, + "weighted_net_floor_area": 10.890000000000002, + "reference_point": { + "z": -5.3900000000000006, + "type": "Point3D", + "x": 1.7845510657596111, + "y": -8.0486030474941046 + }, + "identifier": "d263d3dd-9168-4c10-921c-296603f0a442", + "weighted_floor_area": 10.890000000000002, "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + -0.12690121986096739, + -9.3870163468138124, + -5.5 + ] + }, "boundary": [ [ -0.12690121986096739, -9.3870163468138124, - 0.0 + -5.5 ], [ 3.1229643650793193, -9.9600553331146831, - 0.0 + -5.5 ], [ 3.6960033513801895, -6.7101897481743960, - 0.0 + -5.5 ], [ 0.44613776643990277, -6.1371507618735270, - 0.0 + -5.5 ] ], - "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - 0.0 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } - }, - "floor_area": 10.890000000000002, - "net_floor_area": 10.890000000000002, - "weighted_net_floor_area": 10.890000000000002, - "weighting_factor": 1.0, - "net_area_factor": 1.0, - "reference_point": { - "x": 1.7845510657596111, - "y": -8.0486030474941046, - "z": 0.11000000000000001, - "type": "Point3D" - }, - "display_name": "0f8ccba8-d748-4b4d-8890-2445f159a824", - "user_data": {}, - "weighted_floor_area": 10.890000000000002, - "identifier": "0f8ccba8-d748-4b4d-8890-2445f159a824" + "type": "Face3D" + } } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.12690121986096739, - -9.3870163468138124, - 0.0 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - 0.0 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - 0.0 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - 0.0 - ] - ], + ] + }, + "display_name": "3c2e16ef-1537-40fc-9e23-f448e4156bf2", + "avg_ceiling_height": 2.75, + "geometry": [ + { "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - 0.0 + "type": "Plane", + "n": [ + 0.0, + 0.0, + -1.0 ], "x": [ 1.0, 0.0, 0.0 ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } - }, - "identifier": "50843070-8d29-4e23-b08c-495d995a8ca4" - }, - "avg_ceiling_height": 2.75, - "display_name": "066aba17-7574-44dd-9d7c-e97ee86234c1", - "user_data": {}, - "geometry": [ - { - "type": "Face3D", + "o": [ + 0.44613776643990277, + -6.1371507618735270, + -5.5 + ] + }, "boundary": [ [ 0.44613776643990277, -6.1371507618735270, - 0.0 + -5.5 ], [ 3.6960033513801895, -6.7101897481743960, - 0.0 + -5.5 ], [ 3.1229643650793193, -9.9600553331146831, - 0.0 + -5.5 ], [ -0.12690121986096739, -9.3870163468138124, - 0.0 + -5.5 ] ], + "type": "Face3D" + }, + { "plane": { - "o": [ - 0.44613776643990277, - -6.1371507618735270, + "type": "Plane", + "n": [ + -0.98480775301220813, + 0.17364817766693041, 0.0 ], "x": [ - 1.0, - 0.0, + 0.17364817766693041, + 0.98480775301220813, 0.0 ], - "n": [ - 0.0, - 0.0, - -1.0 - ], - "type": "Plane" - } - }, - { - "type": "Face3D", + "o": [ + -0.12690121986096739, + -9.3870163468138124, + -2.75 + ] + }, "boundary": [ [ -0.12690121986096739, -9.3870163468138124, - 2.75 + -2.75 ], [ 0.44613776643990277, -6.1371507618735270, - 2.75 + -2.75 ], [ 0.44613776643990277, -6.1371507618735270, - 0.0 + -5.5 ], [ -0.12690121986096739, -9.3870163468138124, - 0.0 + -5.5 ] ], + "type": "Face3D" + }, + { "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - 2.75 - ], - "x": [ - 0.17364817766693041, + "type": "Plane", + "n": [ + 0.17364817766692997, 0.98480775301220813, 0.0 ], - "n": [ - -0.98480775301220813, - 0.17364817766693041, + "x": [ + 0.98480775301220813, + -0.17364817766692997, 0.0 ], - "type": "Plane" - } - }, - { - "type": "Face3D", + "o": [ + 0.44613776643990277, + -6.1371507618735270, + -2.75 + ] + }, "boundary": [ [ 0.44613776643990277, -6.1371507618735270, - 2.75 + -2.75 ], [ 3.6960033513801895, -6.7101897481743960, - 2.75 + -2.75 ], [ 3.6960033513801895, -6.7101897481743960, - 0.0 + -5.5 ], [ 0.44613776643990277, -6.1371507618735270, - 0.0 + -5.5 ] ], + "type": "Face3D" + }, + { "plane": { - "o": [ - 0.44613776643990277, - -6.1371507618735270, - 2.75 - ], - "x": [ + "type": "Plane", + "n": [ 0.98480775301220813, - -0.17364817766692997, + -0.17364817766693033, 0.0 ], - "n": [ - 0.17364817766692997, - 0.98480775301220813, + "x": [ + -0.17364817766693033, + -0.98480775301220813, 0.0 ], - "type": "Plane" - } - }, - { - "type": "Face3D", + "o": [ + 3.6960033513801895, + -6.7101897481743960, + -2.75 + ] + }, "boundary": [ [ 3.6960033513801895, -6.7101897481743960, - 2.75 + -2.75 ], [ 3.1229643650793193, -9.9600553331146831, - 2.75 + -2.75 ], [ 3.1229643650793193, -9.9600553331146831, - 0.0 + -5.5 ], [ 3.6960033513801895, -6.7101897481743960, - 0.0 + -5.5 ] ], + "type": "Face3D" + }, + { "plane": { - "o": [ - 3.6960033513801895, - -6.7101897481743960, - 2.75 - ], - "x": [ - -0.17364817766693033, - -0.98480775301220813, + "type": "Plane", + "n": [ + -0.1736481776669305, + -0.98480775301220802, 0.0 ], - "n": [ - 0.98480775301220813, - -0.17364817766693033, + "x": [ + -0.98480775301220802, + 0.1736481776669305, 0.0 ], - "type": "Plane" - } - }, - { - "type": "Face3D", + "o": [ + 3.1229643650793193, + -9.9600553331146831, + -2.75 + ] + }, "boundary": [ [ 3.1229643650793193, -9.9600553331146831, - 2.75 + -2.75 ], [ -0.12690121986096739, -9.3870163468138124, - 2.75 + -2.75 ], [ -0.12690121986096739, -9.3870163468138124, - 0.0 + -5.5 ], [ 3.1229643650793193, -9.9600553331146831, - 0.0 + -5.5 ] ], + "type": "Face3D" + }, + { "plane": { - "o": [ - 3.1229643650793193, - -9.9600553331146831, - 2.75 + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 ], "x": [ - -0.98480775301220802, - 0.1736481776669305, - 0.0 - ], - "n": [ - -0.1736481776669305, - -0.98480775301220802, + 1.0, + 0.0, 0.0 ], - "type": "Plane" - } - }, - { - "type": "Face3D", + "o": [ + 3.1229643650793193, + -9.9600553331146831, + -2.75 + ] + }, "boundary": [ [ 3.1229643650793193, -9.9600553331146831, - 2.75 + -2.75 ], [ 3.6960033513801895, -6.7101897481743960, - 2.75 + -2.75 ], [ 0.44613776643990277, -6.1371507618735270, - 2.75 + -2.75 ], [ -0.12690121986096739, -9.3870163468138124, - 2.75 + -2.75 ] ], - "plane": { - "o": [ - 3.1229643650793193, - -9.9600553331146831, - 2.75 - ], - "x": [ - 1.0, + "type": "Face3D" + } + ], + "identifier": "3c2e16ef-1537-40fc-9e23-f448e4156bf2" + } + ] + } + ], + "type": "RoomPhPropertiesAbridged", + "specific_heat_capacity": "1-LIGHTWEIGHT", + "specific_heat_capacity_wh_m2k": null, + "ph_bldg_segment_id": "4d4a70c3-d7bb-4822-9d05-76690826f3cf" + }, + "ph_hvac": { + "renewable_devices": [ + { + "user_data": {}, + "photovoltaic_renewable_energy": 1000.0, + "utilization_factor": 1.0, + "array_size": 0.0, + "display_name": "my_PV_system", + "identifier": "4a922833-32b0-47fd-960a-c4303fb0d354", + "percent_coverage": 1.0, + "device_typename": "PhPhotovoltaicDevice" + } + ], + "ventilation_system": { + "user_data": {}, + "exhaust_ducting": [ + { + "user_data": {}, + "display_name": "Test_Vent_System_exhaust", + "duct_type": 2, + "identifier": "83b6d684-38cf-4004-868f-216236ccb039", + "segments": { + "0608b827-200f-4371-b417-7a32b5a700ea": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness": 0.02794, + "width": null, + "display_name": "0608b827-200f-4371-b417-7a32b5a700ea", + "insulation_reflective": true, + "height": null, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 1.0832885283134288, + -0.19101299543362338, + 0.0 + ] + }, + "identifier": "0608b827-200f-4371-b417-7a32b5a700ea", + "diameter": 0.17600000000000002 + } + } + } + ], + "display_name": "Test_Vent_System", + "id_num": 0, + "supply_ducting": [ + { + "user_data": {}, + "display_name": "__unnamed_vent_duct__", + "duct_type": 1, + "identifier": "fbb4d378-19bd-4f8e-913c-804d02965a68", + "segments": { + "30773295-10c7-4575-b9d2-d278bcd648ce": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness": 0.02794, + "width": null, + "display_name": "30773295-10c7-4575-b9d2-d278bcd648ce", + "insulation_reflective": true, + "height": null, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 1.1000000000000001 + ] + }, + "identifier": "30773295-10c7-4575-b9d2-d278bcd648ce", + "diameter": 0.17600000000000002 + } + } + } + ], + "ventilation_unit": { + "user_data": {}, + "sensible_heat_recovery": 0.82999999999999996, + "display_name": "Test_Unit", + "latent_heat_recovery": 0.0, + "electric_efficiency": 0.33300000000000002, + "frost_protection_reqd": true, + "in_conditioned_space": true, + "identifier": "1f7b47b6-c3a0-4fff-98ea-2afd0b9eee29", + "quantity": 1, + "temperature_below_defrost_used": -5.0 + }, + "sys_type": 1, + "identifier": "9a7088f7-b815-4cfe-b0dd-cf9829768942" + }, + "id_num": 0, + "supportive_devices": [ + { + "user_data": {}, + "annual_period_operation_khrs": 6.5, + "device_class_name": "PhSupportiveDevice", + "display_name": "Example Device", + "device_type": 10, + "in_conditioned_space": false, + "norm_energy_demand_W": 123.0, + "identifier": "e23d6695-f807-4da4-819f-f4bb97db5e52", + "quantity": 3 + } + ], + "type": "RoomPhHvacPropertiesAbridged", + "exhaust_vent_devices": [ + { + "user_data": {}, + "device_class_name": "ExhaustVentDryer", + "display_name": "example_dryer_vent", + "annual_runtime_minutes": 7.625, + "exhaust_flow_rate_m3s": 123.0, + "identifier": "e7b33f1a-350a-4de0-a856-45d210f912c2", + "quantity": 1 + } + ], + "hot_water_system": { + "tank_solar": { + "user_data": {}, + "standby_losses": 4.0, + "display_name": "_unnamed_hw_tank_", + "_tank_type": { + "value": "2-DHW ONLY" + }, + "in_conditioned_space": true, + "room_temp": 20, + "storage_capacity": 300, + "solar_losses": 0.0, + "identifier": "b9a5862e-728a-47e5-9a97-dc3c61f1b43b", + "quantity": 1, + "storage_loss_rate": 0.0, + "standby_fraction": 0.29999999999999999, + "solar_connection": false, + "water_temp": 60 + }, + "recirc_temp": 48.0, + "display_name": "SHW System_18a3d481", + "id_num": 0, + "type": "PhHvacHotWaterSystemPh", + "distribution_piping": { + "d7658299-88be-4055-b690-afedd35c43ec": { + "user_data": {}, + "multiplier": 1, + "demand_recirculation": true, + "display_name": "Test_Trunk", + "pipe_element": { + "display_name": "79387bb8-1edd-483d-ad3f-dc2c457775c6", + "identifier": "79387bb8-1edd-483d-ad3f-dc2c457775c6", + "user_data": {}, + "segments": { + "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 38.099999999999994, + "water_temp_c": 60.0, + "daily_period": 24, + "geometry": { + "p": [ 0.0, + -5.5, 0.0 ], - "n": [ + "type": "LineSegment3D", + "v": [ 0.0, 0.0, - 1.0 - ], - "type": "Plane" - } + 5.5 + ] + }, + "identifier": "e1aa4835-3bf7-4ac5-941c-1dc21b147d4d", + "material_value": "6-PEX" } - ], - "identifier": "066aba17-7574-44dd-9d7c-e97ee86234c1" + } + }, + "identifier": "d7658299-88be-4055-b690-afedd35c43ec", + "branches": { + "389bfced-fd2f-4e93-9aef-00707806b84f": { + "user_data": {}, + "fixtures": { + "9386407e-ba7f-41cd-826d-d4d70e96a4d2": { + "display_name": "Test_Fixture", + "identifier": "9386407e-ba7f-41cd-826d-d4d70e96a4d2", + "user_data": {}, + "segments": { + "142afb5c-1cb3-4694-a1ce-66023f4be76c": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "142afb5c-1cb3-4694-a1ce-66023f4be76c", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 9.5249999999999986, + "water_temp_c": 55.0, + "daily_period": 24, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 5.5 + ] + }, + "identifier": "142afb5c-1cb3-4694-a1ce-66023f4be76c", + "material_value": "1-COPPER_M" + } + } + } + }, + "display_name": "Test_Branch", + "pipe_element": { + "display_name": "56d3fc8d-20a9-4f7c-9e7d-f163c63d5793", + "identifier": "56d3fc8d-20a9-4f7c-9e7d-f163c63d5793", + "user_data": {}, + "segments": { + "b01a32e7-de41-462a-8475-23299737446d": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 0.0, + "display_name": "b01a32e7-de41-462a-8475-23299737446d", + "insulation_reflective": false, + "insulation_quality": null, + "diameter_mm": 19.049999999999997, + "water_temp_c": 60.0, + "daily_period": 24, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 5.5 + ] + }, + "identifier": "b01a32e7-de41-462a-8475-23299737446d", + "material_value": "3-COPPER_K" + } + } + }, + "identifier": "389bfced-fd2f-4e93-9aef-00707806b84f" + } + } + } + }, + "recirc_piping": { + "f6b5e96e-0af8-4740-be9a-b528c6026653": { + "display_name": "_unnamed_", + "identifier": "f6b5e96e-0af8-4740-be9a-b528c6026653", + "user_data": {}, + "segments": { + "d0282c9e-0509-403d-8ae5-4726ff85b965": { + "user_data": {}, + "insulation_conductivity": 0.040000000000000001, + "insulation_thickness_mm": 25.399999999999999, + "display_name": "d0282c9e-0509-403d-8ae5-4726ff85b965", + "insulation_reflective": true, + "insulation_quality": null, + "diameter_mm": 25.399999999999999, + "water_temp_c": 48.0, + "daily_period": 23.0, + "geometry": { + "p": [ + 0.0, + -5.5, + 0.0 + ], + "type": "LineSegment3D", + "v": [ + 0.0, + 0.0, + 1.1000000000000001 + ] + }, + "identifier": "d0282c9e-0509-403d-8ae5-4726ff85b965", + "material_value": "2-COPPER_L" + } + } + } + }, + "identifier": "b7ae9245-9b9c-4a60-9309-d532c74f11b2", + "heaters": { + "3a3e8231-f071-41a4-82f3-fc1da3023f4e": { + "user_data": {}, + "display_name": "3a3e8231-f071-41a4-82f3-fc1da3023f4e", + "in_conditioned_space": true, + "annual_energy_factor": 3.0251000000000001, + "annual_COP": null, + "total_system_perf_ratio": null, + "identifier": "3a3e8231-f071-41a4-82f3-fc1da3023f4e", + "percent_coverage": 1.0, + "heater_type": "PhHvacHotWaterHeaterHeatPump_Inside" + } + }, + "recirc_hours": 23, + "number_tap_points": 1 + }, + "heat_pump_systems": [ + { + "user_data": {}, + "heat_pump_class_name": "PhHeatPumpRatedMonthly", + "ambient_temp_2": 8.3330000000000002, + "ambient_temp_1": -8.3330000000000002, + "display_name": "None", + "COP_1": 2.5, + "cooling_params": { + "recirculation": { + "user_data": {}, + "capacity": 10.0, + "flow_rate_m3_hr": 100.0, + "display_name": "25d8862b-ced8-4724-a307-96930d10c8e9", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "flow_rate_variable": true, + "used": false, + "identifier": "25d8862b-ced8-4724-a307-96930d10c8e9", + "single_speed": false + }, + "ventilation": { + "user_data": {}, + "capacity": 10.0, + "display_name": "15fe94a1-f94f-46b5-b823-bae561d2a49e", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "used": false, + "identifier": "15fe94a1-f94f-46b5-b823-bae561d2a49e", + "single_speed": false + }, + "dehumidification": { + "user_data": {}, + "display_name": "f0570d6b-181f-45d3-9463-a2ed44e4a5b8", + "annual_COP": 4.0, + "used": false, + "useful_heat_loss": false, + "identifier": "f0570d6b-181f-45d3-9463-a2ed44e4a5b8" + }, + "percent_coverage": 1.0, + "panel": { + "user_data": {}, + "display_name": "64c3e80a-7e5a-4732-8237-098ac41a0139", + "annual_COP": 4.0, + "used": false, + "identifier": "64c3e80a-7e5a-4732-8237-098ac41a0139" + } + }, + "identifier": "ee11c751-7b31-4173-9c6b-fefbbcb1c327", + "percent_coverage": 1.0, + "COP_2": 2.5 + }, + { + "user_data": {}, + "heat_pump_class_name": "PhHeatPumpRatedMonthly", + "ambient_temp_2": 12.0, + "ambient_temp_1": -3.3300000000000001, + "display_name": "Example_Heat_Pump", + "COP_1": 3.3999999999999999, + "cooling_params": { + "recirculation": { + "user_data": {}, + "capacity": 10.0, + "flow_rate_m3_hr": 100.08000000000000, + "display_name": "_unnamed_recirculation_cooling__8af3574b", + "min_coil_temp": 10.0, + "annual_COP": 2.0, + "flow_rate_variable": true, + "used": true, + "identifier": "9a933703-7df6-4328-a347-95ef4b15fe13", + "single_speed": false + }, + "ventilation": { + "user_data": {}, + "capacity": 10.0, + "display_name": "5decd2b4-edba-460c-ba97-58d8d3e60eab", + "min_coil_temp": 12.0, + "annual_COP": 4.0, + "used": false, + "identifier": "5decd2b4-edba-460c-ba97-58d8d3e60eab", + "single_speed": false + }, + "dehumidification": { + "user_data": {}, + "display_name": "_unnamed_dehumidification_cooling__8ff770a1", + "annual_COP": 2.0, + "used": true, + "useful_heat_loss": false, + "identifier": "3b186981-9e21-482a-b186-7b1a15bf1a3b" + }, + "percent_coverage": 1.0, + "panel": { + "user_data": {}, + "display_name": "d84b19ad-32ad-40e1-87b0-9d9c13f4db20", + "annual_COP": 4.0, + "used": false, + "identifier": "d84b19ad-32ad-40e1-87b0-9d9c13f4db20" } + }, + "identifier": "efbb29ab-7f08-4719-a771-9b639bc09388", + "percent_coverage": 1.0, + "COP_2": 4.1200000000000001 + } + ], + "heating_systems": [] + }, + "type": "RoomPropertiesAbridged" + }, + "type": "Room", + "identifier": "Room_3_68564805", + "story": "1" + } + ], + "display_name": "unnamed", + "properties": { + "revive": { + "grid_region": { + "region_code": "", + "description": "", + "filepath": "", + "region_name": "" + }, + "co2_measures": {}, + "id_num": 0, + "type": "ModelRevivePropertiesAbridged", + "national_emissions_factors": { + "GDP_million_USD": 0.0, + "country_name": "", + "type": "NationalEmissionsFactors", + "kg_CO2_per_USD": 0.0, + "us_trading_rank": 0, + "CO2_MT": 0.0 + }, + "analysis_duration": 50, + "envelope_labor_cost_fraction": 0.40000000000000002, + "fuels": { + "ELECTRICITY": { + "fuel_type": "ELECTRICITY", + "sale_price_per_kwh": 0.13200000000000001, + "type": "Fuel", + "annual_base_price": 200.0, + "purchase_price_per_kwh": 0.17984 + }, + "NATURAL_GAS": { + "fuel_type": "NATURAL_GAS", + "sale_price_per_kwh": 0.0, + "type": "Fuel", + "annual_base_price": 200.0, + "purchase_price_per_kwh": 0.047100000000000003 + } + } + }, + "radiance": { + "modifier_sets": [], + "type": "ModelRadianceProperties", + "global_modifier_set": { + "door_set": { + "exterior_modifier": "generic_opaque_door_0.50", + "overhead_modifier": "generic_opaque_door_0.50", + "interior_modifier": "generic_opaque_door_0.50", + "type": "DoorModifierSetAbridged", + "interior_glass_modifier": "generic_interior_window_vis_0.88", + "exterior_glass_modifier": "generic_exterior_window_vis_0.64" + }, + "roof_ceiling_set": { + "exterior_modifier": "generic_ceiling_0.80", + "type": "RoofCeilingModifierSetAbridged", + "interior_modifier": "generic_ceiling_0.80" + }, + "air_boundary_modifier": "air_boundary", + "type": "GlobalModifierSet", + "shade_set": { + "exterior_modifier": "generic_exterior_shade_0.35", + "type": "ShadeModifierSetAbridged", + "interior_modifier": "generic_interior_shade_0.50" + }, + "floor_set": { + "exterior_modifier": "generic_floor_0.20", + "type": "FloorModifierSetAbridged", + "interior_modifier": "generic_floor_0.20" + }, + "modifiers": [ + { + "roughness": 0.0, + "identifier": "generic_ceiling_0.80", + "dependencies": [], + "r_reflectance": 0.80000000000000004, + "type": "Plastic", + "b_reflectance": 0.80000000000000004, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.80000000000000004 + }, + { + "identifier": "generic_interior_window_vis_0.88", + "dependencies": [], + "modifier": null, + "g_transmissivity": 0.95841543286105957, + "b_transmissivity": 0.95841543286105957, + "r_transmissivity": 0.95841543286105957, + "type": "Glass", + "refraction_index": null + }, + { + "roughness": 0.0, + "identifier": "generic_wall_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_floor_0.20", + "dependencies": [], + "r_reflectance": 0.20000000000000001, + "type": "Plastic", + "b_reflectance": 0.20000000000000001, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.20000000000000001 + }, + { + "roughness": 0.0, + "identifier": "generic_exterior_shade_0.35", + "dependencies": [], + "r_reflectance": 0.34999999999999998, + "type": "Plastic", + "b_reflectance": 0.34999999999999998, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.34999999999999998 + }, + { + "r_reflectance": 1.0, + "transmitted_diff": 1.0, + "identifier": "air_boundary", + "g_reflectance": 1.0, + "b_reflectance": 1.0, + "roughness": 0.0, + "dependencies": [], + "specularity": 0.0, + "modifier": null, + "transmitted_spec": 1.0, + "type": "Trans" + }, + { + "identifier": "generic_exterior_window_vis_0.64", + "dependencies": [], + "modifier": null, + "g_transmissivity": 0.69757618153843315, + "b_transmissivity": 0.69757618153843315, + "r_transmissivity": 0.69757618153843315, + "type": "Glass", + "refraction_index": null + }, + { + "roughness": 0.0, + "identifier": "generic_interior_shade_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_opaque_door_0.50", + "dependencies": [], + "r_reflectance": 0.5, + "type": "Plastic", + "b_reflectance": 0.5, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.5 + }, + { + "roughness": 0.0, + "identifier": "generic_context_0.20", + "dependencies": [], + "r_reflectance": 0.20000000000000001, + "type": "Plastic", + "b_reflectance": 0.20000000000000001, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.20000000000000001 + } + ], + "aperture_set": { + "interior_modifier": "generic_interior_window_vis_0.88", + "operable_modifier": "generic_exterior_window_vis_0.64", + "window_modifier": "generic_exterior_window_vis_0.64", + "type": "ApertureModifierSetAbridged", + "skylight_modifier": "generic_exterior_window_vis_0.64" + }, + "wall_set": { + "exterior_modifier": "generic_wall_0.50", + "type": "WallModifierSetAbridged", + "interior_modifier": "generic_wall_0.50" + }, + "context_modifier": "generic_context_0.20" + }, + "modifiers": [ + { + "roughness": 0.0, + "identifier": "generic_context_0.20", + "dependencies": [], + "r_reflectance": 0.20000000000000001, + "type": "Plastic", + "b_reflectance": 0.20000000000000001, + "specularity": 0.0, + "modifier": null, + "g_reflectance": 0.20000000000000001 + } + ] + }, + "energy": { + "construction_sets": [ + { + "door_set": { + "overhead_construction": null, + "exterior_glass_construction": "PhWindowConstruction_87009c53", + "exterior_construction": null, + "type": "DoorConstructionSetAbridged", + "interior_construction": null, + "interior_glass_construction": null + }, + "roof_ceiling_set": { + "interior_construction": null, + "type": "RoofCeilingConstructionSetAbridged", + "ground_construction": null, + "exterior_construction": null + }, + "type": "ConstructionSetAbridged", + "floor_set": { + "interior_construction": null, + "type": "FloorConstructionSetAbridged", + "ground_construction": null, + "exterior_construction": null + }, + "shade_construction": null, + "air_boundary_construction": null, + "aperture_set": { + "skylight_construction": "PhWindowConstruction_87009c53", + "interior_construction": null, + "type": "ApertureConstructionSetAbridged", + "operable_construction": "PhWindowConstruction_87009c53", + "window_construction": "PhWindowConstruction_87009c53" + }, + "identifier": "ConstructionSet_331aca03", + "wall_set": { + "interior_construction": null, + "type": "WallConstructionSetAbridged", + "ground_construction": null, + "exterior_construction": null + } + }, + { + "door_set": { + "overhead_construction": null, + "exterior_glass_construction": "PhWindowConstruction_da632847", + "exterior_construction": null, + "type": "DoorConstructionSetAbridged", + "interior_construction": null, + "interior_glass_construction": null + }, + "roof_ceiling_set": { + "interior_construction": null, + "type": "RoofCeilingConstructionSetAbridged", + "ground_construction": null, + "exterior_construction": "Ext_Roof" + }, + "type": "ConstructionSetAbridged", + "floor_set": { + "interior_construction": null, + "type": "FloorConstructionSetAbridged", + "ground_construction": null, + "exterior_construction": "test_floor" + }, + "shade_construction": null, + "air_boundary_construction": null, + "aperture_set": { + "skylight_construction": "PhWindowConstruction_da632847", + "interior_construction": null, + "type": "ApertureConstructionSetAbridged", + "operable_construction": "PhWindowConstruction_da632847", + "window_construction": "PhWindowConstruction_da632847" + }, + "identifier": "ConstructionSet_e8b43d4f", + "wall_set": { + "interior_construction": null, + "type": "WallConstructionSetAbridged", + "ground_construction": "My New Assembly", + "exterior_construction": "Ext_Wall" + } + } + ], + "schedules": [ + { + "winter_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.2307553806, + 0.28810717499999999, + 0.2307553806 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" + }, + { + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn" + }, + { + "values": [ + 0.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_WntrDsn" + }, + { + "values": [ + 0.2307553806, + 0.38123479599999999, + 0.47654349499999998, + 0.33358044650000002, + 0.28592609699999999, + 0.2307553806 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 8, + 0 + ], + [ + 12, + 0 + ], + [ + 17, + 0 + ], + [ + 19, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat" + }, + { + "values": [ + 0.30767384079999999, + 0.38123479599999999, + 0.85777829100000003, + 0.76246959199999997, + 0.85777829100000003, + 0.47654349499999998, + 0.38123479599999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 8, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy" + } + ], + "holiday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Wkdy", + "end_date": [ + 12, + 31 + ] + }, + { + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_EQUIP_SCH_2013_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Equipment", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_EQUIP_SCH_2013_Sun" + }, + { + "display_name": "hbph_sfh_Heating_Setpoint", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 20.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Heating_Setpoint_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Heating_Setpoint", + "schedule_type_limit": "Temperature", + "default_day_schedule": "hbph_sfh_Heating_Setpoint_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0060000000000000001, + 0.0030000000000000001, + 0.001, + 0.0030000000000000001, + 0.021999999999999999, + 0.074999999999999997, + 0.079000000000000001, + 0.075999999999999998, + 0.067000000000000004, + 0.060999999999999999, + 0.048000000000000001, + 0.042000000000000003, + 0.036999999999999998, + 0.033000000000000002, + 0.043999999999999997, + 0.058000000000000003, + 0.069000000000000006, + 0.065000000000000002, + 0.058999999999999997, + 0.048000000000000001, + 0.042000000000000003, + 0.023 + ], + "times": [ + [ + 0, + 0 + ], + [ + 1, + 0 + ], + [ + 2, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 11, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 19, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Combined_HotWater_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Combined_HotWater", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Combined_HotWater_Day Schedule" + }, + { + "display_name": "hbph_sfh_Dishwasher", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.014999999999999999, + 0.0070000000000000001, + 0.0050000000000000001, + 0.0030000000000000001, + 0.01, + 0.02, + 0.031, + 0.058000000000000003, + 0.065000000000000002, + 0.056000000000000001, + 0.048000000000000001, + 0.041000000000000002, + 0.045999999999999999, + 0.035999999999999997, + 0.037999999999999999, + 0.049000000000000002, + 0.086999999999999994, + 0.111, + 0.089999999999999997, + 0.067000000000000004, + 0.043999999999999997, + 0.031 + ], + "times": [ + [ + 0, + 0 + ], + [ + 1, + 0 + ], + [ + 2, + 0 + ], + [ + 3, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 11, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 19, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Dishwasher_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Dishwasher", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Dishwasher_Day Schedule" + }, + { + "display_name": "hbph_sfh_Clothesdryer", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.01, + 0.0060000000000000001, + 0.0040000000000000001, + 0.002, + 0.0040000000000000001, + 0.0060000000000000001, + 0.016, + 0.032000000000000001, + 0.048000000000000001, + 0.068000000000000005, + 0.078, + 0.081000000000000003, + 0.073999999999999996, + 0.067000000000000004, + 0.057000000000000002, + 0.060999999999999999, + 0.055, + 0.053999999999999999, + 0.050999999999999997, + 0.051999999999999998, + 0.053999999999999999, + 0.043999999999999997, + 0.024 + ], + "times": [ + [ + 0, + 0 + ], + [ + 1, + 0 + ], + [ + 2, + 0 + ], + [ + 3, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 11, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Clothesdryer_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Clothesdryer", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Clothesdryer_Day Schedule" + }, + { + "winter_designday_schedule": "OfficeMedium BLDG_OCC_SCH_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0, + 0.050000000000000003, + 0.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Default" + }, + { + "values": [ + 0.0, + 1.0, + 0.050000000000000003 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_SmrDsn" + }, + { + "values": [ + 0.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_WntrDsn" + }, + { + "values": [ + 0.0, + 0.10000000000000001, + 0.20000000000000001, + 0.94999999999999996, + 0.5, + 0.94999999999999996, + 0.29999999999999999, + 0.10000000000000001, + 0.050000000000000003 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Wkdy" + }, + { + "values": [ + 0.0, + 0.10000000000000001, + 0.29999999999999999, + 0.10000000000000001, + 0.050000000000000003, + 0.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 8, + 0 + ], + [ + 12, + 0 + ], + [ + 17, + 0 + ], + [ + 19, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_OCC_SCH_Sat" + } + ], + "holiday_schedule": "OfficeMedium BLDG_OCC_SCH_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_OCC_SCH_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Wkdy", + "end_date": [ + 12, + 31 + ] + }, + { + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_OCC_SCH_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Occupancy", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_OCC_SCH_Default" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 120.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "Seated Adult Activity_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "Seated Adult Activity", + "schedule_type_limit": "Activity Level", + "default_day_schedule": "Seated Adult Activity_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 1.0, + 0.90000000000000002, + 0.40000000000000002, + 0.25, + 0.55000000000000004, + 0.90000000000000002, + 1.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 21, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Occupant_Presence_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Occupant_Presence", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Occupant_Presence_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "HumidNoLimit_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "HumidNoLimit", + "schedule_type_limit": "Humidity", + "default_day_schedule": "HumidNoLimit_Day Schedule" + }, + { + "winter_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" + }, + { + "values": [ + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn" + }, + { + "values": [ + 15.600000000000000, + 17.600000000000001, + 19.600000000000001, + 21.0, + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_WntrDsn" + }, + { + "values": [ + 15.600000000000000, + 17.800000000000001, + 20.0, + 21.0, + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy" + }, + { + "values": [ + 15.600000000000000, + 17.800000000000001, + 20.0, + 21.0, + 15.600000000000000 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 17, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat" + } + ], + "holiday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Wkdy", + "end_date": [ + 12, + 31 + ] + }, + { + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Heating", + "schedule_type_limit": "Temperature", + "default_day_schedule": "OfficeMedium HTGSETP_SCH_YES_OPTIMUM_Default" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 60.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "HBPH_SFH_Setpoint_165940b1_DeHumidSetp_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "HBPH_SFH_Setpoint_165940b1_DeHumidSetp", + "schedule_type_limit": "Humidity", + "default_day_schedule": "HBPH_SFH_Setpoint_165940b1_DeHumidSetp_Day Schedule" + }, + { + "display_name": "hbph_sfh_Cooktop", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0070000000000000001, + 0.0040000000000000001, + 0.0070000000000000001, + 0.010999999999999999, + 0.025000000000000001, + 0.042000000000000003, + 0.045999999999999999, + 0.048000000000000001, + 0.042000000000000003, + 0.050000000000000003, + 0.057000000000000002, + 0.045999999999999999, + 0.057000000000000002, + 0.043999999999999997, + 0.091999999999999998, + 0.14999999999999999, + 0.11700000000000001, + 0.059999999999999998, + 0.035000000000000003, + 0.025000000000000001, + 0.016, + 0.010999999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 2, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 11, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 19, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Cooktop_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Cooktop", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Cooktop_Day Schedule" + }, + { + "winter_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.050000000000000003, + 0.04311628, + 0.050000000000000003 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" + }, + { + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn" + }, + { + "values": [ + 0.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_WntrDsn" + }, + { + "values": [ + 0.050000000000000003, + 0.08623256, + 0.25869767999999999, + 0.12934883999999999, + 0.04311628, + 0.050000000000000003 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 8, + 0 + ], + [ + 12, + 0 + ], + [ + 17, + 0 + ], + [ + 19, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat" + }, + { + "values": [ + 0.050000000000000003, + 0.10000000000000001, + 0.08623256, + 0.25869767999999999, + 0.77609304000000001, + 0.43116280000000001, + 0.25869767999999999, + 0.17246512, + 0.08623256, + 0.04311628 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 20, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy" + } + ], + "holiday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Wkdy", + "end_date": [ + 12, + 31 + ] + }, + { + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium BLDG_LIGHT_SCH_2013_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Lighting", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium BLDG_LIGHT_SCH_2013_Sun" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0080000000000000002, + 0.024, + 0.050000000000000003, + 0.056000000000000001, + 0.050000000000000003, + 0.021999999999999999, + 0.014999999999999999, + 0.025999999999999999, + 0.014999999999999999, + 0.056000000000000001, + 0.078, + 0.105, + 0.126, + 0.128, + 0.087999999999999995, + 0.049000000000000002, + 0.02 + ], + "times": [ + [ + 0, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 19, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Lighting_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Lighting", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Lighting_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 112.53934481000194 ], - "user_data": {}, - "quantity": 1, - "identifier": "6e83e331-4c27-48bf-9103-088cdfae4ddb" + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Occupant_Activity_Day Schedule" } ], - "ph_bldg_segment_id": "b0c4f67c-ab8f-4493-aa7e-8118ae2b5540", - "specific_heat_capacity": "1-LIGHTWEIGHT", - "ph_foundations": [] - }, - "doe2": { - "type": "RoomDoe2Properties" + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Occupant_Activity", + "schedule_type_limit": "Activity Level", + "default_day_schedule": "hbph_sfh_Occupant_Activity_Day Schedule" }, - "ph_hvac": { - "id_num": 0, - "renewable_devices": [ - { - "utilization_factor": 1.0, - "percent_coverage": 1.0, - "array_size": 0.0, - "display_name": "my_PV_system", - "device_typename": "PhPhotovoltaicDevice", - "user_data": {}, - "photovoltaic_renewable_energy": 1000.0, - "identifier": "ab9dc3e4-bc3b-40d6-82ae-7bb37cb63b05" + { + "winter_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 } - ], - "exhaust_vent_devices": [ + }, + "day_schedules": [ { - "device_class_name": "ExhaustVentDryer", - "annual_runtime_minutes": 7.625, - "exhaust_flow_rate_m3s": 123.0, - "display_name": "example_dryer_vent", - "user_data": {}, - "quantity": 1, - "identifier": "795c8209-18b0-4620-8489-c550a528c552" - } - ], - "ventilation_system": { - "exhaust_ducting": [ - { - "identifier": "9c03c854-94d6-45e1-924d-d66d55e52abd", - "display_name": "Test_Vent_System_exhaust", - "duct_type": 2, - "user_data": {}, - "segments": { - "f28525da-a952-4a41-b8b7-2ad4e9dce6ae": { - "insulation_conductivity": 0.040000000000000001, - "diameter": 0.17600000000000002, - "height": null, - "insulation_reflective": true, - "insulation_thickness": 0.02794, - "display_name": "f28525da-a952-4a41-b8b7-2ad4e9dce6ae", - "user_data": {}, - "width": null, - "geometry": { - "v": [ - 1.0832885283134288, - -0.19101299543362338, - 0.0 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "f28525da-a952-4a41-b8b7-2ad4e9dce6ae" - } - } - } - ], - "id_num": 0, - "supply_ducting": [ - { - "identifier": "b402df62-29df-41dc-bee7-d4ce421e4a5c", - "display_name": "__unnamed_vent_duct__", - "duct_type": 1, - "user_data": {}, - "segments": { - "f862799d-c34d-47a9-b9c0-ef7254d8cbcf": { - "insulation_conductivity": 0.040000000000000001, - "diameter": 0.17600000000000002, - "height": null, - "insulation_reflective": true, - "insulation_thickness": 0.02794, - "display_name": "f862799d-c34d-47a9-b9c0-ef7254d8cbcf", - "user_data": {}, - "width": null, - "geometry": { - "v": [ - 0.0, - 0.0, - 1.1000000000000001 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "f862799d-c34d-47a9-b9c0-ef7254d8cbcf" - } - } - } - ], - "sys_type": 1, - "display_name": "Test_Vent_System", - "ventilation_unit": { - "temperature_below_defrost_used": -5.0, - "in_conditioned_space": true, - "display_name": "Test_Unit", - "electric_efficiency": 0.33300000000000002, - "latent_heat_recovery": 0.0, - "user_data": {}, - "quantity": 1, - "frost_protection_reqd": true, - "sensible_heat_recovery": 0.82999999999999996, - "identifier": "d2763823-d5b0-43d4-8454-ad23ea8c85e1" + "values": [ + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" + }, + { + "values": [ + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn" + }, + { + "values": [ + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default_WntrDsn" + }, + { + "values": [ + 26.699999999999999, + 25.600000000000001, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy" + }, + { + "values": [ + 26.699999999999999, + 25.699999999999999, + 25.0, + 24.0, + 26.699999999999999 + ], + "times": [ + [ + 0, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 17, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat" + } + ], + "holiday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_SmrDsn", + "schedule_rules": [ + { + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Wkdy", + "end_date": [ + 12, + 31 + ] }, - "user_data": {}, - "identifier": "c4eec930-511d-4edc-8847-cd50aaf377f7" - }, - "type": "RoomPhHvacPropertiesAbridged", - "supportive_devices": [ { - "norm_energy_demand_W": 123.0, - "annual_period_operation_khrs": 6.5, - "device_class_name": "PhSupportiveDevice", - "device_type": 10, - "in_conditioned_space": false, - "display_name": "Example Device", - "user_data": {}, - "quantity": 3, - "identifier": "6aa2fe0a-1cc8-43a6-8bca-4b4d3d82447a" + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Sat", + "end_date": [ + 12, + 31 + ] } ], - "hot_water_system": { - "id_num": 0, - "distribution_piping": { - "a0df87ec-13e7-430c-b772-e4ad9eac2e8a": { - "multiplier": 1, - "demand_recirculation": true, - "pipe_element": { - "user_data": {}, - "segments": { - "d5ece53c-a01f-4955-b6e8-e72231314bbb": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "6-PEX", - "diameter_mm": 38.099999999999994, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "d5ece53c-a01f-4955-b6e8-e72231314bbb", - "user_data": {}, - "water_temp_c": 60.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "d5ece53c-a01f-4955-b6e8-e72231314bbb" - } - }, - "identifier": "6e89e087-53fa-4b3f-b858-69aed0356532", - "display_name": "6e89e087-53fa-4b3f-b858-69aed0356532" - }, - "display_name": "Test_Trunk", - "branches": { - "070b936a-4fbe-4c7d-8bbd-ad35c40bdc11": { - "fixtures": { - "13a0aaff-a5a4-410d-8e8f-89795e642dd0": { - "user_data": {}, - "segments": { - "0e8aadd9-260b-4976-8042-95a6826d258b": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "1-COPPER_M", - "diameter_mm": 9.5249999999999986, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "0e8aadd9-260b-4976-8042-95a6826d258b", - "user_data": {}, - "water_temp_c": 55.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "0e8aadd9-260b-4976-8042-95a6826d258b" - } - }, - "identifier": "13a0aaff-a5a4-410d-8e8f-89795e642dd0", - "display_name": "Test_Fixture" - } - }, - "pipe_element": { - "user_data": {}, - "segments": { - "c88a1ea1-8934-4aa7-9353-f40d9a5d6720": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "3-COPPER_K", - "diameter_mm": 19.049999999999997, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "c88a1ea1-8934-4aa7-9353-f40d9a5d6720", - "user_data": {}, - "water_temp_c": 60.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "c88a1ea1-8934-4aa7-9353-f40d9a5d6720" - } - }, - "identifier": "958823f5-89dd-460f-95d9-fc6e2e7a5f7f", - "display_name": "958823f5-89dd-460f-95d9-fc6e2e7a5f7f" - }, - "display_name": "Test_Branch", - "user_data": {}, - "identifier": "070b936a-4fbe-4c7d-8bbd-ad35c40bdc11" - } - }, - "user_data": {}, - "identifier": "a0df87ec-13e7-430c-b772-e4ad9eac2e8a" - } + "identifier": "Generic Office Cooling", + "schedule_type_limit": "Temperature", + "default_day_schedule": "OfficeMedium CLGSETP_SCH_YES_OPTIMUM_Default" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "recirc_temp": 48.0, - "display_name": "SHW System_cf490d90", - "type": "PhHvacHotWaterSystemPh", - "recirc_hours": 23, - "heaters": { - "236b6b0c-ce11-4b75-8a08-11866aa9df41": { - "annual_energy_factor": 3.0251000000000001, - "percent_coverage": 1.0, - "in_conditioned_space": true, - "display_name": "236b6b0c-ce11-4b75-8a08-11866aa9df41", - "heater_type": "PhHvacHotWaterHeaterHeatPump_Inside", - "annual_COP": null, - "user_data": {}, - "total_system_perf_ratio": null, - "identifier": "236b6b0c-ce11-4b75-8a08-11866aa9df41" - } + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "Always On_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "Always On", + "schedule_type_limit": "Fractional", + "default_day_schedule": "Always On_Day Schedule" + }, + { + "display_name": "hbph_sfh_Refrigerator", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "number_tap_points": 1, - "recirc_piping": { - "edc91716-0aa4-47b9-8f46-0b7bdce83353": { - "user_data": {}, - "segments": { - "aa40dc7e-a686-4af6-b5b0-b005755c3db7": { - "insulation_thickness_mm": 25.399999999999999, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 23.0, - "material_value": "2-COPPER_L", - "diameter_mm": 25.399999999999999, - "insulation_reflective": true, - "insulation_quality": null, - "display_name": "aa40dc7e-a686-4af6-b5b0-b005755c3db7", - "user_data": {}, - "water_temp_c": 48.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 1.1000000000000001 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "aa40dc7e-a686-4af6-b5b0-b005755c3db7" - } - }, - "identifier": "edc91716-0aa4-47b9-8f46-0b7bdce83353", - "display_name": "_unnamed_" - } + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Refrigerator_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Refrigerator", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Refrigerator_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "tank_solar": { - "storage_loss_rate": 0.0, - "solar_losses": 0.0, - "room_temp": 20, - "solar_connection": false, - "in_conditioned_space": true, - "standby_fraction": 0.29999999999999999, - "display_name": "_unnamed_hw_tank_", - "storage_capacity": 300, - "water_temp": 60, - "standby_losses": 4.0, - "user_data": {}, - "quantity": 1, - "_tank_type": { - "value": "2-DHW ONLY" + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] }, - "identifier": "9b53c37f-9d3e-4988-9e31-bfb54f6930a5" - }, - "identifier": "fdeaeb2e-16a1-4aa6-b1e0-04ba41cec378" + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } }, - "heat_pump_systems": [ + "day_schedules": [ { - "ambient_temp_2": 12.0, - "ambient_temp_1": -3.3300000000000001, - "cooling_params": { - "percent_coverage": 1.0, - "ventilation": { - "identifier": "3fc81aab-d1e7-4187-b0d6-2432eb3424a9", - "used": false, - "display_name": "3fc81aab-d1e7-4187-b0d6-2432eb3424a9", - "min_coil_temp": 12.0, - "capacity": 10.0, - "annual_COP": 4.0, - "user_data": {}, - "single_speed": false - }, - "panel": { - "used": false, - "display_name": "e1a864a4-1447-4304-9143-13d9f0dfd0d3", - "annual_COP": 4.0, - "user_data": {}, - "identifier": "e1a864a4-1447-4304-9143-13d9f0dfd0d3" - }, - "recirculation": { - "identifier": "5fb81af7-0cf0-4b25-b870-35349c686b52", - "used": true, - "display_name": "_unnamed_recirculation_cooling__5b309700", - "min_coil_temp": 10.0, - "capacity": 10.0, - "flow_rate_variable": true, - "annual_COP": 2.0, - "user_data": {}, - "flow_rate_m3_hr": 100.08000000000000, - "single_speed": false - }, - "dehumidification": { - "used": true, - "display_name": "_unnamed_dehumidification_cooling__a72622c6", - "useful_heat_loss": false, - "annual_COP": 2.0, - "user_data": {}, - "identifier": "aaa52a61-6f53-4a33-b1b6-0daa3023beb1" - } - }, - "COP_2": 4.1200000000000001, - "percent_coverage": 1.0, - "display_name": "Example_Heat_Pump", - "user_data": {}, - "COP_1": 3.3999999999999999, - "heat_pump_class_name": "PhHeatPumpRatedMonthly", - "identifier": "ab91b772-1548-4062-9b0e-8229f07082a4" + "values": [ + 60.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "HBPH_SFH_Setpoint_d68a1fed_DeHumidSetp_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "HBPH_SFH_Setpoint_d68a1fed_DeHumidSetp", + "schedule_type_limit": "Humidity", + "default_day_schedule": "HBPH_SFH_Setpoint_d68a1fed_DeHumidSetp_Day Schedule" + }, + { + "display_name": "hbph_sfh_Cooling_Setpoint", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] + }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ { - "ambient_temp_2": 8.3330000000000002, - "ambient_temp_1": -8.3330000000000002, - "cooling_params": { - "percent_coverage": 1.0, - "ventilation": { - "identifier": "c65d1707-9641-49cc-b72f-aedf7aa7f7c4", - "used": false, - "display_name": "c65d1707-9641-49cc-b72f-aedf7aa7f7c4", - "min_coil_temp": 12.0, - "capacity": 10.0, - "annual_COP": 4.0, - "user_data": {}, - "single_speed": false - }, - "panel": { - "used": false, - "display_name": "e9365086-1c93-404a-a2e9-343bd7b9f8a8", - "annual_COP": 4.0, - "user_data": {}, - "identifier": "e9365086-1c93-404a-a2e9-343bd7b9f8a8" - }, - "recirculation": { - "identifier": "cd72ac50-1b93-4f58-985f-948a42bf3579", - "used": false, - "display_name": "cd72ac50-1b93-4f58-985f-948a42bf3579", - "min_coil_temp": 12.0, - "capacity": 10.0, - "flow_rate_variable": true, - "annual_COP": 4.0, - "user_data": {}, - "flow_rate_m3_hr": 100.0, - "single_speed": false - }, - "dehumidification": { - "used": false, - "display_name": "8b473581-6724-4fd2-ba42-c3d3c6ec894c", - "useful_heat_loss": false, - "annual_COP": 4.0, - "user_data": {}, - "identifier": "8b473581-6724-4fd2-ba42-c3d3c6ec894c" - } + "values": [ + 25.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Cooling_Setpoint_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Cooling_Setpoint", + "schedule_type_limit": "Temperature", + "default_day_schedule": "hbph_sfh_Cooling_Setpoint_Day Schedule" + }, + { + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" + }, + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] }, - "COP_2": 2.5, - "percent_coverage": 1.0, - "display_name": "None", - "user_data": {}, - "COP_1": 2.5, - "heat_pump_class_name": "PhHeatPumpRatedMonthly", - "identifier": "ded9d84f-e81d-4292-87ca-554fc82c9688" + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ + { + "values": [ + 0.0080000000000000002, + 0.024, + 0.050000000000000003, + 0.056000000000000001, + 0.050000000000000003, + 0.021999999999999999, + 0.014999999999999999, + 0.025999999999999999, + 0.014999999999999999, + 0.056000000000000001, + 0.078, + 0.105, + 0.126, + 0.128, + 0.087999999999999995, + 0.049000000000000002, + 0.02 + ], + "times": [ + [ + 0, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 18, + 0 + ], + [ + 19, + 0 + ], + [ + 20, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_MEL_Day Schedule" } ], - "heating_systems": [] - }, - "radiance": { - "type": "RoomRadiancePropertiesAbridged" + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_MEL", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_MEL_Day Schedule" }, - "energy": { - "lighting": { - "visible_fraction": 0.25, - "return_air_fraction": 0.0, - "radiant_fraction": 0.32000000000000001, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "LightingReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "id_num": 0, - "target_lux": 300, - "type": "LightingPhProperties", - "target_lux_height": 0.80000000000000004, - "equipment": { - "identifier": "714e456e-92e1-4116-aabe-bbce1373d029", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingInterior", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Interior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } - }, - "type": "LightingProperties" - }, - "display_name": "HBPH_SFH_Lighting", - "type": "LightingAbridged", - "watts_per_area": 13.911891558295746, - "schedule": "hbph_sfh_Lighting", - "identifier": "HBPH_SFH_Lighting_6e7be090" - }, - "people": { - "occupancy_schedule": "hbph_sfh_Occupant_Presence", - "radiant_fraction": 0.29999999999999999, - "people_per_area": 0.10000000000000001, - "properties": { - "revive": { - "type": "PeopleReviveProperties", - "id_num": 0 - }, - "ph": { - "id_num": 0, - "number_bedrooms": 1, - "type": "PeoplePhProperties", - "number_people": 1, - "dwellings": { - "identifier": "HBPH_DWELLING_1dd11d4f", - "num_dwellings": 1 - } - }, - "type": "PeopleProperties" - }, - "display_name": "HBPH_SFH_People", - "type": "PeopleAbridged", - "latent_fraction": { - "type": "Autocalculate" + { + "display_name": "hbph_sfh_Clotheswasher", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - "activity_schedule": "hbph_sfh_Occupant_Activity", - "identifier": "HBPH_SFH_People_a62d9d73" - }, - "hvac": "Room_4_b3f5e5da Ideal Loads Air System", - "service_hot_water": { - "flow_per_area": 0.23146215804218456, - "properties": { - "revive": { - "type": "ServiceHotWaterReviveProperties", - "id_num": 0 + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] }, - "type": "ServiceHotWaterProperties" - }, - "type": "ServiceHotWaterAbridged", - "sensible_fraction": 0.20000000000000001, - "schedule": "hbph_sfh_Combined_HotWater", - "target_temperature": 43.299999999999997, - "latent_fraction": 0.050000000000000003, - "identifier": "HBPH_SFH_ServiceHotWater_064a56dc" + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } }, - "process_loads": [ - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 25.416666666666668, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "2975c3da-1eaa-499f-bc42-cc1917a4dda6", - "reference_energy_norm": 1, - "equipment_type": "PhFridgeFreezer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen fridge/freeze combo", - "energy_demand": 1.2200000000000000, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 4 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhFridgeFreezer", - "schedule": "hbph_sfh_Refrigerator", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhFridgeFreezer_a88fc2a0" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 368.86201269764467, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "d7ea813e-91b9-40b2-9ec7-31b5b6a3788f", - "reference_energy_norm": 2, - "equipment_type": "PhDishwasher", - "capacity_type": 1, - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen dishwasher", - "energy_demand": 269, - "capacity": 12, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhDishwasher", - "schedule": "hbph_sfh_Dishwasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhDishwasher_43ce1970" - }, + "day_schedules": [ { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 164.21934230153215, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "4ddf6945-bb91-4ceb-8f18-41c614130d2c", - "utilization_factor": 1.0, - "modified_energy_factor": 2.7000000000000002, - "reference_energy_norm": 2, - "equipment_type": "PhClothesWasher", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - washer", - "energy_demand": 120, - "capacity": 0.12740000000000001, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesWasher", - "schedule": "hbph_sfh_Clotheswasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhClothesWasher_518c31e2" + "values": [ + 0.0089999999999999993, + 0.0070000000000000001, + 0.0040000000000000001, + 0.0070000000000000001, + 0.010999999999999999, + 0.021999999999999999, + 0.049000000000000002, + 0.072999999999999995, + 0.085999999999999993, + 0.084000000000000005, + 0.074999999999999997, + 0.067000000000000004, + 0.059999999999999998, + 0.049000000000000002, + 0.051999999999999998, + 0.050000000000000003, + 0.049000000000000002, + 0.047, + 0.032000000000000001, + 0.017000000000000001 + ], + "times": [ + [ + 0, + 0 + ], + [ + 1, + 0 + ], + [ + 2, + 0 + ], + [ + 4, + 0 + ], + [ + 5, + 0 + ], + [ + 6, + 0 + ], + [ + 7, + 0 + ], + [ + 8, + 0 + ], + [ + 9, + 0 + ], + [ + 10, + 0 + ], + [ + 11, + 0 + ], + [ + 12, + 0 + ], + [ + 13, + 0 + ], + [ + 14, + 0 + ], + [ + 15, + 0 + ], + [ + 16, + 0 + ], + [ + 17, + 0 + ], + [ + 21, + 0 + ], + [ + 22, + 0 + ], + [ + 23, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "hbph_sfh_Clotheswasher_Day Schedule" + } + ], + "type": "ScheduleRulesetAbridged", + "identifier": "hbph_sfh_Clotheswasher", + "schedule_type_limit": "Fractional", + "default_day_schedule": "hbph_sfh_Clotheswasher_Day Schedule" + }, + { + "winter_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn", + "properties": { + "revive": { + "id_num": 0, + "type": "ScheduleRulesetReviveProperties" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 741.66831073273784, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "9e0dcfd2-853d-4ac4-83c4-11e40e5f3b1c", - "_dryer_type": { - "value": "5-ELECTRIC EXHAUST AIR DRYER" - }, - "field_utilization_factor_type": 1, - "field_utilization_factor": 1.1799999999999999, - "reference_energy_norm": 2, - "equipment_type": "PhClothesDryer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - dryer", - "energy_demand": 0, - "gas_efficiency_factor": 2.6699999999999999, - "comment": "default", - "gas_consumption": 0, - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 3.9300000000000002, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" + "type": "ScheduleRulesetProperties", + "ph": { + "operating_periods": { + "collection": [] }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesDryer", - "schedule": "hbph_sfh_Clothesdryer", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhClothesDryer_7eb47af2" - }, + "id_num": 0, + "operating_days_wk": 7.0, + "type": "ScheduleRulesetPhProperties", + "operating_weeks_year": 52.142899999999997 + } + }, + "day_schedules": [ { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 546.30628661958428, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e0b6fc77-7b72-4e59-a81a-567bc357d3be", - "_cooktop_type": { - "value": "1-ELECTRICITY" - }, - "reference_energy_norm": 1, - "equipment_type": "PhCooktop", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen cooking", - "energy_demand": 0.20000000000000001, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhCooktop", - "schedule": "hbph_sfh_Cooktop", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhCooktop_c5e3bc57" + "values": [ + 1.0 + ], + "times": [ + [ + 0, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Default" }, { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1.2521406321689497, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "369cabc1-c0cd-4401-af76-9b8787da1100", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingExterior", - "in_conditioned_space": false, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Exterior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingExterior", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusLightingExterior_c5968ec5" + "values": [ + 1.0, + 0.25, + 1.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn" }, { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1.1415525114155252, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "ba46ba6f-1b18-4150-91bf-c1fcda1af0a6", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 2, - "equipment_type": "PhPhiusLightingGarage", - "in_conditioned_space": false, - "energy_demand_per_use": 100, - "display_name": "PHIUS+ Garage Lighting", - "energy_demand": 100, - "comment": "default", - "user_data": {}, - "quantity": 0, - "combined_energy_factor": 0, - "reference_quantity": 2 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingGarage", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusLightingGarage_8ab05006" + "values": [ + 1.0, + 0.25, + 1.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat_WntrDsn" }, { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 872.67161937496485, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e2405726-8b38-4897-83ce-406cb79357bd", - "reference_energy_norm": 1, - "equipment_type": "PhPhiusMEL", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ MELS", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 3 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusMEL", - "schedule": "hbph_sfh_MEL", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusMEL_24acba88" + "values": [ + 1.0, + 0.25, + 1.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 22, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Wkdy" }, { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 737.72402539528935, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "d7ea813e-91b9-40b2-9ec7-31b5b6a3788f", - "reference_energy_norm": 2, - "equipment_type": "PhDishwasher", - "capacity_type": 1, - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen dishwasher", - "energy_demand": 269, - "capacity": 12, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhDishwasher", - "schedule": "hbph_sfh_Dishwasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_fc427aa0" - }, + "values": [ + 1.0, + 0.25, + 1.0 + ], + "times": [ + [ + 0, + 0 + ], + [ + 6, + 0 + ], + [ + 18, + 0 + ] + ], + "type": "ScheduleDay", + "interpolate": false, + "identifier": "OfficeMedium INFIL_SCH_PNNL_Sat" + } + ], + "holiday_schedule": "OfficeMedium INFIL_SCH_PNNL_Default", + "type": "ScheduleRulesetAbridged", + "summer_designday_schedule": "OfficeMedium INFIL_SCH_PNNL_Wkdy_SmrDsn", + "schedule_rules": [ { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 328.43868460306430, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "4ddf6945-bb91-4ceb-8f18-41c614130d2c", - "utilization_factor": 1.0, - "modified_energy_factor": 2.7000000000000002, - "reference_energy_norm": 2, - "equipment_type": "PhClothesWasher", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - washer", - "energy_demand": 120, - "capacity": 0.12740000000000001, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesWasher", - "schedule": "hbph_sfh_Clotheswasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_00c09ce1" + "apply_thursday": true, + "apply_tuesday": true, + "apply_friday": true, + "apply_monday": true, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": true, + "apply_saturday": false, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Wkdy", + "end_date": [ + 12, + 31 + ] }, { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1112.5024660991069, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "9e0dcfd2-853d-4ac4-83c4-11e40e5f3b1c", - "_dryer_type": { - "value": "5-ELECTRIC EXHAUST AIR DRYER" - }, - "field_utilization_factor_type": 1, - "field_utilization_factor": 1.1799999999999999, - "reference_energy_norm": 2, - "equipment_type": "PhClothesDryer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - dryer", - "energy_demand": 0, - "gas_efficiency_factor": 2.6699999999999999, - "comment": "default", - "gas_consumption": 0, - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 3.9300000000000002, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesDryer", - "schedule": "hbph_sfh_Clothesdryer", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_5f6b2e2c" + "apply_thursday": false, + "apply_tuesday": false, + "apply_friday": false, + "apply_monday": false, + "apply_sunday": false, + "type": "ScheduleRuleAbridged", + "start_date": [ + 1, + 1 + ], + "apply_wednesday": false, + "apply_saturday": true, + "schedule_day": "OfficeMedium INFIL_SCH_PNNL_Sat", + "end_date": [ + 12, + 31 + ] + } + ], + "identifier": "Generic Office Infiltration", + "schedule_type_limit": "Fractional", + "default_day_schedule": "OfficeMedium INFIL_SCH_PNNL_Default" + } + ], + "constructions": [ + { + "display_name": "My New Assembly", + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs26e59acf", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + }, + "materials": [ + "SS_Cladding", + "SS_GWB", + "Steel-Stud Layer [SS_Roxul]", + "SS_GWB" + ], + "type": "OpaqueConstructionAbridged", + "identifier": "My New Assembly" + }, + { + "identifier": "PhWindowConstruction_87009c53", + "type": "WindowConstructionAbridged", + "materials": [ + "PhWindowConstruction_87009c53" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "WindowConstructionReviveProperties" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 50.833333333333336, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "2975c3da-1eaa-499f-bc42-cc1917a4dda6", - "reference_energy_norm": 1, - "equipment_type": "PhFridgeFreezer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen fridge/freeze combo", - "energy_demand": 1.2200000000000000, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 4 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhFridgeFreezer", - "schedule": "hbph_sfh_Refrigerator", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_e23ed10d" + "type": "WindowConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs02a42497", + "uris": [] }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 819.45942992937648, - "properties": { - "revive": { + "ph": { + "ph_frame": { + "user_data": {}, + "display_name": "PhWindowFrame_f731fc2b", + "right": { + "user_data": {}, + "u_factor": 0.123, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_4ca0015d", "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e0b6fc77-7b72-4e59-a81a-567bc357d3be", - "_cooktop_type": { - "value": "1-ELECTRICITY" - }, - "reference_energy_norm": 1, - "equipment_type": "PhCooktop", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen cooking", - "energy_demand": 0.20000000000000001, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_4ca0015d" }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhCooktop", - "schedule": "hbph_sfh_Cooktop", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_eb6851b5" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 572.18674727811469, - "properties": { - "revive": { + "id_num": 0, + "left": { + "user_data": {}, + "u_factor": 0.123, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_4ca0015d", "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_4ca0015d" }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "714e456e-92e1-4116-aabe-bbce1373d029", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingInterior", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Interior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } + "bottom": { + "user_data": {}, + "u_factor": 0.123, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_4ca0015d", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_4ca0015d" }, - "type": "ProcessProperties" + "identifier": "PhWindowFrame_f731fc2b", + "top": { + "user_data": {}, + "u_factor": 0.123, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_4ca0015d", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_4ca0015d" + } }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingInterior", - "schedule": "hbph_sfh_Lighting", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_ca2ec7fc" + "id_num": 0, + "ph_glazing": { + "user_data": {}, + "u_factor": 0.80000000000000004, + "display_name": "PhWindowGlazing_068b2eab", + "id_num": 0, + "g_value": 0.40000000000000002, + "identifier": "PhWindowGlazing_068b2eab" + }, + "type": "WindowConstructionPhProperties" + } + } + }, + { + "identifier": "test_floor", + "type": "OpaqueConstructionAbridged", + "materials": [ + "MAT_Mass", + "MAT_test_floor", + "MAT_Mass" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 2.5288564022831053, - "properties": { - "revive": { + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6f7097b8", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "shade_material": "test-shade", + "control_type": "AlwaysOn", + "properties": { + "revive": { + "id_num": 0, + "type": "WindowConstructionShadeReviveProperties" + }, + "type": "WindowConstructionShadeProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs20d52111", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "WindowConstructionShadePhProperties" + } + }, + "type": "WindowConstructionShadeAbridged", + "window_construction": { + "identifier": "PhWindowConstruction_da632847", + "type": "WindowConstructionAbridged", + "materials": [ + "PhWindowConstruction_da632847" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "WindowConstructionReviveProperties" + }, + "type": "WindowConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsface2741", + "uris": [] + }, + "ph": { + "ph_frame": { + "user_data": {}, + "display_name": "PhWindowFrame_7081f506", + "right": { + "user_data": {}, + "u_factor": 1.0, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_c68af8ea", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_c68af8ea" + }, "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "369cabc1-c0cd-4401-af76-9b8787da1100", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingExterior", - "in_conditioned_space": false, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Exterior Lighting", - "energy_demand": 0, - "comment": "default", + "left": { + "user_data": {}, + "u_factor": 1.0, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_c68af8ea", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_c68af8ea" + }, + "bottom": { "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 + "u_factor": 1.0, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_c68af8ea", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_c68af8ea" + }, + "identifier": "PhWindowFrame_7081f506", + "top": { + "user_data": {}, + "u_factor": 1.0, + "psi_install": 0.040000000000000001, + "width": 0.10000000000000001, + "display_name": "PhWindowFrameElement_c68af8ea", + "id_num": 0, + "psi_glazing": 0.040000000000000001, + "chi_value": 0.0, + "identifier": "PhWindowFrameElement_c68af8ea" } }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingExterior", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_166208b7" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1637.0480430554567, - "properties": { - "revive": { + "id_num": 0, + "ph_glazing": { + "user_data": {}, + "u_factor": 0.80000000000000004, + "display_name": "PhWindowGlazing_03a0fe04", "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e2405726-8b38-4897-83ce-406cb79357bd", - "reference_energy_norm": 1, - "equipment_type": "PhPhiusMEL", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ MELS", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 3 - } + "g_value": 0.40000000000000002, + "identifier": "PhWindowGlazing_03a0fe04" }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusMEL", - "schedule": "hbph_sfh_MEL", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_1877713d" + "type": "WindowConstructionPhProperties" + } } - ], - "ventilation": { - "type": "VentilationAbridged", - "air_changes_per_hour": 0.40000000000000002, - "identifier": "HBPH_SFH_Ventilation_9b4d6a49" }, - "type": "RoomEnergyPropertiesAbridged", - "setpoint": { - "identifier": "HBPH_SFH_Setpoint_34d06c34", - "humidifying_schedule": "HumidNoLimit", - "type": "SetpointAbridged", - "heating_schedule": "hbph_sfh_Heating_Setpoint", - "dehumidifying_schedule": "HBPH_SFH_Setpoint_34d06c34_DeHumidSetp", - "cooling_schedule": "hbph_sfh_Cooling_Setpoint" + "shade_location": "Interior", + "identifier": "PhWindowConstruction_da632847" + }, + { + "display_name": "Ext_Wall", + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs95c997b2", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } }, - "program_type": "Generic Office Program", - "infiltration": { - "display_name": "HBPH_SFH_Infiltration", - "type": "InfiltrationAbridged", - "flow_per_exterior_area": 2.8846153846153845e-05, - "schedule": "Always On", - "identifier": "Room_4_b3f5e5da_infiltration" + "materials": [ + "Plywood", + "Insulation_2 + Wood_1", + "GWB" + ], + "type": "OpaqueConstructionAbridged", + "identifier": "Ext_Wall" + }, + { + "display_name": "Ext_Roof", + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs614e1614", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } }, - "electric_equipment": { - "radiant_fraction": 0.5, - "lost_fraction": 0.0, - "properties": { - "revive": { - "type": "ElectricEquipmentReviveProperties", - "id_num": 0 + "materials": [ + "Plywood", + "Insulation_1+Mix_1+Mix_2", + "GWB" + ], + "type": "OpaqueConstructionAbridged", + "identifier": "Ext_Roof" + } + ], + "materials": [ + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "ph": { - "type": "ElectricEquipmentPhProperties", - "equipment_collection": { - "equipment_set": {} - } + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc01ec081", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "ph_color": { + "a": 255, + "b": 76, + "g": 207, + "r": 85 + }, + "divisions": { + "column_widths": [ + 1.0 + ], + "cells": [ + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 0.038832999999999999, + "density": 999.0, + "thickness": 0.088900000000000007, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs177ca97d", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "ph_color": { + "a": 255, + "b": 76, + "g": 207, + "r": 85 + }, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "SS_Roxul", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "SS_Roxul" + }, + "column": 0 + } + ], + "steel_stud_spacing_mm": 406.39999999999998, + "row_heights": [ + 1.0 + ] + } + } + }, + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.088900000000000007, + "identifier": "Steel-Stud Layer [SS_Roxul]", + "conductivity": 0.082997690079743267, + "specific_heat": 999.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 999.0, + "visible_absorptance": 0.69999999999999996 + }, + { + "type": "EnergyMaterialNoMass", + "roughness": "Rough", + "thermal_absorptance": 0.90000000000000002, + "identifier": "MAT_test_floor", + "r_value": 1.0, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "type": "ElectricEquipmentProperties" + "type": "EnergyMaterialNoMassReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialNoMassProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6be3cbc8", + "uris": [] }, - "display_name": "HBPH_SFH_ElectricEquipment", - "type": "ElectricEquipmentAbridged", - "watts_per_area": 0.0, - "schedule": "Always On", - "latent_fraction": 0.0, - "identifier": "HBPH_SFH_Equipment_d5d39cbc" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": null + } }, - "construction_set": "ConstructionSet_a56012e3" + "visible_absorptance": 0.69999999999999996, + "solar_absorptance": 0.69999999999999996 }, - "type": "RoomPropertiesAbridged", - "revive": { - "type": "RoomRevivePropertiesAbridged" - } - }, - "display_name": "Room_4", - "type": "Room", - "identifier": "Room_4_b3f5e5da" - }, - { - "zone": "HBPH_DWELLING_1dd11d4f", - "faces": [ { - "boundary_condition": { - "type": "Ground" - }, + "type": "EnergyMaterial", + "conductivity": 2.0605180000000001, + "density": 999.0, + "thickness": 0.025399999999999999, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs72b9645a", + "uris": [] }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "ph": { + "user_data": {}, + "id_num": 0, + "ph_color": { + "a": 255, + "b": 99, + "g": 182, + "r": 212 + }, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "SS_Cladding", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "SS_Cladding" + }, + { + "type": "EnergyWindowMaterialSimpleGlazSys", + "u_factor": 1.0757635684464950, + "identifier": "PhWindowConstruction_da632847", + "shgc": 0.40000000000000002, + "vt": 0.59999999999999998, + "display_name": "PhWindowConstruction_da632847", + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialSimpleGlazSysReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "type": "EnergyWindowMaterialSimpleGlazSysProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs3346c48e", + "uris": [] + } + } + }, + { + "type": "EnergyWindowMaterialSimpleGlazSys", + "u_factor": 0.83391891891891878, + "identifier": "PhWindowConstruction_87009c53", + "shgc": 0.40000000000000002, + "vt": 0.59999999999999998, + "display_name": "PhWindowConstruction_87009c53", + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialSimpleGlazSysReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "type": "FacePropertiesAbridged", + "type": "EnergyWindowMaterialSimpleGlazSysProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0ba78786", + "uris": [] + } + } + }, + { + "airflow_permeability": 0.0, + "top_opening_multiplier": 0.5, + "left_opening_multiplier": 0.5, + "distance_to_glass": 0.050000000000000003, + "display_name": "test-shade", + "emissivity": 0.90000000000000002, + "right_opening_multiplier": 0.5, + "type": "EnergyWindowMaterialShade", + "visible_reflectance": 0.099999999999999978, + "properties": { "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialShadeReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyWindowMaterialShadeProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsa5885cde", + "uris": [] } }, - "display_name": "Room_3_4dd4f0c5..Face0", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - -5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ] - ], - "plane": { - "o": [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - "x": [ - -0.98480775301220813, - 0.17364817766693011, - 0.0 - ], - "n": [ - -0.17364817766693011, - -0.98480775301220813, - 0.0 - ], - "type": "Plane" + "visible_transmittance": 0.90000000000000002, + "thickness": 0.10000000000000001, + "conductivity": 0.90000000000000002, + "infrared_transmittance": 0.0, + "solar_reflectance": 0.099999999999999978, + "bottom_opening_multiplier": 0.5, + "solar_transmittance": 0.90000000000000002, + "identifier": "test-shade" + }, + { + "type": "EnergyMaterial", + "conductivity": 0.16, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs40302f90", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "ph_color": { + "a": 255, + "b": 255, + "g": 84, + "r": 255 + }, + "divisions": { + "column_widths": [ + 0.012699999999999999, + 0.07619999999999999, + 0.012699999999999999 + ], + "cells": [ + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsfc86c8ec", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Mix_2", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Mix_2" + }, + "column": 0 + }, + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 0.040000000000000001, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs40302f90", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Insulation_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_1" + }, + "column": 1 + }, + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 0.040000000000000001, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs40302f90", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Insulation_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_1" + }, + "column": 2 + } + ], + "steel_stud_spacing_mm": null, + "row_heights": [ + 1.0 + ] + } } }, - "identifier": "Room_3_4dd4f0c5..Face0" + "roughness": "MediumRough", + "identifier": "Insulation_1+Mix_1+Mix_2", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_1+Mix_1+Mix_2" }, { - "boundary_condition": { - "type": "Ground" - }, "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" - }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" - }, - "type": "FacePropertiesAbridged", "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_3_4dd4f0c5..Face1", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - -5.5, - 0.0 - ], - [ - 0.0, - -5.5, - -5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ] - ], - "plane": { - "o": [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - "x": [ - 0.17364817766693033, - 0.98480775301220813, - 0.0 - ], - "n": [ - -0.98480775301220813, - 0.17364817766693033, - 0.0 - ], - "type": "Plane" - } - }, - "identifier": "Room_3_4dd4f0c5..Face1" - }, - { - "boundary_condition": { - "type": "Ground" - }, - "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsf14fa1ee", + "uris": [] }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_3_4dd4f0c5..Face2", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - -5.5 - ], - [ - 0.0, - -5.5, - -5.5 - ], - [ - 0.0, - -5.5, - 0.0 - ] - ], - "plane": { - "o": [ - 0.0, - -5.5, - 0.0 - ], - "x": [ - 0.98480775301220813, - -0.17364817766693044, - 0.0 - ], - "n": [ - 0.17364817766693044, - 0.98480775301220813, - 0.0 - ], - "type": "Plane" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "identifier": "Room_3_4dd4f0c5..Face2" + "type": "EnergyMaterial", + "roughness": "Rough", + "thickness": 0.01, + "identifier": "MAT_Mass", + "conductivity": 100.0, + "specific_heat": 460.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 2500.0, + "visible_absorptance": 0.69999999999999996 }, { - "boundary_condition": { - "type": "Ground" - }, + "type": "EnergyMaterial", + "conductivity": 0.12, + "density": 999.0, + "thickness": 0.012699999999999999, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsd0d0e42e", + "uris": [] }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_3_4dd4f0c5..Face3", - "type": "Face", - "face_type": "Wall", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - 4.6523906598326512, - -10.788219090421832, - -5.5 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - -5.5 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ] - ], - "plane": { - "o": [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - "x": [ - -0.1736481776669303, - -0.98480775301220813, - 0.0 - ], - "n": [ - 0.98480775301220813, - -0.1736481776669303, - 0.0 - ], - "type": "Plane" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "identifier": "Room_3_4dd4f0c5..Face3" + "roughness": "MediumRough", + "identifier": "GWB", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "GWB" }, { - "boundary_condition": { - "type": "Ground" - }, + "type": "EnergyMaterial", + "conductivity": 0.12, + "density": 999.0, + "thickness": 0.019, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs56688e52", + "uris": [] }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_3_4dd4f0c5..Face4", - "type": "Face", - "face_type": "Floor", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 5.4164426415671443, - -6.4550649771681172, - -5.5 - ], - [ - 4.6523906598326512, - -10.788219090421832, - -5.5 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - [ - 0.0, - -5.5, - -5.5 - ] - ], - "plane": { - "o": [ - -0.76405198173449351, - -9.8331541132537161, - -5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - -1.0 - ], - "type": "Plane" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "identifier": "Room_3_4dd4f0c5..Face4" + "roughness": "MediumRough", + "identifier": "Plywood", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Plywood" }, { - "boundary_condition": { - "type": "Ground" - }, + "type": "EnergyMaterial", + "conductivity": 0.25756499999999999, + "density": 999.0, + "thickness": 0.025399999999999999, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, "properties": { - "ph": { - "type": "FacePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "FacePhHvacPropertiesAbridged" - }, - "radiance": { - "type": "FaceRadiancePropertiesAbridged" + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } }, - "energy": { - "type": "FaceEnergyPropertiesAbridged" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfscef0c371", + "uris": [] }, - "type": "FacePropertiesAbridged", - "revive": { - "type": "FaceRevivePropertiesAbridged", - "id_num": 0 - } - }, - "display_name": "Room_3_4dd4f0c5..Face5", - "type": "Face", - "face_type": "RoofCeiling", - "geometry": { - "type": "Face3D", - "boundary": [ - [ - 0.0, - -5.5, - 0.0 - ], - [ - -0.76405198173449351, - -9.8331541132537161, - 0.0 - ], - [ - 4.6523906598326512, - -10.788219090421832, - 0.0 - ], - [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ] - ], - "plane": { - "o": [ - 5.4164426415671443, - -6.4550649771681172, - 0.0 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" + "ph": { + "user_data": {}, + "id_num": 0, + "ph_color": { + "a": 255, + "b": 161, + "g": 161, + "r": 161 + }, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "identifier": "Room_3_4dd4f0c5..Face5" - } - ], - "story": "1", - "properties": { - "ph": { - "specific_heat_capacity_wh_m2k": null, - "type": "RoomPhPropertiesAbridged", - "spaces": [ - { - "wufi_type": 99, - "name": "Room_3", - "number": "101", - "properties": { - "type": "SpaceProperties", - "ph": { - "id_num": 0, - "_v_eta": null, - "type": "SpacePhProperties", - "_v_tran": null, - "_v_sup": null - }, - "energy": { - "type": "SpaceEnergyProperties", - "id_num": 0 - } + "roughness": "MediumRough", + "identifier": "SS_GWB", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "SS_GWB" + }, + { + "type": "EnergyMaterial", + "conductivity": 0.17078124999999994, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "volumes": [ - { - "floor": { - "display_name": "ec65de6a-a6cf-43b9-a18f-288255d7f6dd", - "user_data": {}, - "floor_segments": [ - { - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -5.5 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -5.5 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ] - ], - "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs07f4db44", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [ + 0.18414999999999998, + 0.038099999999999995, + 0.18414999999999998 + ], + "cells": [ + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" + }, + "column": 0 + }, + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" + }, + "column": 1 + }, + { + "row": 0, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" + }, + "column": 2 + }, + { + "row": 1, + "material": { + "type": "EnergyMaterial", + "conductivity": 0.040000000000000001, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" } }, - "floor_area": 10.890000000000002, - "net_floor_area": 10.890000000000002, - "weighted_net_floor_area": 10.890000000000002, - "weighting_factor": 1.0, - "net_area_factor": 1.0, - "reference_point": { - "x": 1.7845510657596111, - "y": -8.0486030474941046, - "z": -5.3900000000000006, - "type": "Point3D" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs07f4db44", + "uris": [] }, - "display_name": "d20e5805-5fbe-4916-b3fd-c7ba0e68df5f", - "user_data": {}, - "weighted_floor_area": 10.890000000000002, - "identifier": "d20e5805-5fbe-4916-b3fd-c7ba0e68df5f" - } - ], - "geometry": { - "type": "Face3D", - "boundary": [ - [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -5.5 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -5.5 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ] - ], - "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Insulation_2", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_2" }, - "identifier": "ec65de6a-a6cf-43b9-a18f-288255d7f6dd" + "column": 0 }, - "avg_ceiling_height": 2.75, - "display_name": "1bc154c2-a463-4fa7-8625-9a705b2c8adf", - "user_data": {}, - "geometry": [ - { - "type": "Face3D", - "boundary": [ - [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -5.5 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -5.5 - ], - [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ] - ], - "plane": { - "o": [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - -1.0 - ], - "type": "Plane" - } - }, - { - "type": "Face3D", - "boundary": [ - [ - -0.12690121986096739, - -9.3870163468138124, - -2.75 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -2.75 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ], - [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ] - ], - "plane": { - "o": [ - -0.12690121986096739, - -9.3870163468138124, - -2.75 - ], - "x": [ - 0.17364817766693041, - 0.98480775301220813, - 0.0 - ], - "n": [ - -0.98480775301220813, - 0.17364817766693041, - 0.0 - ], - "type": "Plane" - } + { + "row": 1, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" }, - { - "type": "Face3D", - "boundary": [ - [ - 0.44613776643990277, - -6.1371507618735270, - -2.75 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -2.75 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -5.5 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -5.5 - ] - ], - "plane": { - "o": [ - 0.44613776643990277, - -6.1371507618735270, - -2.75 - ], - "x": [ - 0.98480775301220813, - -0.17364817766692997, - 0.0 - ], - "n": [ - 0.17364817766692997, - 0.98480775301220813, - 0.0 - ], - "type": "Plane" - } + "column": 1 + }, + { + "row": 1, + "material": { + "type": "EnergyMaterial", + "conductivity": 0.040000000000000001, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs07f4db44", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Insulation_2", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_2" }, - { - "type": "Face3D", - "boundary": [ - [ - 3.6960033513801895, - -6.7101897481743960, - -2.75 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -2.75 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -5.5 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -5.5 - ] - ], - "plane": { - "o": [ - 3.6960033513801895, - -6.7101897481743960, - -2.75 - ], - "x": [ - -0.17364817766693033, - -0.98480775301220813, - 0.0 - ], - "n": [ - 0.98480775301220813, - -0.17364817766693033, - 0.0 - ], - "type": "Plane" - } + "column": 2 + }, + { + "row": 2, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" }, - { - "type": "Face3D", - "boundary": [ - [ - 3.1229643650793193, - -9.9600553331146831, - -2.75 - ], - [ - -0.12690121986096739, - -9.3870163468138124, - -2.75 - ], - [ - -0.12690121986096739, - -9.3870163468138124, - -5.5 - ], - [ - 3.1229643650793193, - -9.9600553331146831, - -5.5 - ] - ], - "plane": { - "o": [ - 3.1229643650793193, - -9.9600553331146831, - -2.75 - ], - "x": [ - -0.98480775301220802, - 0.1736481776669305, - 0.0 - ], - "n": [ - -0.1736481776669305, - -0.98480775301220802, - 0.0 - ], - "type": "Plane" - } + "column": 0 + }, + { + "row": 2, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" }, - { - "type": "Face3D", - "boundary": [ - [ - 3.1229643650793193, - -9.9600553331146831, - -2.75 - ], - [ - 3.6960033513801895, - -6.7101897481743960, - -2.75 - ], - [ - 0.44613776643990277, - -6.1371507618735270, - -2.75 - ], - [ - -0.12690121986096739, - -9.3870163468138124, - -2.75 - ] - ], - "plane": { - "o": [ - 3.1229643650793193, - -9.9600553331146831, - -2.75 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } - } - ], - "identifier": "1bc154c2-a463-4fa7-8625-9a705b2c8adf" + "column": 1 + }, + { + "row": 2, + "material": { + "type": "EnergyMaterial", + "conductivity": 1.0, + "density": 999.0, + "thickness": 0.45000000000000001, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0375bfe3", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "roughness": "MediumRough", + "identifier": "Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Wood_1" + }, + "column": 2 + } + ], + "steel_stud_spacing_mm": null, + "row_heights": [ + 0.07619999999999999, + 2.3241000000000001, + 0.038099999999999995 + ] + } + } + }, + "roughness": "MediumRough", + "identifier": "Insulation_2 + Wood_1", + "specific_heat": 999.0, + "visible_absorptance": 0.69999999999999996, + "display_name": "Insulation_2 + Wood_1" + } + ], + "type": "ModelEnergyProperties", + "hvacs": [ + { + "sensible_heat_recovery": 0.0, + "demand_controlled_ventilation": false, + "latent_heat_recovery": 0.0, + "properties": { + "revive": { + "type": "IdealAirSystemReviveProperties", + "equipment_collection": { + "type": "PhiusReviveHVACEquipmentCollection", + "equipment": [] + } + }, + "type": "IdealAirSystemProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs59639dd4", + "uris": [] + } + }, + "heating_air_temperature": 50.0, + "type": "IdealAirSystemAbridged", + "cooling_air_temperature": 13.0, + "cooling_limit": { + "type": "Autosize" + }, + "identifier": "Room_4_6b80c479 Ideal Loads Air System", + "economizer_type": "DifferentialDryBulb", + "heating_limit": { + "type": "Autosize" + } + }, + { + "sensible_heat_recovery": 0.0, + "demand_controlled_ventilation": false, + "latent_heat_recovery": 0.0, + "properties": { + "revive": { + "type": "IdealAirSystemReviveProperties", + "equipment_collection": { + "type": "PhiusReviveHVACEquipmentCollection", + "equipment": [] + } + }, + "type": "IdealAirSystemProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs33753df7", + "uris": [] + } + }, + "heating_air_temperature": 50.0, + "type": "IdealAirSystemAbridged", + "cooling_air_temperature": 13.0, + "cooling_limit": { + "type": "Autosize" + }, + "identifier": "Room_3_68564805 Ideal Loads Air System", + "economizer_type": "DifferentialDryBulb", + "heating_limit": { + "type": "Autosize" + } + } + ], + "global_construction_set": { + "door_set": { + "overhead_construction": "Generic Exterior Door", + "exterior_glass_construction": "Generic Double Pane", + "exterior_construction": "Generic Exterior Door", + "type": "DoorConstructionSetAbridged", + "interior_construction": "Generic Interior Door", + "interior_glass_construction": "Generic Single Pane" + }, + "context_construction": "Generic Context", + "roof_ceiling_set": { + "interior_construction": "Generic Interior Ceiling", + "type": "RoofCeilingConstructionSetAbridged", + "ground_construction": "Generic Underground Roof", + "exterior_construction": "Generic Roof" + }, + "constructions": [ + { + "solar_reflectance": 0.20000000000000001, + "visible_reflectance": 0.20000000000000001, + "properties": { + "revive": { + "id_num": 0, + "type": "ShadeConstructionReviveProperties" + }, + "type": "ShadeConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs49fd9d35", + "uris": [] + } + }, + "type": "ShadeConstruction", + "identifier": "Generic Context", + "is_specular": false + }, + { + "identifier": "Generic Exposed Floor", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Painted Metal", + "Generic Ceiling Air Gap", + "Generic 50mm Insulation", + "Generic LW Concrete" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs0b1b5dd9", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "air_mixing_schedule": "Always On", + "properties": { + "type": "AirBoundaryConstructionProperties", + "ph": { + "id_num": 0, + "type": "AirBoundaryConstructionPhProperties" + } + }, + "type": "AirBoundaryConstructionAbridged", + "air_mixing_per_area": 0.10000000000000001, + "identifier": "Generic Air Boundary" + }, + { + "identifier": "Generic Ground Slab", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs665bf479", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Roof", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Roof Membrane", + "Generic 50mm Insulation", + "Generic LW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs74f76d6b", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Interior Door", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 25mm Wood" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc87f44f4", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "solar_reflectance": 0.34999999999999998, + "visible_reflectance": 0.34999999999999998, + "properties": { + "revive": { + "id_num": 0, + "type": "ShadeConstructionReviveProperties" + }, + "type": "ShadeConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc692eb41", + "uris": [] + } + }, + "type": "ShadeConstruction", + "identifier": "Generic Shade", + "is_specular": false + }, + { + "identifier": "Generic Underground Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs5a2fd953", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Interior Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Gypsum Board", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs43a7171d", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Interior Floor", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Acoustic Tile", + "Generic Ceiling Air Gap", + "Generic LW Concrete" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs5673b08d", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Exterior Door", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Painted Metal", + "Generic 25mm Insulation", + "Generic Painted Metal" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsab8663d9", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Single Pane", + "type": "WindowConstructionAbridged", + "materials": [ + "Generic Clear Glass" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "WindowConstructionReviveProperties" + }, + "type": "WindowConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs1c12692e", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "WindowConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Exterior Wall", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic Brick", + "Generic LW Concrete", + "Generic 50mm Insulation", + "Generic Wall Air Gap", + "Generic Gypsum Board" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs495f6d7a", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Underground Roof", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic 50mm Insulation", + "Generic HW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs3dd19604", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Double Pane", + "type": "WindowConstructionAbridged", + "materials": [ + "Generic Low-e Glass", + "Generic Window Air Gap", + "Generic Clear Glass" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "WindowConstructionReviveProperties" + }, + "type": "WindowConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsec801696", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "WindowConstructionPhProperties" + } + } + }, + { + "identifier": "Generic Interior Ceiling", + "type": "OpaqueConstructionAbridged", + "materials": [ + "Generic LW Concrete", + "Generic Ceiling Air Gap", + "Generic Acoustic Tile" + ], + "properties": { + "revive": { + "id_num": 0, + "type": "OpaqueConstructionReviveProperties" + }, + "type": "OpaqueConstructionProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfse861a36c", + "uris": [] + }, + "ph": { + "id_num": 0, + "type": "OpaqueConstructionPhProperties" + } + } + } + ], + "type": "GlobalConstructionSet", + "materials": [ + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsc8269c93", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.02, + "identifier": "Generic Acoustic Tile", + "conductivity": 0.059999999999999998, + "specific_heat": 590.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.20000000000000001, + "density": 368.0, + "visible_absorptance": 0.20000000000000001 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" } - ], - "user_data": {}, - "quantity": 1, - "identifier": "240b8d7a-8eb8-4a3d-b54b-0ce6f2e4c585" - } - ], - "ph_bldg_segment_id": "b0c4f67c-ab8f-4493-aa7e-8118ae2b5540", - "specific_heat_capacity": "1-LIGHTWEIGHT", - "ph_foundations": [] - }, - "doe2": { - "type": "RoomDoe2Properties" - }, - "ph_hvac": { - "id_num": 0, - "renewable_devices": [ - { - "utilization_factor": 1.0, - "percent_coverage": 1.0, - "array_size": 0.0, - "display_name": "my_PV_system", - "device_typename": "PhPhotovoltaicDevice", - "user_data": {}, - "photovoltaic_renewable_energy": 1000.0, - "identifier": "ab9dc3e4-bc3b-40d6-82ae-7bb37cb63b05" + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6a282e09", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.10000000000000001, + "identifier": "Generic Ceiling Air Gap", + "conductivity": 0.55600000000000005, + "specific_heat": 1000.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 1.2800000000000000, + "visible_absorptance": 0.69999999999999996 + }, + { + "type": "EnergyWindowMaterialGlazing", + "solar_reflectance": 0.070000000000000007, + "solar_reflectance_back": 0.070000000000000007, + "dirt_correction": 1.0, + "solar_diffusing": false, + "visible_reflectance_back": 0.080000000000000002, + "visible_reflectance": 0.080000000000000002, + "thickness": 0.0060000000000000001, + "identifier": "Generic Clear Glass", + "emissivity_back": 0.83999999999999997, + "solar_transmittance": 0.77000000000000002, + "visible_transmittance": 0.88, + "emissivity": 0.83999999999999997, + "infrared_transmittance": 0.0, + "conductivity": 1.0, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGlazingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyWindowMaterialGlazingsProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs940e8680", + "uris": [] + } } - ], - "exhaust_vent_devices": [ - { - "device_class_name": "ExhaustVentDryer", - "annual_runtime_minutes": 7.625, - "exhaust_flow_rate_m3s": 123.0, - "display_name": "example_dryer_vent", - "user_data": {}, - "quantity": 1, - "identifier": "795c8209-18b0-4620-8489-c550a528c552" + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs456ea39a", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.10000000000000001, + "identifier": "Generic LW Concrete", + "conductivity": 0.53000000000000003, + "specific_heat": 840.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.80000000000000004, + "density": 1280.0, + "visible_absorptance": 0.80000000000000004 + }, + { + "type": "EnergyWindowMaterialGlazing", + "solar_reflectance": 0.35999999999999999, + "solar_reflectance_back": 0.35999999999999999, + "dirt_correction": 1.0, + "solar_diffusing": false, + "visible_reflectance_back": 0.20999999999999999, + "visible_reflectance": 0.20999999999999999, + "thickness": 0.0060000000000000001, + "identifier": "Generic Low-e Glass", + "emissivity_back": 0.047, + "solar_transmittance": 0.45000000000000001, + "visible_transmittance": 0.70999999999999996, + "emissivity": 0.83999999999999997, + "infrared_transmittance": 0.0, + "conductivity": 1.0, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGlazingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyWindowMaterialGlazingsProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs70be919c", + "uris": [] + } } - ], - "ventilation_system": { - "exhaust_ducting": [ - { - "identifier": "9c03c854-94d6-45e1-924d-d66d55e52abd", - "display_name": "Test_Vent_System_exhaust", - "duct_type": 2, + }, + { + "type": "EnergyWindowMaterialGas", + "identifier": "Generic Window Air Gap", + "thickness": 0.012699999999999999, + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyWindowMaterialGasReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyWindowMaterialGasProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsba113c0a", + "uris": [] + } + }, + "gas_type": "Air" + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfscf4686b6", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.0015, + "identifier": "Generic Painted Metal", + "conductivity": 45.0, + "specific_heat": 410.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 7690.0, + "visible_absorptance": 0.5 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs6ba41ac4", + "uris": [] + }, + "ph": { "user_data": {}, - "segments": { - "f28525da-a952-4a41-b8b7-2ad4e9dce6ae": { - "insulation_conductivity": 0.040000000000000001, - "diameter": 0.17600000000000002, - "height": null, - "insulation_reflective": true, - "insulation_thickness": 0.02794, - "display_name": "f28525da-a952-4a41-b8b7-2ad4e9dce6ae", - "user_data": {}, - "width": null, - "geometry": { - "v": [ - 1.0832885283134288, - -0.19101299543362338, - 0.0 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "f28525da-a952-4a41-b8b7-2ad4e9dce6ae" - } + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] } } - ], - "id_num": 0, - "supply_ducting": [ - { - "identifier": "b402df62-29df-41dc-bee7-d4ce421e4a5c", - "display_name": "__unnamed_vent_duct__", - "duct_type": 1, + }, + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.025399999999999999, + "identifier": "Generic 25mm Wood", + "conductivity": 0.14999999999999999, + "specific_heat": 1630.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 608.0, + "visible_absorptance": 0.5 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { "user_data": {}, - "segments": { - "f862799d-c34d-47a9-b9c0-ef7254d8cbcf": { - "insulation_conductivity": 0.040000000000000001, - "diameter": 0.17600000000000002, - "height": null, - "insulation_reflective": true, - "insulation_thickness": 0.02794, - "display_name": "f862799d-c34d-47a9-b9c0-ef7254d8cbcf", - "user_data": {}, - "width": null, - "geometry": { - "v": [ - 0.0, - 0.0, - 1.1000000000000001 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "f862799d-c34d-47a9-b9c0-ef7254d8cbcf" - } + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs10cf9e98", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] } } - ], - "sys_type": 1, - "display_name": "Test_Vent_System", - "ventilation_unit": { - "temperature_below_defrost_used": -5.0, - "in_conditioned_space": true, - "display_name": "Test_Unit", - "electric_efficiency": 0.33300000000000002, - "latent_heat_recovery": 0.0, - "user_data": {}, - "quantity": 1, - "frost_protection_reqd": true, - "sensible_heat_recovery": 0.82999999999999996, - "identifier": "d2763823-d5b0-43d4-8454-ad23ea8c85e1" }, - "user_data": {}, - "identifier": "c4eec930-511d-4edc-8847-cd50aaf377f7" + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.20000000000000001, + "identifier": "Generic HW Concrete", + "conductivity": 1.9500000000000000, + "specific_heat": 900.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.80000000000000004, + "density": 2240.0, + "visible_absorptance": 0.80000000000000004 }, - "type": "RoomPhHvacPropertiesAbridged", - "supportive_devices": [ - { - "norm_energy_demand_W": 123.0, - "annual_period_operation_khrs": 6.5, - "device_class_name": "PhSupportiveDevice", - "device_type": 10, - "in_conditioned_space": false, - "display_name": "Example Device", - "user_data": {}, - "quantity": 3, - "identifier": "6aa2fe0a-1cc8-43a6-8bca-4b4d3d82447a" - } - ], - "hot_water_system": { - "id_num": 0, - "distribution_piping": { - "a0df87ec-13e7-430c-b772-e4ad9eac2e8a": { - "multiplier": 1, - "demand_recirculation": true, - "pipe_element": { - "user_data": {}, - "segments": { - "d5ece53c-a01f-4955-b6e8-e72231314bbb": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "6-PEX", - "diameter_mm": 38.099999999999994, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "d5ece53c-a01f-4955-b6e8-e72231314bbb", - "user_data": {}, - "water_temp_c": 60.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "d5ece53c-a01f-4955-b6e8-e72231314bbb" - } - }, - "identifier": "6e89e087-53fa-4b3f-b858-69aed0356532", - "display_name": "6e89e087-53fa-4b3f-b858-69aed0356532" + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "display_name": "Test_Trunk", - "branches": { - "070b936a-4fbe-4c7d-8bbd-ad35c40bdc11": { - "fixtures": { - "13a0aaff-a5a4-410d-8e8f-89795e642dd0": { - "user_data": {}, - "segments": { - "0e8aadd9-260b-4976-8042-95a6826d258b": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "1-COPPER_M", - "diameter_mm": 9.5249999999999986, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "0e8aadd9-260b-4976-8042-95a6826d258b", - "user_data": {}, - "water_temp_c": 55.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "0e8aadd9-260b-4976-8042-95a6826d258b" - } - }, - "identifier": "13a0aaff-a5a4-410d-8e8f-89795e642dd0", - "display_name": "Test_Fixture" - } - }, - "pipe_element": { - "user_data": {}, - "segments": { - "c88a1ea1-8934-4aa7-9353-f40d9a5d6720": { - "insulation_thickness_mm": 0.0, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 24, - "material_value": "3-COPPER_K", - "diameter_mm": 19.049999999999997, - "insulation_reflective": false, - "insulation_quality": null, - "display_name": "c88a1ea1-8934-4aa7-9353-f40d9a5d6720", - "user_data": {}, - "water_temp_c": 60.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 5.5 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "c88a1ea1-8934-4aa7-9353-f40d9a5d6720" - } - }, - "identifier": "958823f5-89dd-460f-95d9-fc6e2e7a5f7f", - "display_name": "958823f5-89dd-460f-95d9-fc6e2e7a5f7f" - }, - "display_name": "Test_Branch", - "user_data": {}, - "identifier": "070b936a-4fbe-4c7d-8bbd-ad35c40bdc11" - } + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsecbfefc4", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.050000000000000003, + "identifier": "Generic 50mm Insulation", + "conductivity": 0.029999999999999999, + "specific_heat": 1210.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 43.0, + "visible_absorptance": 0.69999999999999996 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { "user_data": {}, - "identifier": "a0df87ec-13e7-430c-b772-e4ad9eac2e8a" - } - }, - "recirc_temp": 48.0, - "display_name": "SHW System_cf490d90", - "type": "PhHvacHotWaterSystemPh", - "recirc_hours": 23, - "heaters": { - "236b6b0c-ce11-4b75-8a08-11866aa9df41": { - "annual_energy_factor": 3.0251000000000001, - "percent_coverage": 1.0, - "in_conditioned_space": true, - "display_name": "236b6b0c-ce11-4b75-8a08-11866aa9df41", - "heater_type": "PhHvacHotWaterHeaterHeatPump_Inside", - "annual_COP": null, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs8ee60a00", + "uris": [] + }, + "ph": { "user_data": {}, - "total_system_perf_ratio": null, - "identifier": "236b6b0c-ce11-4b75-8a08-11866aa9df41" + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "number_tap_points": 1, - "recirc_piping": { - "edc91716-0aa4-47b9-8f46-0b7bdce83353": { - "user_data": {}, - "segments": { - "aa40dc7e-a686-4af6-b5b0-b005755c3db7": { - "insulation_thickness_mm": 25.399999999999999, - "insulation_conductivity": 0.040000000000000001, - "daily_period": 23.0, - "material_value": "2-COPPER_L", - "diameter_mm": 25.399999999999999, - "insulation_reflective": true, - "insulation_quality": null, - "display_name": "aa40dc7e-a686-4af6-b5b0-b005755c3db7", - "user_data": {}, - "water_temp_c": 48.0, - "geometry": { - "v": [ - 0.0, - 0.0, - 1.1000000000000001 - ], - "p": [ - 0.0, - -5.5, - 0.0 - ], - "type": "LineSegment3D" - }, - "identifier": "aa40dc7e-a686-4af6-b5b0-b005755c3db7" - } + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.01, + "identifier": "Generic Roof Membrane", + "conductivity": 0.16, + "specific_heat": 1460.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.65000000000000002, + "density": 1120.0, + "visible_absorptance": 0.65000000000000002 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "identifier": "edc91716-0aa4-47b9-8f46-0b7bdce83353", - "display_name": "_unnamed_" + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsae0d58c7", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } } }, - "tank_solar": { - "storage_loss_rate": 0.0, - "solar_losses": 0.0, - "room_temp": 20, - "solar_connection": false, - "in_conditioned_space": true, - "standby_fraction": 0.29999999999999999, - "display_name": "_unnamed_hw_tank_", - "storage_capacity": 300, - "water_temp": 60, - "standby_losses": 4.0, - "user_data": {}, - "quantity": 1, - "_tank_type": { - "value": "2-DHW ONLY" + "type": "EnergyMaterial", + "roughness": "Smooth", + "thickness": 0.10000000000000001, + "identifier": "Generic Wall Air Gap", + "conductivity": 0.66700000000000004, + "specific_heat": 1000.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 1.2800000000000000, + "visible_absorptance": 0.69999999999999996 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" + }, + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" + } + }, + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs79968724", + "uris": [] }, - "identifier": "9b53c37f-9d3e-4988-9e31-bfb54f6930a5" + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - "identifier": "2c5f4650-14ae-4977-bb5a-28689323a95a" + "type": "EnergyMaterial", + "roughness": "MediumSmooth", + "thickness": 0.012699999999999999, + "identifier": "Generic Gypsum Board", + "conductivity": 0.16, + "specific_heat": 1090.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.5, + "density": 800.0, + "visible_absorptance": 0.5 }, - "heat_pump_systems": [ - { - "ambient_temp_2": 12.0, - "ambient_temp_1": -3.3300000000000001, - "cooling_params": { - "percent_coverage": 1.0, - "ventilation": { - "identifier": "3fc81aab-d1e7-4187-b0d6-2432eb3424a9", - "used": false, - "display_name": "3fc81aab-d1e7-4187-b0d6-2432eb3424a9", - "min_coil_temp": 12.0, - "capacity": 10.0, - "annual_COP": 4.0, - "user_data": {}, - "single_speed": false - }, - "panel": { - "used": false, - "display_name": "e1a864a4-1447-4304-9143-13d9f0dfd0d3", - "annual_COP": 4.0, - "user_data": {}, - "identifier": "e1a864a4-1447-4304-9143-13d9f0dfd0d3" - }, - "recirculation": { - "identifier": "5fb81af7-0cf0-4b25-b870-35349c686b52", - "used": true, - "display_name": "_unnamed_recirculation_cooling__5b309700", - "min_coil_temp": 10.0, - "capacity": 10.0, - "flow_rate_variable": true, - "annual_COP": 2.0, - "user_data": {}, - "flow_rate_m3_hr": 100.08000000000000, - "single_speed": false + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "dehumidification": { - "used": true, - "display_name": "_unnamed_dehumidification_cooling__a72622c6", - "useful_heat_loss": false, - "annual_COP": 2.0, - "user_data": {}, - "identifier": "aaa52a61-6f53-4a33-b1b6-0daa3023beb1" + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" } }, - "COP_2": 4.1200000000000001, - "percent_coverage": 1.0, - "display_name": "Example_Heat_Pump", - "user_data": {}, - "COP_1": 3.3999999999999999, - "heat_pump_class_name": "PhHeatPumpRatedMonthly", - "identifier": "ab91b772-1548-4062-9b0e-8229f07082a4" + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfs2f053209", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } }, - { - "ambient_temp_2": 8.3330000000000002, - "ambient_temp_1": -8.3330000000000002, - "cooling_params": { - "percent_coverage": 1.0, - "ventilation": { - "identifier": "c65d1707-9641-49cc-b72f-aedf7aa7f7c4", - "used": false, - "display_name": "c65d1707-9641-49cc-b72f-aedf7aa7f7c4", - "min_coil_temp": 12.0, - "capacity": 10.0, - "annual_COP": 4.0, - "user_data": {}, - "single_speed": false - }, - "panel": { - "used": false, - "display_name": "e9365086-1c93-404a-a2e9-343bd7b9f8a8", - "annual_COP": 4.0, - "user_data": {}, - "identifier": "e9365086-1c93-404a-a2e9-343bd7b9f8a8" - }, - "recirculation": { - "identifier": "cd72ac50-1b93-4f58-985f-948a42bf3579", - "used": false, - "display_name": "cd72ac50-1b93-4f58-985f-948a42bf3579", - "min_coil_temp": 12.0, - "capacity": 10.0, - "flow_rate_variable": true, - "annual_COP": 4.0, - "user_data": {}, - "flow_rate_m3_hr": 100.0, - "single_speed": false + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.10000000000000001, + "identifier": "Generic Brick", + "conductivity": 0.90000000000000002, + "specific_heat": 790.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.65000000000000002, + "density": 1920.0, + "visible_absorptance": 0.65000000000000002 + }, + { + "properties": { + "revive": { + "id_num": 0, + "cost_per_m2": { + "value": 0.0, + "unit": "COST/M2" }, - "dehumidification": { - "used": false, - "display_name": "8b473581-6724-4fd2-ba42-c3d3c6ec894c", - "useful_heat_loss": false, - "annual_COP": 4.0, - "user_data": {}, - "identifier": "8b473581-6724-4fd2-ba42-c3d3c6ec894c" + "type": "EnergyMaterialReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "kg_CO2_per_m2": { + "value": 0.0, + "unit": "KG/M2" } }, - "COP_2": 2.5, - "percent_coverage": 1.0, - "display_name": "None", - "user_data": {}, - "COP_1": 2.5, - "heat_pump_class_name": "PhHeatPumpRatedMonthly", - "identifier": "ded9d84f-e81d-4292-87ca-554fc82c9688" - } - ], - "heating_systems": [] + "type": "EnergyMaterialProperties", + "ref": { + "user_data": {}, + "external_identifiers": {}, + "document_refs": [], + "ref_status": "NA", + "image_refs": [], + "type": "_HBObjectWithReferences", + "identifier": "rfsa8965141", + "uris": [] + }, + "ph": { + "user_data": {}, + "id_num": 0, + "divisions": { + "column_widths": [], + "cells": [], + "steel_stud_spacing_mm": null, + "row_heights": [] + } + } + }, + "type": "EnergyMaterial", + "roughness": "MediumRough", + "thickness": 0.025000000000000001, + "identifier": "Generic 25mm Insulation", + "conductivity": 0.029999999999999999, + "specific_heat": 1210.0, + "thermal_absorptance": 0.90000000000000002, + "solar_absorptance": 0.69999999999999996, + "density": 43.0, + "visible_absorptance": 0.69999999999999996 + } + ], + "floor_set": { + "interior_construction": "Generic Interior Floor", + "type": "FloorConstructionSetAbridged", + "ground_construction": "Generic Ground Slab", + "exterior_construction": "Generic Exposed Floor" }, - "radiance": { - "type": "RoomRadiancePropertiesAbridged" + "shade_construction": "Generic Shade", + "air_boundary_construction": "Generic Air Boundary", + "aperture_set": { + "skylight_construction": "Generic Double Pane", + "interior_construction": "Generic Single Pane", + "type": "ApertureConstructionSetAbridged", + "operable_construction": "Generic Double Pane", + "window_construction": "Generic Double Pane" }, - "energy": { - "lighting": { - "visible_fraction": 0.25, - "return_air_fraction": 0.0, - "radiant_fraction": 0.32000000000000001, + "wall_set": { + "interior_construction": "Generic Interior Wall", + "type": "WallConstructionSetAbridged", + "ground_construction": "Generic Underground Wall", + "exterior_construction": "Generic Exterior Wall" + } + }, + "shws": [], + "schedule_type_limits": [ + { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Activity Level", + "upper_limit": { + "type": "NoLimit" + }, + "numeric_type": "Continuous", + "unit_type": "ActivityLevel" + }, + { + "type": "ScheduleTypeLimit", + "lower_limit": -273.14999999999998, + "identifier": "Temperature", + "upper_limit": { + "type": "NoLimit" + }, + "numeric_type": "Continuous", + "unit_type": "Temperature" + }, + { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Humidity", + "upper_limit": 100.0, + "numeric_type": "Continuous", + "unit_type": "Percent" + }, + { + "type": "ScheduleTypeLimit", + "lower_limit": 0.0, + "identifier": "Fractional", + "upper_limit": 1.0, + "numeric_type": "Continuous", + "unit_type": "Dimensionless" + } + ], + "ventilation_simulation_control": { + "vent_control_type": "SingleZone", + "aspect_ratio": 1.0, + "long_axis_angle": 0.0, + "reference_humidity_ratio": 0.0, + "type": "VentilationSimulationControl", + "reference_pressure": 101325.0, + "building_type": "LowRise", + "reference_temperature": 20.0 + }, + "electric_load_center": { + "inverter_efficiency": 0.95999999999999996, + "type": "ElectricLoadCenter", + "inverter_dc_to_ac_size_ratio": 1.1000000000000001 + }, + "program_types": [ + { + "electric_equipment": { "properties": { "revive": { "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "LightingReviveProperties", - "lifetime_years": 25 + "type": "ElectricEquipmentReviveProperties" }, + "type": "ElectricEquipmentProperties", "ph": { - "id_num": 0, - "target_lux": 300, - "type": "LightingPhProperties", - "target_lux_height": 0.80000000000000004, - "equipment": { - "identifier": "714e456e-92e1-4116-aabe-bbce1373d029", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingInterior", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Interior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 + "type": "ElectricEquipmentPhProperties", + "equipment_collection": { + "equipment_set": {} } - }, - "type": "LightingProperties" + } }, - "display_name": "HBPH_SFH_Lighting", - "type": "LightingAbridged", - "watts_per_area": 13.911891558295746, - "schedule": "hbph_sfh_Lighting", - "identifier": "HBPH_SFH_Lighting_c17cb976" + "latent_fraction": 0.0, + "radiant_fraction": 0.5, + "lost_fraction": 0.0, + "schedule": "Generic Office Equipment", + "watts_per_area": 10.330000000000000, + "type": "ElectricEquipmentAbridged", + "identifier": "Generic Office Equipment" }, "people": { - "occupancy_schedule": "hbph_sfh_Occupant_Presence", - "radiant_fraction": 0.29999999999999999, - "people_per_area": 0.10000000000000001, "properties": { "revive": { - "type": "PeopleReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "PeopleReviveProperties" }, + "type": "PeopleProperties", "ph": { - "id_num": 0, - "number_bedrooms": 2, - "type": "PeoplePhProperties", - "number_people": 3, "dwellings": { - "identifier": "HBPH_DWELLING_1dd11d4f", - "num_dwellings": 1 - } - }, - "type": "PeopleProperties" + "identifier": "a4a99464-ce1b-461b-8997-f524a2dad2c9", + "num_dwellings": 0 + }, + "number_bedrooms": 0, + "id_num": 0, + "number_people": 0.0, + "type": "PeoplePhProperties" + } }, - "display_name": "HBPH_SFH_People", - "type": "PeopleAbridged", "latent_fraction": { "type": "Autocalculate" }, - "activity_schedule": "hbph_sfh_Occupant_Activity", - "identifier": "HBPH_SFH_People_397f2514" + "radiant_fraction": 0.29999999999999999, + "type": "PeopleAbridged", + "people_per_area": 0.056500000000000002, + "activity_schedule": "Seated Adult Activity", + "occupancy_schedule": "Generic Office Occupancy", + "identifier": "Generic Office People" }, - "hvac": "Room_3_4dd4f0c5 Ideal Loads Air System", - "service_hot_water": { - "flow_per_area": 0.23146215804218456, + "infiltration": { + "schedule": "Generic Office Infiltration", + "identifier": "Generic Office Infiltration", + "flow_per_exterior_area": 0.00022660000000000001, + "type": "InfiltrationAbridged" + }, + "setpoint": { + "identifier": "Generic Office Setpoints", + "heating_schedule": "Generic Office Heating", + "type": "SetpointAbridged", + "cooling_schedule": "Generic Office Cooling" + }, + "ventilation": { + "identifier": "Generic Office Ventilation", + "flow_per_person": 0.0023600000000000001, + "type": "VentilationAbridged", + "flow_per_area": 0.00030499999999999999 + }, + "type": "ProgramTypeAbridged", + "identifier": "Generic Office Program", + "lighting": { + "visible_fraction": 0.20000000000000001, "properties": { "revive": { - "type": "ServiceHotWaterReviveProperties", - "id_num": 0 + "id_num": 0, + "type": "LightingReviveProperties", + "labor_fraction": 0.40000000000000002, + "lifetime_years": 25, + "cost": 0.0 }, - "type": "ServiceHotWaterProperties" + "type": "LightingProperties", + "ph": { + "target_lux": 300, + "id_num": 0, + "target_lux_height": 0.80000000000000004, + "type": "LightingPhProperties" + } }, - "type": "ServiceHotWaterAbridged", - "sensible_fraction": 0.20000000000000001, - "schedule": "hbph_sfh_Combined_HotWater", - "target_temperature": 43.299999999999997, - "latent_fraction": 0.050000000000000003, - "identifier": "HBPH_SFH_ServiceHotWater_0d81a5f7" + "radiant_fraction": 0.69999999999999996, + "schedule": "Generic Office Lighting", + "watts_per_area": 10.550000000000001, + "type": "LightingAbridged", + "return_air_fraction": 0.0, + "identifier": "Generic Office Lighting" + } + } + ] + }, + "doe2": { + "type": "ModelDoe2Properties" + }, + "ph": { + "team": { + "user_data": {}, + "customer": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "ca95a913-f1a2-44d9-84b9-eb716c82ee04", + "post_code": null, + "name": null, + "identifier": "ca95a913-f1a2-44d9-84b9-eb716c82ee04", + "email": null, + "city": null + }, + "designer": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "152fd630-1d56-465e-9e37-e4f86f8a0834", + "post_code": null, + "name": null, + "identifier": "152fd630-1d56-465e-9e37-e4f86f8a0834", + "email": null, + "city": null + }, + "display_name": "b631895d-bf30-441f-a814-ab609e3d6053", + "owner": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "8adc4754-855c-49e8-98d4-d0593a266fa8", + "post_code": null, + "name": null, + "identifier": "8adc4754-855c-49e8-98d4-d0593a266fa8", + "email": null, + "city": null + }, + "building": { + "user_data": {}, + "telephone": null, + "street": null, + "license_number": null, + "display_name": "2b37ea2b-890d-453c-be30-35f8b60423e3", + "post_code": null, + "name": null, + "identifier": "2b37ea2b-890d-453c-be30-35f8b60423e3", + "email": null, + "city": null + }, + "identifier": "b631895d-bf30-441f-a814-ab609e3d6053" + }, + "id_num": 0, + "type": "ModelPhPropertiesAbridged", + "bldg_segments": [ + { + "user_data": {}, + "set_points": { + "user_data": {}, + "summer": 24.0, + "display_name": "1eace16e-8bbc-4d0f-8125-19b3b51d1a90", + "winter": 21.0, + "identifier": "1eace16e-8bbc-4d0f-8125-19b3b51d1a90" }, - "process_loads": [ - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 25.416666666666668, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "2975c3da-1eaa-499f-bc42-cc1917a4dda6", - "reference_energy_norm": 1, - "equipment_type": "PhFridgeFreezer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen fridge/freeze combo", - "energy_demand": 1.2200000000000000, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 4 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhFridgeFreezer", - "schedule": "hbph_sfh_Refrigerator", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhFridgeFreezer_a88fc2a0" + "display_name": "_unnamed_bldg_segment_", + "site": { + "user_data": {}, + "location": { + "user_data": {}, + "latitude": 40.600000000000001, + "hours_from_UTC": -4, + "display_name": "New_York", + "climate_zone": 1, + "site_elevation": 0.0, + "identifier": "c9813e5e-73d6-4ec7-8f70-03ab69180d4a", + "longitude": -73.799999999999997 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 368.86201269764467, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "d7ea813e-91b9-40b2-9ec7-31b5b6a3788f", - "reference_energy_norm": 2, - "equipment_type": "PhDishwasher", - "capacity_type": 1, - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen dishwasher", - "energy_demand": 269, - "capacity": 12, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhDishwasher", - "schedule": "hbph_sfh_Dishwasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhDishwasher_43ce1970" + "phpp_library_codes": { + "user_data": {}, + "dataset_name": "US0055b-New York", + "display_name": "US0055b-New York", + "identifier": "557198c1-9ab3-4cc4-a24b-3be698435bab", + "country_code": "US-United States of America", + "region_code": "New York" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 164.21934230153215, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "4ddf6945-bb91-4ceb-8f18-41c614130d2c", - "utilization_factor": 1.0, - "modified_energy_factor": 2.7000000000000002, - "reference_energy_norm": 2, - "equipment_type": "PhClothesWasher", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - washer", - "energy_demand": 120, - "capacity": 0.12740000000000001, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } + "display_name": "_unnamed_", + "climate": { + "user_data": {}, + "monthly_radiation": { + "user_data": {}, + "glob": { + "user_data": {}, + "june": 165.0, + "march": 66.659999999999997, + "display_name": "1f588095-892d-495f-9219-5d42b5efe13a", + "april": 131.66000000000000, + "january": 0.0, + "august": 145.61000000000001, + "november": 42.049999999999997, + "july": 200.0, + "february": 26.660000000000000, + "identifier": "1f588095-892d-495f-9219-5d42b5efe13a", + "september": 104.03000000000000, + "december": 0.0, + "october": 74.319999999999993, + "may": 149.97000000000000 }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesWasher", - "schedule": "hbph_sfh_Clotheswasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhClothesWasher_518c31e2" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 741.66831073273784, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "display_name": "f34ef4c3-e841-4c94-9c8d-7b4929c30df2", + "east": { + "user_data": {}, + "june": 165.0, + "march": 66.659999999999997, + "display_name": "ff597325-c5e6-4c80-934d-b03131a64ae4", + "april": 131.66000000000000, + "january": 0.0, + "august": 145.61000000000001, + "november": 42.049999999999997, + "july": 200.0, + "february": 26.660000000000000, + "identifier": "ff597325-c5e6-4c80-934d-b03131a64ae4", + "september": 104.03000000000000, + "december": 0.0, + "october": 74.319999999999993, + "may": 149.97000000000000 }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "9e0dcfd2-853d-4ac4-83c4-11e40e5f3b1c", - "_dryer_type": { - "value": "5-ELECTRIC EXHAUST AIR DRYER" - }, - "field_utilization_factor_type": 1, - "field_utilization_factor": 1.1799999999999999, - "reference_energy_norm": 2, - "equipment_type": "PhClothesDryer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - dryer", - "energy_demand": 0, - "gas_efficiency_factor": 2.6699999999999999, - "comment": "default", - "gas_consumption": 0, - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 3.9300000000000002, - "reference_quantity": 1 - } + "north": { + "user_data": {}, + "june": 165.0, + "march": 66.659999999999997, + "display_name": "cb87af5b-5555-48e8-9760-9e325097bba8", + "april": 131.66000000000000, + "january": 0.0, + "august": 145.61000000000001, + "november": 42.049999999999997, + "july": 200.0, + "february": 26.660000000000000, + "identifier": "cb87af5b-5555-48e8-9760-9e325097bba8", + "september": 104.03000000000000, + "december": 0.0, + "october": 74.319999999999993, + "may": 149.97000000000000 }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesDryer", - "schedule": "hbph_sfh_Clothesdryer", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhClothesDryer_7eb47af2" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 546.30628661958428, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "west": { + "user_data": {}, + "june": 165.0, + "march": 66.659999999999997, + "display_name": "c70d957c-c5a9-418f-a15e-4402ef3a18b9", + "april": 131.66000000000000, + "january": 0.0, + "august": 145.61000000000001, + "november": 42.049999999999997, + "july": 200.0, + "february": 26.660000000000000, + "identifier": "c70d957c-c5a9-418f-a15e-4402ef3a18b9", + "september": 104.03000000000000, + "december": 0.0, + "october": 74.319999999999993, + "may": 149.97000000000000 }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e0b6fc77-7b72-4e59-a81a-567bc357d3be", - "_cooktop_type": { - "value": "1-ELECTRICITY" - }, - "reference_energy_norm": 1, - "equipment_type": "PhCooktop", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen cooking", - "energy_demand": 0.20000000000000001, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } + "south": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "6c30da4a-2bae-4cd6-a5f0-455dbe0a02e0", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "6c30da4a-2bae-4cd6-a5f0-455dbe0a02e0", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 }, - "type": "ProcessProperties" + "identifier": "f34ef4c3-e841-4c94-9c8d-7b4929c30df2" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhCooktop", - "schedule": "hbph_sfh_Cooktop", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhCooktop_c5e3bc57" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1.2521406321689497, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "display_name": "My_Test_Climate", + "peak_loads": { + "user_data": {}, + "heat_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "test_peak_heat_1", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "fd6720a7-edad-48b9-be4e-6530df2f000e", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "369cabc1-c0cd-4401-af76-9b8787da1100", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingExterior", - "in_conditioned_space": false, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Exterior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } + "heat_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "test_peak_heat_2", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "dce4aa9c-70e7-47ee-9619-9190f90ae3ea", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingExterior", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusLightingExterior_c5968ec5" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1.1415525114155252, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "cooling_load_1": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "test_peak_cooling_1", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "f654068d-222d-4ee7-b7bf-fcf71a9311a7", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "ba46ba6f-1b18-4150-91bf-c1fcda1af0a6", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 2, - "equipment_type": "PhPhiusLightingGarage", - "in_conditioned_space": false, - "energy_demand_per_use": 100, - "display_name": "PHIUS+ Garage Lighting", - "energy_demand": 100, - "comment": "default", - "user_data": {}, - "quantity": 0, - "combined_energy_factor": 0, - "reference_quantity": 2 - } + "display_name": "00496442-b849-420b-bfad-a12058be98b2", + "cooling_load_2": { + "user_data": {}, + "ground_temp": null, + "rad_south": 0.0, + "display_name": "test_peak_cooling_2", + "dewpoint": null, + "sky_temp": null, + "temp": 0.0, + "identifier": "20dcb7e2-fbad-4fc7-a0c8-e272a61272f0", + "rad_west": 0.0, + "rad_east": 0.0, + "rad_global": 0.0, + "rad_north": 0.0 }, - "type": "ProcessProperties" + "identifier": "00496442-b849-420b-bfad-a12058be98b2" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingGarage", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusLightingGarage_8ab05006" - }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 872.67161937496485, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 + "average_wind_speed": 4.0, + "summer_daily_temperature_swing": 10.0, + "ground": { + "user_data": {}, + "ground_density": 2000, + "depth_groundwater": 3, + "ground_heat_capacity": 1000, + "display_name": "95517474-07d6-4c14-9651-52767bcb3d64", + "identifier": "95517474-07d6-4c14-9651-52767bcb3d64", + "flow_rate_groundwater": 0.050000000000000003, + "ground_thermal_conductivity": 2 + }, + "identifier": "d32f3366-cfe3-41c3-a5f3-9f2521d848f1", + "station_elevation": 0.0, + "monthly_temps": { + "user_data": {}, + "sky_temps": { + "user_data": {}, + "june": 20.620000000000001, + "march": 8.3300000000000001, + "display_name": "e05078fb-bd86-432f-99a3-1c0f869ab43e", + "april": 16.460000000000001, + "january": 0.0, + "august": 13.210000000000001, + "november": 5.0599999999999996, + "july": 17.699999999999999, + "february": 3.3300000000000001, + "identifier": "e05078fb-bd86-432f-99a3-1c0f869ab43e", + "september": 9.7799999999999994, + "december": 3.6200000000000001, + "october": 6.4800000000000004, + "may": 17.920000000000002 }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e2405726-8b38-4897-83ce-406cb79357bd", - "reference_energy_norm": 1, - "equipment_type": "PhPhiusMEL", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ MELS", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 3 - } + "dewpoints": { + "user_data": {}, + "june": 6.9500000000000002, + "march": 6.6699999999999999, + "display_name": "8dffe9ab-107d-4b16-8917-605072fa7c0d", + "april": 7.9600000000000000, + "january": 0.0, + "august": 4.1399999999999997, + "november": 1.6200000000000001, + "july": 4.9500000000000002, + "february": 2.6699999999999999, + "identifier": "8dffe9ab-107d-4b16-8917-605072fa7c0d", + "september": 1.0500000000000000, + "december": 4.2800000000000002, + "october": 1.5400000000000000, + "may": 5.1299999999999999 + }, + "display_name": "1c4a9e7b-f53f-4664-b5f7-946f3e022a1c", + "ground_temps": { + "user_data": {}, + "june": 0.0, + "march": 0.0, + "display_name": "8bee2ca7-6ebb-4aa8-ac78-fd2a74b13071", + "april": 0.0, + "january": 0.0, + "august": 0.0, + "november": 0.0, + "july": 0.0, + "february": 0.0, + "identifier": "8bee2ca7-6ebb-4aa8-ac78-fd2a74b13071", + "september": 0.0, + "december": 0.0, + "october": 0.0, + "may": 0.0 }, - "type": "ProcessProperties" + "identifier": "1c4a9e7b-f53f-4664-b5f7-946f3e022a1c", + "air_temps": { + "user_data": {}, + "june": 24.75, + "march": 10.0, + "display_name": "d4078380-8c01-4569-915f-0ad22dbe7590", + "april": 19.75, + "january": 0.0, + "august": 15.850000000000000, + "november": 6.0700000000000003, + "july": 21.230000000000000, + "february": 4.0, + "identifier": "d4078380-8c01-4569-915f-0ad22dbe7590", + "september": 11.740000000000000, + "december": 4.3399999999999999, + "october": 7.7800000000000002, + "may": 21.5 + } + } + }, + "identifier": "0c0c9c74-2d3d-4bc8-a589-934e9084c996" + }, + "co2e_factors": { + "factors": [ + { + "fuel_name": "HARD_COAL_CGS_0_CHP", + "units": "g/kWh", + "value": 409.99660000000000 + }, + { + "fuel_name": "WOOD", + "units": "g/kWh", + "value": 53.428899999999999 + }, + { + "fuel_name": "OIL", + "units": "g/kWh", + "value": 309.99660000000000 + }, + { + "fuel_name": "HARD_COAL_CGS_35_CHP", + "units": "g/kWh", + "value": 319.99320000000000 + }, + { + "fuel_name": "ELECTRICITY_PV", + "units": "g/kWh", + "value": 250.01710000000000 + }, + { + "fuel_name": "GAS_CGS_35_CHP", + "units": "g/kWh", + "value": 129.98980000000000 + }, + { + "fuel_name": "OIL_CGS_70_CHP", + "units": "g/kWh", + "value": 100.0 + }, + { + "fuel_name": "HARD_COAL", + "units": "g/kWh", + "value": 439.98640000000000 + }, + { + "fuel_name": "OIL_CGS_35_CHP", + "units": "g/kWh", + "value": 250.01710000000000 + }, + { + "fuel_name": "GAS_CGS_0_CHP", + "units": "g/kWh", + "value": 319.99320000000000 + }, + { + "fuel_name": "OIL_CGS_0_CHP", + "units": "g/kWh", + "value": 409.99660000000000 + }, + { + "fuel_name": "ELECTRICITY_MIX", + "units": "g/kWh", + "value": 680.00680000000000 + }, + { + "fuel_name": "GAS_CGS_70_CHP", + "units": "g/kWh", + "value": -70.010199999999998 + }, + { + "fuel_name": "NATURAL_GAS", + "units": "g/kWh", + "value": 250.01710000000000 + }, + { + "fuel_name": "LPG", + "units": "g/kWh", + "value": 270.01020000000000 }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusMEL", - "schedule": "hbph_sfh_MEL", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_PhPhiusMEL_24acba88" + { + "fuel_name": "HARD_COAL_CGS_70_CHP", + "units": "g/kWh", + "value": 239.98640000000000 + } + ] + }, + "phius_certification": { + "PHIUS2021_cooling_load": 10.0, + "localization_selection_type": 2, + "int_gains_evap_per_person": 15, + "int_gains_toilet_room_util_pat": null, + "user_data": {}, + "display_name": "c493c3cf-26ec-4908-8e29-0f51b7e1f7b2", + "int_gains_dhw_marginal_perf_ratio": null, + "int_gains_flush_heat_loss": true, + "int_gains_use_school_defaults": false, + "certification_program": { + "value": "7-PHIUS 2021 CORE" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 737.72402539528935, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "d7ea813e-91b9-40b2-9ec7-31b5b6a3788f", - "reference_energy_norm": 2, - "equipment_type": "PhDishwasher", - "capacity_type": 1, - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen dishwasher", - "energy_demand": 269, - "capacity": 12, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhDishwasher", - "schedule": "hbph_sfh_Dishwasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_00c4bbf8" + "building_use_type": { + "value": "1-RESIDENTIAL" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 328.43868460306430, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "4ddf6945-bb91-4ceb-8f18-41c614130d2c", - "utilization_factor": 1.0, - "modified_energy_factor": 2.7000000000000002, - "reference_energy_norm": 2, - "equipment_type": "PhClothesWasher", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - washer", - "energy_demand": 120, - "capacity": 0.12740000000000001, - "_water_connection": { - "value": "2-COLD WATER CONNECTION" - }, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" - }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesWasher", - "schedule": "hbph_sfh_Clotheswasher", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_fc5907d2" + "building_category_type": { + "value": "1-RESIDENTIAL BUILDING" }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1112.5024660991069, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "9e0dcfd2-853d-4ac4-83c4-11e40e5f3b1c", - "_dryer_type": { - "value": "5-ELECTRIC EXHAUST AIR DRYER" - }, - "field_utilization_factor_type": 1, - "field_utilization_factor": 1.1799999999999999, - "reference_energy_norm": 2, - "equipment_type": "PhClothesDryer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Laundry - dryer", - "energy_demand": 0, - "gas_efficiency_factor": 2.6699999999999999, - "comment": "default", - "gas_consumption": 0, - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 3.9300000000000002, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" + "icfa_override": null, + "identifier": "c493c3cf-26ec-4908-8e29-0f51b7e1f7b2", + "int_gains_num_toilets": 1, + "building_status": { + "value": "1-IN_PLANNING" + }, + "PHIUS2021_heating_demand": 15.0, + "building_type": { + "value": "1-NEW_CONSTRUCTION" + }, + "PHIUS2021_cooling_demand": 15.0, + "PHIUS2021_heating_load": 10.0 + }, + "phi_certification": { + "user_data": {}, + "display_name": "b7b96ddd-6560-41e6-ac9b-60a07199b9fe", + "phpp_version": 9, + "attributes": { + "occupancy_type": "1-STANDARD (ONLY FOR RESIDENTIAL BUILDINGS)", + "retrofit_type": "1-NEW BUILDING", + "certification_class": "1-CLASSIC", + "phpp_version": 9, + "ihg_type": "2-STANDARD", + "building_use_type": "10-DWELLING", + "certification_type": "1-PASSIVE HOUSE", + "enerphit_type": "2-ENERGY DEMAND METHOD", + "tfa_override": null, + "building_category_type": "1-RESIDENTIAL BUILDING", + "primary_energy_type": "1-PE (NON-RENEWABLE)" + }, + "identifier": "b7b96ddd-6560-41e6-ac9b-60a07199b9fe" + }, + "non_combustible_materials": false, + "thermal_bridges": { + "203f6f8a-1760-445d-a67e-60f2172d25fb": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhClothesDryer", - "schedule": "hbph_sfh_Clothesdryer", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_35ce6ba9" + "display_name": "_unnamed_bldg_segment__094e697b", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 0.0, + -5.5, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ] + ] + }, + "identifier": "203f6f8a-1760-445d-a67e-60f2172d25fb", + "quantity": 1.0 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 50.833333333333336, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "2975c3da-1eaa-499f-bc42-cc1917a4dda6", - "reference_energy_norm": 1, - "equipment_type": "PhFridgeFreezer", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen fridge/freeze combo", - "energy_demand": 1.2200000000000000, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 4 - } - }, - "type": "ProcessProperties" + "6d8d4567-8a08-4fb0-9e2a-3d4776d8ae11": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" + }, + "display_name": "_unnamed_bldg_segment__237a1f90", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 4.6523906598326512, + -10.788219090421832, + -5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + -5.5 + ] + ] }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhFridgeFreezer", - "schedule": "hbph_sfh_Refrigerator", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_f989c561" + "identifier": "6d8d4567-8a08-4fb0-9e2a-3d4776d8ae11", + "quantity": 1.0 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 819.45942992937648, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e0b6fc77-7b72-4e59-a81a-567bc357d3be", - "_cooktop_type": { - "value": "1-ELECTRICITY" - }, - "reference_energy_norm": 1, - "equipment_type": "PhCooktop", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "Kitchen cooking", - "energy_demand": 0.20000000000000001, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 1 - } - }, - "type": "ProcessProperties" + "dbf34fde-2377-4d1f-941f-b3c7cbfd9589": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhCooktop", - "schedule": "hbph_sfh_Cooktop", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_cc07fdc5" + "display_name": "_unnamed_bldg_segment__e144cbcf", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 3.7608994304649785, + -10.631025133619353, + 0.9052439185626735 + ], + [ + 0.12743924763317918, + -9.9903480700561964, + 0.9052439185626735 + ], + [ + 0.12743924763317918, + -9.9903480700561964, + 4.5947560814373274 + ], + [ + 3.7608994304649785, + -10.631025133619353, + 4.5947560814373274 + ], + [ + 3.7608994304649785, + -10.631025133619353, + 0.9052439185626735 + ] + ] + }, + "identifier": "dbf34fde-2377-4d1f-941f-b3c7cbfd9589", + "quantity": 1.0 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 1637.0480430554567, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "e2405726-8b38-4897-83ce-406cb79357bd", - "reference_energy_norm": 1, - "equipment_type": "PhPhiusMEL", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ MELS", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 3 - } - }, - "type": "ProcessProperties" + "ad35f0bb-6bd1-4449-91ed-3ce6a0a02226": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusMEL", - "schedule": "hbph_sfh_MEL", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_9fce84e5" + "display_name": "_unnamed_bldg_segment__75864c9b", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 4.5113301595281179, + -6.9497746774215505, + 5.5 + ], + [ + 3.9710638220646373, + -10.013777334829634, + 5.5 + ], + [ + 0.14106050030453293, + -9.3384444130002837, + 5.5 + ], + [ + 0.6813268377680135, + -6.2744417555921990, + 5.5 + ], + [ + 4.5113301595281179, + -6.9497746774215505, + 5.5 + ] + ] + }, + "identifier": "ad35f0bb-6bd1-4449-91ed-3ce6a0a02226", + "quantity": 1.0 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 572.18674727811469, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "714e456e-92e1-4116-aabe-bbce1373d029", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingInterior", - "in_conditioned_space": true, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Interior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } - }, - "type": "ProcessProperties" + "ede4e576-e5cc-43c9-9368-4bb5ca493397": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingInterior", - "schedule": "hbph_sfh_Lighting", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_22e21a1f" + "display_name": "_unnamed_bldg_segment__c5bdffc0", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ], + [ + 0.0, + -5.5, + -5.5 + ], + [ + 0.0, + -5.5, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + -5.5 + ] + ] + }, + "identifier": "ede4e576-e5cc-43c9-9368-4bb5ca493397", + "quantity": 1.0 }, - { - "radiant_fraction": 0.0, - "lost_fraction": 0.0, - "watts": 2.5288564022831053, - "properties": { - "revive": { - "id_num": 0, - "cost": 0.0, - "labor_fraction": 0.40000000000000002, - "type": "ProcessReviveProperties", - "lifetime_years": 25 - }, - "ph": { - "type": "ProcessPhProperties", - "equipment": { - "identifier": "369cabc1-c0cd-4401-af76-9b8787da1100", - "frac_high_efficiency": 1.0, - "reference_energy_norm": 1, - "equipment_type": "PhPhiusLightingExterior", - "in_conditioned_space": false, - "energy_demand_per_use": 0, - "display_name": "PHIUS+ Exterior Lighting", - "energy_demand": 0, - "comment": "default", - "user_data": {}, - "quantity": 1, - "combined_energy_factor": 0, - "reference_quantity": 6 - } - }, - "type": "ProcessProperties" + "4352743e-4955-4b03-912f-5e92f86554be": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" + }, + "display_name": "_unnamed_bldg_segment__36e05cea", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + 5.4164426415671443, + -6.4550649771681172, + 0.0 + ], + [ + 0.0, + -5.5, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ] + ] }, - "end_use_category": "HBPH_Process", - "type": "ProcessAbridged", - "display_name": "PhPhiusLightingExterior", - "schedule": "Always On", - "latent_fraction": 0.0, - "fuel_type": "Electricity", - "identifier": "HBPH_Process_a295cd78" + "identifier": "4352743e-4955-4b03-912f-5e92f86554be", + "quantity": 1.0 + }, + "6e3e9d68-6662-4285-95eb-290dbb3ef5b4": { + "user_data": {}, + "psi_value": 0.01, + "_group_type": { + "value": "15-AMBIENT" + }, + "display_name": "_unnamed_bldg_segment__4e7e752e", + "id_num": 0, + "fRsi_value": 0.75, + "geometry": { + "type": "Polyline3D", + "vertices": [ + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 0.0 + ], + [ + -0.76405198173449351, + -9.8331541132537161, + 5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 5.5 + ], + [ + 4.6523906598326512, + -10.788219090421832, + 0.0 + ] + ] + }, + "identifier": "6e3e9d68-6662-4285-95eb-290dbb3ef5b4", + "quantity": 1.0 } - ], - "ventilation": { - "type": "VentilationAbridged", - "air_changes_per_hour": 0.40000000000000002, - "identifier": "HBPH_SFH_Ventilation_a7ddc97f" - }, - "type": "RoomEnergyPropertiesAbridged", - "setpoint": { - "identifier": "HBPH_SFH_Setpoint_91a54ab3", - "humidifying_schedule": "HumidNoLimit", - "type": "SetpointAbridged", - "heating_schedule": "hbph_sfh_Heating_Setpoint", - "dehumidifying_schedule": "HBPH_SFH_Setpoint_91a54ab3_DeHumidSetp", - "cooling_schedule": "hbph_sfh_Cooling_Setpoint" }, - "program_type": "Generic Office Program", - "infiltration": { - "display_name": "HBPH_SFH_Infiltration", - "type": "InfiltrationAbridged", - "flow_per_exterior_area": 2.8846153846153845e-05, - "schedule": "Always On", - "identifier": "Room_3_4dd4f0c5_infiltration" + "mech_room_temp": 20.0, + "num_floor_levels": 1, + "name": "_unnamed_bldg_segment_", + "num_dwelling_units": 1, + "identifier": "4d4a70c3-d7bb-4822-9d05-76690826f3cf", + "summer_hrv_bypass_mode": { + "value": "2-TEMPERATURE CONTROLLED" }, - "electric_equipment": { - "radiant_fraction": 0.5, - "lost_fraction": 0.0, - "properties": { - "revive": { - "type": "ElectricEquipmentReviveProperties", - "id_num": 0 + "source_energy_factors": { + "factors": [ + { + "fuel_name": "HARD_COAL_CGS_0_CHP", + "units": "kWh/kWh", + "value": 1.5 }, - "ph": { - "type": "ElectricEquipmentPhProperties", - "equipment_collection": { - "equipment_set": {} - } + { + "fuel_name": "WOOD", + "units": "kWh/kWh", + "value": 0.20000000000000001 }, - "type": "ElectricEquipmentProperties" - }, - "display_name": "HBPH_SFH_ElectricEquipment", - "type": "ElectricEquipmentAbridged", - "watts_per_area": 0.0, - "schedule": "Always On", - "latent_fraction": 0.0, - "identifier": "HBPH_SFH_Equipment_cd4b9438" + { + "fuel_name": "OIL", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "HARD_COAL_CGS_35_CHP", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "ELECTRICITY_PV", + "units": "kWh/kWh", + "value": 0.69999999999999996 + }, + { + "fuel_name": "GAS_CGS_35_CHP", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "OIL_CGS_70_CHP", + "units": "kWh/kWh", + "value": 0.80000000000000004 + }, + { + "fuel_name": "HARD_COAL", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "OIL_CGS_35_CHP", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "GAS_CGS_0_CHP", + "units": "kWh/kWh", + "value": 1.5 + }, + { + "fuel_name": "OIL_CGS_0_CHP", + "units": "kWh/kWh", + "value": 1.5 + }, + { + "fuel_name": "ELECTRICITY_MIX", + "units": "kWh/kWh", + "value": 2.0 + }, + { + "fuel_name": "GAS_CGS_70_CHP", + "units": "kWh/kWh", + "value": 0.69999999999999996 + }, + { + "fuel_name": "NATURAL_GAS", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "LPG", + "units": "kWh/kWh", + "value": 1.1000000000000001 + }, + { + "fuel_name": "HARD_COAL_CGS_70_CHP", + "units": "kWh/kWh", + "value": 0.80000000000000004 + } + ] }, - "construction_set": "ConstructionSet_1bf1f18e" - }, - "type": "RoomPropertiesAbridged", - "revive": { - "type": "RoomRevivePropertiesAbridged" + "wind_exposure_type": { + "value": "1-SEVERAL_SIDES_EXPOSED_NO_SCREENING" + } } - }, - "display_name": "Room_3", - "type": "Room", - "identifier": "Room_3_4dd4f0c5" - } - ], + ] + }, + "ph_hvac": { + "type": "ModelPhHvacProperties" + }, + "type": "ModelProperties" + }, "orphaned_shades": [ { - "is_detached": true, + "display_name": "Shade_c032b2a1", "properties": { - "ph": { - "type": "ShadePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "ShadePhHvacPropertiesAbridged" + "revive": { + "id_num": 0, + "type": "ShadeRevivePropertiesAbridged" }, "radiance": { "type": "ShadeRadiancePropertiesAbridged" @@ -11459,16 +11453,35 @@ "energy": { "type": "ShadeEnergyPropertiesAbridged" }, - "type": "ShadePropertiesAbridged", - "revive": { - "type": "ShadeRevivePropertiesAbridged", - "id_num": 0 - } + "ph": { + "id_num": 0, + "type": "ShadePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "ShadePhHvacPropertiesAbridged" + }, + "type": "ShadePropertiesAbridged" }, - "display_name": "Shade_caf5f86f", "type": "Shade", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 5.4164426415671443, + -6.4550649771681172, + 3.3000000000000003 + ] + }, "boundary": [ [ 0.19101299543362338, @@ -11491,36 +11504,17 @@ 3.3000000000000003 ] ], - "plane": { - "o": [ - 5.4164426415671443, - -6.4550649771681172, - 3.3000000000000003 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Shade_caf5f86f" + "identifier": "Shade_c032b2a1", + "is_detached": true }, { - "is_detached": true, + "display_name": "Shade_290d0969", "properties": { - "ph": { - "type": "ShadePhPropertiesAbridged", - "id_num": 0 - }, - "ph_hvac": { - "type": "ShadePhHvacPropertiesAbridged" + "revive": { + "id_num": 0, + "type": "ShadeRevivePropertiesAbridged" }, "radiance": { "type": "ShadeRadiancePropertiesAbridged" @@ -11528,16 +11522,35 @@ "energy": { "type": "ShadeEnergyPropertiesAbridged" }, - "type": "ShadePropertiesAbridged", - "revive": { - "type": "ShadeRevivePropertiesAbridged", - "id_num": 0 - } + "ph": { + "id_num": 0, + "type": "ShadePhPropertiesAbridged" + }, + "ph_hvac": { + "type": "ShadePhHvacPropertiesAbridged" + }, + "type": "ShadePropertiesAbridged" }, - "display_name": "Shade_6e122ae8", "type": "Shade", "geometry": { - "type": "Face3D", + "plane": { + "type": "Plane", + "n": [ + 0.0, + 0.0, + 1.0 + ], + "x": [ + 1.0, + 0.0, + 0.0 + ], + "o": [ + 12.999462339761147, + -7.7921559452034819, + 3.3000000000000003 + ] + }, "boundary": [ [ 5.6074556370007675, @@ -11560,28 +11573,15 @@ 3.3000000000000003 ] ], - "plane": { - "o": [ - 12.999462339761147, - -7.7921559452034819, - 3.3000000000000003 - ], - "x": [ - 1.0, - 0.0, - 0.0 - ], - "n": [ - 0.0, - 0.0, - 1.0 - ], - "type": "Plane" - } + "type": "Face3D" }, - "identifier": "Shade_6e122ae8" + "identifier": "Shade_290d0969", + "is_detached": true } ], + "units": "Meters", + "type": "Model", "tolerance": 0.001, - "identifier": "unnamed_08d1e663" + "identifier": "unnamed_f2a3c511", + "version": "1.59.0" } \ No newline at end of file diff --git a/tests/_test_reference_files_xml/Default_Model_Single_Zone.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/Default_Model_Single_Zone.xml similarity index 99% rename from tests/_test_reference_files_xml/Default_Model_Single_Zone.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/Default_Model_Single_Zone.xml index 97d362e..c61cf46 100644 --- a/tests/_test_reference_files_xml/Default_Model_Single_Zone.xml +++ b/tests/_test_reference_files_hbjson/_test_reference_files_xml/Default_Model_Single_Zone.xml @@ -10,10 +10,10 @@ false 2025 - 10 - 13 - 12 - 17 + 11 + 14 + 15 + 26 diff --git a/tests/_test_reference_files_xml/Multi_Room_Complete.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/Multi_Room_Complete.xml similarity index 99% rename from tests/_test_reference_files_xml/Multi_Room_Complete.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/Multi_Room_Complete.xml index 066e337..d6f0761 100644 --- a/tests/_test_reference_files_xml/Multi_Room_Complete.xml +++ b/tests/_test_reference_files_hbjson/_test_reference_files_xml/Multi_Room_Complete.xml @@ -10,10 +10,10 @@ false 2025 - 10 - 13 - 12 - 17 + 11 + 14 + 15 + 26 @@ -595,7 +595,7 @@ 20 - Room_4_b3f5e5da..Face5_Glz0 + Room_4_6b80c479..Face5_Glz0 true 2 4 @@ -687,7 +687,7 @@ 44 - PhWindowConstruction_78cc838a + PhWindowConstruction_87009c53 true 2 4 @@ -711,7 +711,7 @@ 45 - Shade_caf5f86f + Shade_c032b2a1 true 1 1 @@ -727,7 +727,7 @@ 46 - Shade_6e122ae8 + Shade_290d0969 true 1 1 @@ -967,51 +967,51 @@ - _unnamed_bldg_segment__10009fc5 + _unnamed_bldg_segment__094e697b -15 - 22.0 + 19.8 0.01 -1 - _unnamed_bldg_segment__387c71f1 + _unnamed_bldg_segment__237a1f90 -15 22.0 0.01 -1 - _unnamed_bldg_segment__5ab223ce + _unnamed_bldg_segment__36e05cea -15 - 19.8 + 19.799999999999997 0.01 -1 - _unnamed_bldg_segment__638e3e9d + _unnamed_bldg_segment__4e7e752e -15 - 19.8 + 22.0 0.01 -1 - _unnamed_bldg_segment__6fb77911 + _unnamed_bldg_segment__75864c9b -15 - 14.758048651498616 + 14.000714267493642 0.01 -1 - _unnamed_bldg_segment__83859341 + _unnamed_bldg_segment__c5bdffc0 -15 - 14.000714267493642 + 19.8 0.01 -1 - _unnamed_bldg_segment__f4606ddf + _unnamed_bldg_segment__e144cbcf -15 - 19.799999999999997 + 14.758048651498616 0.01 -1 @@ -1279,7 +1279,7 @@ - 236b6b0c-ce11-4b75-8a08-11866aa9df41 + 3a3e8231-f071-41a4-82f3-fc1da3023f4e 1 5 5 @@ -2068,7 +2068,7 @@ 1 - PhWindowConstruction_78cc838a + PhWindowConstruction_87009c53 true true 0.7242364315535045 diff --git a/tests/_test_reference_files_xml/School.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/School.xml similarity index 100% rename from tests/_test_reference_files_xml/School.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/School.xml diff --git a/tests/_test_reference_files_xml/_arverne_d_no_win.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/_arverne_d_no_win.xml similarity index 100% rename from tests/_test_reference_files_xml/_arverne_d_no_win.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/_arverne_d_no_win.xml diff --git a/tests/_test_reference_files_xml/_la_mora.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/_la_mora.xml similarity index 100% rename from tests/_test_reference_files_xml/_la_mora.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/_la_mora.xml diff --git a/tests/_test_reference_files_xml/_ridgeway.xml b/tests/_test_reference_files_hbjson/_test_reference_files_xml/_ridgeway.xml similarity index 100% rename from tests/_test_reference_files_xml/_ridgeway.xml rename to tests/_test_reference_files_hbjson/_test_reference_files_xml/_ridgeway.xml diff --git a/tests/test_from_HBJSON/test_create_assemblies/test_create_window_type.py b/tests/test_from_HBJSON/test_create_assemblies/test_create_window_type.py index 55d0d3f..fdd779a 100644 --- a/tests/test_from_HBJSON/test_create_assemblies/test_create_window_type.py +++ b/tests/test_from_HBJSON/test_create_assemblies/test_create_window_type.py @@ -1,7 +1,5 @@ from honeybee_energy.construction.window import WindowConstruction -from honeybee_energy.construction.windowshade import WindowConstructionShade from honeybee_energy.material.glazing import EnergyWindowMaterialSimpleGlazSys -from honeybee_energy.material.shade import EnergyWindowMaterialShade from honeybee_energy_ph.construction.window import PhWindowFrame, PhWindowFrameElement, PhWindowGlazing from PHX.from_HBJSON.create_assemblies import build_phx_window_type_from_HB_WindowConstruction diff --git a/tests/test_from_HBJSON/test_read_HBJSON_file/test_convert_hbjson_dict_to_hb_model.py b/tests/test_from_HBJSON/test_read_HBJSON_file/test_convert_hbjson_dict_to_hb_model.py index e0b4c13..d2c087c 100644 --- a/tests/test_from_HBJSON/test_read_HBJSON_file/test_convert_hbjson_dict_to_hb_model.py +++ b/tests/test_from_HBJSON/test_read_HBJSON_file/test_convert_hbjson_dict_to_hb_model.py @@ -1,7 +1,6 @@ from pathlib import Path import pytest -from honeybee import model from PHX.from_HBJSON import read_HBJSON_file diff --git a/tests/test_model/test_geometry/test_Graphics3D.py b/tests/test_model/test_geometry/test_Graphics3D.py index 2fe4dfd..ff1f259 100644 --- a/tests/test_model/test_geometry/test_Graphics3D.py +++ b/tests/test_model/test_geometry/test_Graphics3D.py @@ -1,5 +1,3 @@ -from re import L - from PHX.model import geometry diff --git a/tests/test_model/test_hvac/test_base.py b/tests/test_model/test_hvac/test_base.py index 87bcdff..e3c83c7 100644 --- a/tests/test_model/test_hvac/test_base.py +++ b/tests/test_model/test_hvac/test_base.py @@ -1,4 +1,3 @@ -from PHX.model.enums import hvac from PHX.model.hvac import _base diff --git a/tests/test_model/test_hvac/test_collection.py b/tests/test_model/test_hvac/test_collection.py index e7e1f2a..7c89340 100644 --- a/tests/test_model/test_hvac/test_collection.py +++ b/tests/test_model/test_hvac/test_collection.py @@ -3,7 +3,7 @@ import pytest from PHX.model.enums.hvac import PhxSupportiveDeviceType -from PHX.model.hvac import collection, cooling_params, heating, supportive_devices, ventilation, water +from PHX.model.hvac import collection, supportive_devices, ventilation def test_default_PhxMechanicalEquipmentCollection(reset_class_counters): diff --git a/tests/test_model/test_hvac/test_cooling_params.py b/tests/test_model/test_hvac/test_cooling_params.py index 5b49134..4a6c345 100644 --- a/tests/test_model/test_hvac/test_cooling_params.py +++ b/tests/test_model/test_hvac/test_cooling_params.py @@ -1,4 +1,3 @@ -from PHX.model.enums import hvac from PHX.model.hvac import cooling_params # -- Ventilation Cooling ------------------------------------------------------ diff --git a/tests/test_model/test_hvac/test_piping_elements.py b/tests/test_model/test_hvac/test_piping_elements.py index a7fbff1..0fcc259 100644 --- a/tests/test_model/test_hvac/test_piping_elements.py +++ b/tests/test_model/test_hvac/test_piping_elements.py @@ -2,12 +2,7 @@ from ladybug_geometry.geometry3d.pointvector import Point3D from ladybug_geometry.geometry3d.polyline import LineSegment3D -from PHX.model.hvac.piping import ( - PhxHotWaterPipingInchDiameterType, - PhxHotWaterPipingMaterial, - PhxPipeElement, - PhxPipeSegment, -) +from PHX.model.hvac.piping import PhxHotWaterPipingMaterial, PhxPipeElement, PhxPipeSegment def test_empty_PhxPipeElement(): diff --git a/tests/test_model/test_hvac/test_piping_segments.py b/tests/test_model/test_hvac/test_piping_segments.py index 6a8ac06..0397754 100644 --- a/tests/test_model/test_hvac/test_piping_segments.py +++ b/tests/test_model/test_hvac/test_piping_segments.py @@ -3,7 +3,8 @@ from ladybug_geometry.geometry3d.polyline import LineSegment3D from ph_units.converter import convert -from PHX.model.hvac.piping import PhxHotWaterPipingInchDiameterType, PhxHotWaterPipingMaterial, PhxPipeSegment +from PHX.model.enums.hvac import PhxHotWaterPipingInchDiameterType +from PHX.model.hvac.piping import PhxHotWaterPipingMaterial, PhxPipeSegment def test_PhxPipeSegment_to_wufi_diameter_type(): diff --git a/tests/test_model/test_hvac/test_renewable_equip.py b/tests/test_model/test_hvac/test_renewable_equip.py index d9ff9fe..e3e647c 100644 --- a/tests/test_model/test_hvac/test_renewable_equip.py +++ b/tests/test_model/test_hvac/test_renewable_equip.py @@ -1,6 +1,3 @@ -import pytest - -from PHX.model.enums.hvac import DeviceType, SystemType from PHX.model.hvac import PhxDevicePhotovoltaic, PhxDevicePhotovoltaicParams diff --git a/tests/test_to_WUFI_xml/test_construction/test_PhxConstructionOpaque.py b/tests/test_to_WUFI_xml/test_construction/test_PhxConstructionOpaque.py index 64801cd..cc02b34 100644 --- a/tests/test_to_WUFI_xml/test_construction/test_PhxConstructionOpaque.py +++ b/tests/test_to_WUFI_xml/test_construction/test_PhxConstructionOpaque.py @@ -1,4 +1,4 @@ -from PHX.model.constructions import PhxConstructionOpaque, PhxLayer, PhxLayerDivisionGrid, PhxMaterial +from PHX.model.constructions import PhxConstructionOpaque, PhxLayer, PhxMaterial from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Columns.py b/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Columns.py index 487373d..6b6abd7 100644 --- a/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Columns.py +++ b/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Columns.py @@ -1,4 +1,4 @@ -from PHX.model.constructions import PhxLayer, PhxLayerDivisionGrid, PhxMaterial +from PHX.model.constructions import PhxLayer, PhxMaterial from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Rows.py b/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Rows.py index bf13630..e4ca0b7 100644 --- a/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Rows.py +++ b/tests/test_to_WUFI_xml/test_construction/test_PhxLayer_with_Rows.py @@ -1,4 +1,4 @@ -from PHX.model.constructions import PhxLayer, PhxLayerDivisionGrid, PhxMaterial +from PHX.model.constructions import PhxLayer, PhxMaterial from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_geometry/test_PhxLineSegment.py b/tests/test_to_WUFI_xml/test_geometry/test_PhxLineSegment.py index b4e933b..5fc0c65 100644 --- a/tests/test_to_WUFI_xml/test_geometry/test_PhxLineSegment.py +++ b/tests/test_to_WUFI_xml/test_geometry/test_PhxLineSegment.py @@ -1,5 +1,3 @@ -import pytest - from PHX.model import geometry diff --git a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingDehumidification.py b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingDehumidification.py index 2fdfaec..870ab4c 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingDehumidification.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingDehumidification.py @@ -1,6 +1,4 @@ -from PHX.model.hvac import collection, cooling_params -from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object -from tests.test_to_WUFI_xml._utils import xml_string_to_list +from PHX.model.hvac import cooling_params def test_default_PhxCoolingDehumidification(reset_class_counters): diff --git a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingPanel.py b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingPanel.py index f9fae89..8f71b21 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingPanel.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingPanel.py @@ -1,6 +1,4 @@ -from PHX.model.hvac import _base, collection, cooling_params -from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object -from tests.test_to_WUFI_xml._utils import xml_string_to_list +from PHX.model.hvac import cooling_params def test_default_PhxCoolingPanel(reset_class_counters): diff --git a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingRecirculation.py b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingRecirculation.py index 057e115..938d15b 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingRecirculation.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingRecirculation.py @@ -1,6 +1,4 @@ -from PHX.model.hvac import _base, collection, cooling_params -from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object -from tests.test_to_WUFI_xml._utils import xml_string_to_list +from PHX.model.hvac import cooling_params def test_default_PhxCoolingRecirculation(reset_class_counters): diff --git a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingVentilation.py b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingVentilation.py index 9b3bdf3..56667c0 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingVentilation.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_cooling/test_PhxCoolingVentilation.py @@ -1,6 +1,4 @@ -from PHX.model.hvac import _base, collection, cooling_params -from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object -from tests.test_to_WUFI_xml._utils import xml_string_to_list +from PHX.model.hvac import cooling_params def test_default_PhxCoolingVentilation(reset_class_counters): diff --git a/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDHW.py b/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDHW.py index 9c2f149..6837d75 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDHW.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDHW.py @@ -2,15 +2,7 @@ from ladybug_geometry.geometry3d.polyline import LineSegment3D from PHX.model.hvac.collection import PhxMechanicalSystemCollection -from PHX.model.hvac.piping import ( - PhxHotWaterPipingInchDiameterType, - PhxHotWaterPipingMaterial, - PhxPipeBranch, - PhxPipeElement, - PhxPipeSegment, - PhxPipeTrunk, -) -from PHX.to_WUFI_XML import xml_schemas +from PHX.model.hvac.piping import PhxHotWaterPipingMaterial, PhxPipeBranch, PhxPipeElement, PhxPipeSegment, PhxPipeTrunk from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDucting.py b/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDucting.py index ca0d283..1fd01eb 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDucting.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_distribution/test_DistributionDucting.py @@ -2,7 +2,6 @@ from ladybug_geometry.geometry3d.polyline import LineSegment3D from PHX.model.hvac.ducting import PhxDuctElement, PhxDuctSegment -from PHX.to_WUFI_XML import xml_schemas from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpAnnual.py b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpAnnual.py index 59b1deb..fd496a7 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpAnnual.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpAnnual.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heat_pumps +from PHX.model.hvac import collection, heat_pumps from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpCombined.py b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpCombined.py index 962cc3a..155a6b8 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpCombined.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpCombined.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heat_pumps +from PHX.model.hvac import collection, heat_pumps from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpHotWater.py b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpHotWater.py index 78082dd..ac3c2de 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpHotWater.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpHotWater.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heat_pumps +from PHX.model.hvac import collection, heat_pumps from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpMonthly.py b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpMonthly.py index b48bf5c..83b0f8e 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpMonthly.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heat_pumps/test_PhxHeaterHeatPumpMonthly.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heat_pumps +from PHX.model.hvac import collection, heat_pumps from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerFossil.py b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerFossil.py index ebbfb16..b66a9b2 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerFossil.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerFossil.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heating +from PHX.model.hvac import collection, heating from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerWood.py b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerWood.py index 13d6fe9..930367d 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerWood.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterBoilerWood.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heating +from PHX.model.hvac import collection, heating from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterDistrictHeat.py b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterDistrictHeat.py index e82a8b5..8c156b7 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterDistrictHeat.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterDistrictHeat.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heating +from PHX.model.hvac import collection, heating from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterElectric.py b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterElectric.py index abd91f9..b4317e2 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterElectric.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_heating/test_PhxHeaterElectric.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, heating +from PHX.model.hvac import collection, heating from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_ventilation/test_PhxVentilator.py b/tests/test_to_WUFI_xml/test_hvac/test_ventilation/test_PhxVentilator.py index 99a6c07..e5e9318 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_ventilation/test_PhxVentilator.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_ventilation/test_PhxVentilator.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, ventilation +from PHX.model.hvac import collection, ventilation from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/tests/test_to_WUFI_xml/test_hvac/test_water/test_PhxHotWaterTank.py b/tests/test_to_WUFI_xml/test_hvac/test_water/test_PhxHotWaterTank.py index c74b771..3178208 100644 --- a/tests/test_to_WUFI_xml/test_hvac/test_water/test_PhxHotWaterTank.py +++ b/tests/test_to_WUFI_xml/test_hvac/test_water/test_PhxHotWaterTank.py @@ -1,4 +1,4 @@ -from PHX.model.hvac import _base, collection, water +from PHX.model.hvac import collection, water from PHX.to_WUFI_XML.xml_builder import generate_WUFI_XML_from_object from tests.test_to_WUFI_xml._utils import xml_string_to_list diff --git a/uv.lock b/uv.lock new file mode 100644 index 0000000..a02a6a3 --- /dev/null +++ b/uv.lock @@ -0,0 +1,3 @@ +version = 1 +revision = 3 +requires-python = ">=3.10"

pNsv_8X@pP8oCtL_BoZt8rM!1wYCdx+a&p>(fA+ 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%0A^t>^r5XiczG{OXcP*}j7ZMpVd3aT&XY*VBn*XB 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