Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move BuildResidentialHPXML measure to option-based arguments #1351

Draft
wants to merge 18 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
0ded714
Merge commit '0a983ffdd98cfb2259dfaa48a07b831b2c12c3f0' into buildres…
Sashadf1 Feb 14, 2025
0a983ff
Squashed 'resources/hpxml-measures/' changes from a784be6aa4..73d527084e
Sashadf1 Feb 14, 2025
805fcc3
first pass at enclosure_roof_material refactor
Sashadf1 Feb 17, 2025
4aed590
fixed typo in Ground Thermal Conductivity from 2.0 to 2, to ensure co…
Sashadf1 Feb 17, 2025
58985a0
up to date options_lookup w/ more options for roof material/color
Sashadf1 Feb 18, 2025
6596f27
Squashed 'resources/hpxml-measures/' changes from 73d527084e..8d9a7cd234
Sashadf1 Feb 18, 2025
8813685
Merge commit '6596f270bdc327ae18d21ef6eaeb355bd0f47cba' into buildres…
Sashadf1 Feb 18, 2025
a0b493c
changes
Sashadf1 Feb 18, 2025
0420b84
Fix formatting of options_lookup.tsv
shorowit Feb 18, 2025
46436e1
Revert ground thermal conductivity changes
shorowit Feb 18, 2025
594f26d
Merge branch 'latest-os-hpxml' of https://github.com/NREL/resstock in…
Sashadf1 Feb 18, 2025
7e0db1f
Fixing unintentional csv file formatting.
joseph-robertson Feb 18, 2025
cb8292b
refactoring UpgradeCosts test osw to exclude refs to roof_color and r…
Sashadf1 Feb 19, 2025
cc81646
running update_measures changed UpgradeCosts measure.xml
Sashadf1 Feb 19, 2025
09637f4
Merge branch 'latest-os-hpxml' into buildresidentialhpxml-options-bas…
Sashadf1 Feb 19, 2025
e1e36c3
Latest results.
Feb 19, 2025
8a0c779
Squashed 'resources/hpxml-measures/' changes from 8d9a7cd234..cccaeb5a0b
Sashadf1 Feb 27, 2025
e043cc8
heating_system.tsv Merge commit '8a0c779cfaf75c440cb776fe010ea522c878…
Sashadf1 Feb 27, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -61949,18 +61949,12 @@ Arguments
- Type
- Choices
- Description
* - ``roof_material_type``
* - ``enclosure_roof_material``
- false
-
- Choice
- auto, asphalt or fiberglass shingles, concrete, cool roof, slate or tile shingles, expanded polystyrene sheathing, metal surfacing, plastic/rubber/synthetic sheeting, shingles, wood shingles or shakes
- The material type of the roof. If not provided, the OS-HPXML default (see `HPXML Roofs <https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs>`_) is used.
* - ``roof_color``
- false
-
- Choice
- auto, dark, light, medium, medium dark, reflective
- The color of the roof. If not provided, the OS-HPXML default (see `HPXML Roofs <https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs>`_) is used.
- auto, Asphalt/Fiberglass Shingles, Dark, Asphalt/Fiberglass Shingles, Medium Dark, Asphalt/Fiberglass Shingles, Medium, Asphalt/Fiberglass Shingles, Light, Asphalt/Fiberglass Shingles, Reflective, Tile/Slate, Dark, Tile/Slate, Medium Dark, Tile/Slate, Medium, Tile/Slate, Light, Tile/Slate, Reflective, Metal, Dark, Metal, Medium Dark, Metal, Medium, Metal, Light, Metal, Reflective, Wood Shingles/Shakes, Dark, Wood Shingles/Shakes, Medium Dark, Wood Shingles/Shakes, Medium, Wood Shingles/Shakes, Light, Wood Shingles/Shakes, Reflective, Shingles, Dark, Shingles, Medium Dark, Shingles, Medium, Shingles, Light, Shingles, Reflective, Synthetic Sheeting, Dark, Synthetic Sheeting, Medium Dark, Synthetic Sheeting, Medium, Synthetic Sheeting, Light, Synthetic Sheeting, Reflective, EPS Sheathing, Dark, EPS Sheathing, Medium Dark, EPS Sheathing, Medium, EPS Sheathing, Light, EPS Sheathing, Reflective, Concrete, Dark, Concrete, Medium Dark, Concrete, Medium, Concrete, Light, Concrete, Reflective, Cool Roof
Copy link
Contributor

