-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(shades): Add new Window Shades, Spec-Heat-Cap
- New window shades (blinds) component - Add blinds input for PH Window Construction component - Add spec-heat-capacity setter component - Support multiple fresh-air vent ducts - New Phius blind transmittance calculator component - update versions
- Loading branch information
Showing
17 changed files
with
349 additions
and
27 deletions.
There are no files selected for viewing
Binary file not shown.
85 changes: 85 additions & 0 deletions
85
honeybee_grasshopper_ph/src/HBPH - Calculate Phius Blind Transmittance.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
# | ||
# Honeybee-PH: A Plugin for adding Passive-House data to LadybugTools Honeybee-Energy Models | ||
# | ||
# This component is part of the PH-Tools toolkit <https://github.com/PH-Tools>. | ||
# | ||
# Copyright (c) 2022, PH-Tools and bldgtyp, llc <[email protected]> | ||
# Honeybee-PH is free software; you can redistribute it and/or modify | ||
# it under the terms of the GNU General Public License as published | ||
# by the Free Software Foundation; either version 3 of the License, | ||
# or (at your option) any later version. | ||
# | ||
# Honeybee-PH is distributed in the hope that it will be useful, | ||
# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
# GNU General Public License for more details. | ||
# | ||
# For a copy of the GNU General Public License | ||
# see <https://github.com/PH-Tools/honeybee_ph/blob/main/LICENSE>. | ||
# | ||
# @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+> | ||
# | ||
""" | ||
Calculate an effective solar reduction factor for Phius WUFI-Passive Models. This | ||
calcualtor will output a solar transmittance and solar reflectance value which can | ||
be used in a Honeybee Energy "HB Shade Material" to create interior or exterior blinds. | ||
The calculataion here follows the protocol described in the Phius Guidebook v3.1, Appenix N-8 | ||
- | ||
If the shading reduction factor for a blind in the closed position is “_material_transmittance”, | ||
and “transmittance_efective_” is in the input in WUFI Passive then: | ||
For exterior blinds use: | ||
Z effective = 0.3 + 0.7 * z | ||
Example: If blinds allow 46% solar access (solar transmittance, Ts) when closed, | ||
use that for "_material_transmittance", and "transmittance_efective_" turns out to be 62%. | ||
Z effective = 0.3 + (0.7*0.46) = 0.622 | ||
For interior blinds use: | ||
Z effective = 1- (1-z) * (1-0.6) | ||
Example: If blinds allow 46% solar access (solar transmittance, Ts) when closed, | ||
use that for "_material_transmittance", and "transmittance_efective_" turns out to be 78%. | ||
Z effective = 1 – (1-0.46) * (1-0.6) = 0.784 | ||
- | ||
EM March 23, 2023 | ||
Args: | ||
_material_transmittance: (float) A value from 0.0 to 1.0 | ||
_inside: (bool) Default=True. Set to False if the blinds are mounted ouside. | ||
Returns: | ||
transmittance_effective_: The solar transmittance value. Input this result value | ||
into the "_transmittance_" input on an "HB Shade Material" component. | ||
reflectance_effective_: The solar reflectance value. Input this result value | ||
into the "_reflectance_" input on an "HB Shade Material" component. | ||
""" | ||
|
||
try: | ||
from honeybee_ph_utils import preview | ||
except ImportError as e: | ||
raise ImportError('Failed to import honeybee_ph_utils:\t{}'.format(e)) | ||
|
||
try: | ||
from honeybee_ph_rhino import gh_compo_io, gh_io | ||
except ImportError as e: | ||
raise ImportError('Failed to import honeybee_ph_rhino:\t{}'.format(e)) | ||
|
||
|
||
# ------------------------------------------------------------------------------------- | ||
import honeybee_ph_rhino._component_info_ | ||
reload(honeybee_ph_rhino._component_info_) | ||
ghenv.Component.Name = "HBPH - Calculate Phius Blind Transmittance" | ||
DEV = honeybee_ph_rhino._component_info_.set_component_params(ghenv, dev=False) | ||
if DEV: | ||
reload(gh_io) | ||
from honeybee_ph_rhino.gh_compo_io import win_calc_phius_blind as gh_compo_io | ||
reload(gh_compo_io) | ||
|
||
|
||
# ------------------------------------------------------------------------------------- | ||
gh_compo_interface = gh_compo_io.GHCompo_CalcPhiusShadeTransmittance( | ||
_material_transmittance, | ||
_inside, | ||
) | ||
transmittance_effective_, reflectance_effective_ = gh_compo_interface.run() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
82 changes: 82 additions & 0 deletions
82
honeybee_grasshopper_ph/src/HBPH - Set Spec Heat Capacity.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
# | ||
# Honeybee-PH: A Plugin for adding Passive-House data to LadybugTools Honeybee-Energy Models | ||
# | ||
# This component is part of the PH-Tools toolkit <https://github.com/PH-Tools>. | ||
# | ||
# Copyright (c) 2022, PH-Tools and bldgtyp, llc <[email protected]> | ||
# Honeybee-PH is free software; you can redistribute it and/or modify | ||
# it under the terms of the GNU General Public License as published | ||
# by the Free Software Foundation; either version 3 of the License, | ||
# or (at your option) any later version. | ||
# | ||
# Honeybee-PH is distributed in the hope that it will be useful, | ||
# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
# GNU General Public License for more details. | ||
# | ||
# For a copy of the GNU General Public License | ||
# see <https://github.com/PH-Tools/honeybee_ph/blob/main/LICENSE>. | ||
# | ||
# @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+> | ||
# | ||
""" | ||
Set the Room averge Specific Heat Capacity (Wh/m2-K). If a single value is provided, it | ||
will be used to set the attribute value of each Honeybee-Room input. If a list is provided, | ||
the values will be applied to the Honeybee-Rooms in the order input. | ||
- | ||
EM March 29, 2023 | ||
Args: | ||
_room_spec_capacities: (Wh/m2k) Input either - | ||
"1-Lightweight" (Default) | ||
"2-Mixed" | ||
"3-Massive" | ||
_hb_rooms: (List[roomn.Room]) A list of the Honeybee Rooms to set the | ||
Specific Heat Capacity (Wh/m2k) on. | ||
Returns: | ||
hb_rooms_: (List[room.Room]) A list of the Honeybee Rooms with their | ||
Specific Heat Capacity (Wh/m2k) set. | ||
""" | ||
|
||
import scriptcontext as sc | ||
import Rhino as rh | ||
import rhinoscriptsyntax as rs | ||
import ghpythonlib.components as ghc | ||
import Grasshopper as gh | ||
|
||
|
||
try: | ||
from honeybee_ph_utils import preview | ||
except ImportError as e: | ||
raise ImportError('Failed to import honeybee_ph_utils:\t{}'.format(e)) | ||
|
||
try: | ||
from honeybee_ph_rhino import gh_compo_io, gh_io | ||
except ImportError as e: | ||
raise ImportError('Failed to import honeybee_ph_rhino:\t{}'.format(e)) | ||
|
||
|
||
#------------------------------------------------------------------------------- | ||
import honeybee_ph_rhino._component_info_ | ||
reload(honeybee_ph_rhino._component_info_) | ||
ghenv.Component.Name = "HBPH - Set Spec Heat Capacity" | ||
DEV = honeybee_ph_rhino._component_info_.set_component_params(ghenv, dev=False) | ||
if DEV: | ||
from honeybee_ph_rhino.gh_compo_io import set_spec_heat_cap as gh_compo_io | ||
reload(gh_compo_io) | ||
|
||
|
||
# ------------------------------------------------------------------------------ | ||
# -- GH Interface | ||
IGH = gh_io.IGH( ghdoc, ghenv, sc, rh, rs, ghc, gh ) | ||
|
||
|
||
# ------------------------------------------------------------------------------ | ||
gh_compo_interface = gh_compo_io.GHCompo_SetRoomSpecHeatCaps( | ||
IGH, | ||
_room_spec_capacities, | ||
_hb_rooms, | ||
) | ||
|
||
hb_rooms_ = gh_compo_interface.run() |
Binary file added
BIN
+4.07 KB
honeybee_grasshopper_ph/user_objects/HBPH - Calculate Phius Blind Transmittance.ghuser
Binary file not shown.
Binary file modified
BIN
+404 Bytes
(110%)
honeybee_grasshopper_ph/user_objects/HBPH - Create PH Window Construction.ghuser
Binary file not shown.
Binary file modified
BIN
+69 Bytes
(100%)
honeybee_grasshopper_ph/user_objects/HBPH - Create Ventilation System.ghuser
Binary file not shown.
Binary file added
BIN
+4.33 KB
honeybee_grasshopper_ph/user_objects/HBPH - Set Spec Heat Capacity.ghuser
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.