@shorowit shorowit Feb 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joseph-robertson We're going to want to do something about the documentation here. For starters, choices can have commas and so the current convention of separating options by comma doesn't work. We could consider using a different delimeter ("|"?) or surrounding options by quotes, but it can still be a long, daunting list. Although we could potentially wrap text in the cell. Another option is to put each choice on a separate line, though it makes the documentation longer.

Here's what it currently looks like:
image

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So currently in OS-HPXML we have no choice arguments with comma(s) in any of the choices?

I think at one point we tried putting quotes around each option. Wrapped text with cell width max (with different delimiter) sounds like it might be good. Can you try that so we can see what that looks like?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to push forward on the rest of the refactor and make sure CI passes. docs prettying can happen after. Thanks for the tip @joseph-robertson.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joseph-robertson @shorowit is there a separate step to update the technical development guide? or does this happen automatically through C.I. or a CLI command?

- The material type/color of the roof. If not provided, the OS-HPXML default (see `HPXML Roofs <https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs>`_) is used.

Options
*******
Expand All @@ -61974,37 +61968,29 @@ From ``project_national`` the list of options, option stock sturation, and optio

* - Option name
- Stock saturation
- ``roof_material_type``
- ``roof_color``
- ``enclosure_roof_material``

* - Asphalt Shingles, Medium
- 45%
- asphalt or fiberglass shingles
- medium
- Asphalt/Fiberglass Shingles, Medium
* - Composition Shingles
- 36%
- asphalt or fiberglass shingles
- medium
- Asphalt/Fiberglass Shingles, Medium
* - Metal, Dark
- 8.4%
- metal surfacing
- dark
- Metal, Dark
* - Slate
- 1.2%
- slate or tile shingles
- medium
- Tile/Slate, Medium
* - Tile, Clay or Ceramic
- 3.8%
- slate or tile shingles
- medium
- Tile/Slate, Medium
* - Tile, Concrete
- 1.7%
- slate or tile shingles
- medium
- Tile/Slate, Medium
* - Wood Shingles
- 4.2%
- wood shingles or shakes
- medium
- Wood Shingles/Shakes, Medium

.. _solar_hot_water:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ build_existing_model.utility_bill_pv_monthly_grid_connection_fee_units,"Utility
build_existing_model.utility_bill_pv_monthly_grid_connection_fees,"Utility bill PV monthly grid connection fees. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_pv_net_metering_annual_excess_sellback_rate_types,"Utility bill PV net metering annual excess sellback rate types. Only applies if the PV compensation type is 'NetMetering'. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_pv_net_metering_annual_excess_sellback_rates,"Utility bill PV net metering annual excess sellback rates. Only applies if the PV compensation type is 'NetMetering' and the PV annual excess sellback rate type is 'User-Specified'. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_scenario_names,"Names of utility bill scenarios. If multiple scenarios, use a comma-separated list. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_scenario_names,"Names of utility bill scenarios. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_simple_filepaths,"Relative paths of simple utility rates. Paths are relative to the resources folder. If multiple scenarios, use a comma-separated list. Files must contain the name of the Parameter as the column header."
build_existing_model.utility_bill_wood_fixed_charges,"Wood utility bill monthly fixed charges. If multiple scenarios, use a comma-separated list."
build_existing_model.utility_bill_wood_marginal_rates,"Wood utility bill marginal rates. If multiple scenarios, use a comma-separated list."
Expand Down
2 changes: 1 addition & 1 deletion measures/BuildExistingModel/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ Wood emissions factors values, specified as an annual factor. If multiple scenar

**Utility Bills: Scenario Names**

Names of utility bill scenarios. If multiple scenarios, use a comma-separated list. If multiple scenarios, use a comma-separated list.
Names of utility bill scenarios. If multiple scenarios, use a comma-separated list.

- **Name:** ``utility_bill_scenario_names``
- **Type:** ``String``
Expand Down
2 changes: 1 addition & 1 deletion measures/BuildExistingModel/measure.rb
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ def arguments(model) # rubocop:disable Lint/UnusedMethodArgument

arg = OpenStudio::Measure::OSArgument.makeStringArgument('utility_bill_scenario_names', false)
arg.setDisplayName('Utility Bills: Scenario Names')
arg.setDescription('Names of utility bill scenarios. If multiple scenarios, use a comma-separated list. If multiple scenarios, use a comma-separated list.')
arg.setDescription('Names of utility bill scenarios. If multiple scenarios, use a comma-separated list.')
args << arg

arg = OpenStudio::Measure::OSArgument.makeStringArgument('utility_bill_simple_filepaths', false)
Expand Down
10 changes: 5 additions & 5 deletions measures/BuildExistingModel/measure.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
<schema_version>3.1</schema_version>
<name>build_existing_model</name>
<uid>dedf59bb-3b88-4f16-8755-2c1ff5519cbf</uid>
<version_id>4545129e-a6bf-44ce-b091-3db9fad11222</version_id>
<version_modified>2025-01-31T03:46:19Z</version_modified>
<version_id>710c690d-1b50-4e26-bc99-916da024961e</version_id>
<version_modified>2025-02-18T22:27:51Z</version_modified>
<xml_checksum>2C38F48B</xml_checksum>
<class_name>BuildExistingModel</class_name>
<display_name>Build Existing Model</display_name>
Expand Down Expand Up @@ -173,7 +173,7 @@
<argument>
<name>utility_bill_scenario_names</name>
<display_name>Utility Bills: Scenario Names</display_name>
<description>Names of utility bill scenarios. If multiple scenarios, use a comma-separated list. If multiple scenarios, use a comma-separated list.</description>
<description>Names of utility bill scenarios. If multiple scenarios, use a comma-separated list.</description>
<type>String</type>
<required>false</required>
<model_dependent>false</model_dependent>
Expand Down Expand Up @@ -340,7 +340,7 @@
<filename>README.md</filename>
<filetype>md</filetype>
<usage_type>readme</usage_type>
<checksum>E4A69761</checksum>
<checksum>DA3A75A2</checksum>
</file>
<file>
<filename>README.md.erb</filename>
Expand All @@ -357,7 +357,7 @@
<filename>measure.rb</filename>
<filetype>rb</filetype>
<usage_type>script</usage_type>
<checksum>2F739BE5</checksum>
<checksum>A8EFD668</checksum>
</file>
</files>
</measure>
21 changes: 4 additions & 17 deletions measures/ResStockArguments/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -811,29 +811,16 @@ Assembly R-value for the ceiling (attic floor).

<br/>

**Roof: Material Type**
**Enclosure: Roof Material**

The material type of the roof. If not provided, the OS-HPXML default (see <a href='https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs'>HPXML Roofs</a>) is used.
The material type/color of the roof. If not provided, the OS-HPXML default (see <a href='https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs'>HPXML Roofs</a>) is used.

- **Name:** ``roof_material_type``
- **Name:** ``enclosure_roof_material``
- **Type:** ``Choice``

- **Required:** ``false``

- **Choices:** `auto`, `asphalt or fiberglass shingles`, `concrete`, `cool roof`, `slate or tile shingles`, `expanded polystyrene sheathing`, `metal surfacing`, `plastic/rubber/synthetic sheeting`, `shingles`, `wood shingles or shakes`

<br/>

**Roof: Color**

The color of the roof. If not provided, the OS-HPXML default (see <a href='https://openstudio-hpxml.readthedocs.io/en/v1.10.0/workflow_inputs.html#hpxml-roofs'>HPXML Roofs</a>) is used.

- **Name:** ``roof_color``
- **Type:** ``Choice``

- **Required:** ``false``

- **Choices:** `auto`, `dark`, `light`, `medium`, `medium dark`, `reflective`
- **Choices:** `auto`, `Asphalt/Fiberglass Shingles, Dark`, `Asphalt/Fiberglass Shingles, Medium Dark`, `Asphalt/Fiberglass Shingles, Medium`, `Asphalt/Fiberglass Shingles, Light`, `Asphalt/Fiberglass Shingles, Reflective`, `Tile/Slate, Dark`, `Tile/Slate, Medium Dark`, `Tile/Slate, Medium`, `Tile/Slate, Light`, `Tile/Slate, Reflective`, `Metal, Dark`, `Metal, Medium Dark`, `Metal, Medium`, `Metal, Light`, `Metal, Reflective`, `Wood Shingles/Shakes, Dark`, `Wood Shingles/Shakes, Medium Dark`, `Wood Shingles/Shakes, Medium`, `Wood Shingles/Shakes, Light`, `Wood Shingles/Shakes, Reflective`, `Shingles, Dark`, `Shingles, Medium Dark`, `Shingles, Medium`, `Shingles, Light`, `Shingles, Reflective`, `Synthetic Sheeting, Dark`, `Synthetic Sheeting, Medium Dark`, `Synthetic Sheeting, Medium`, `Synthetic Sheeting, Light`, `Synthetic Sheeting, Reflective`, `EPS Sheathing, Dark`, `EPS Sheathing, Medium Dark`, `EPS Sheathing, Medium`, `EPS Sheathing, Light`, `EPS Sheathing, Reflective`, `Concrete, Dark`, `Concrete, Medium Dark`, `Concrete, Medium`, `Concrete, Light`, `Concrete, Reflective`, `Cool Roof`

<br/>

Expand Down
Loading
Loading