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

Buildings incorrectly missing HVAC systems #434

Closed
JLReyna opened this issue Apr 3, 2020 · 18 comments
Closed

Buildings incorrectly missing HVAC systems #434

JLReyna opened this issue Apr 3, 2020 · 18 comments

Comments

@JLReyna
Copy link
Member

JLReyna commented Apr 3, 2020

During troubleshooting an LA100 issue, we discovered an issue where buildings that have been assigned Option=Electricity in Heating Fuel.tsv are being assigned Option=None in HVAC System Heating Electricity.tsv even though the dependencies in specify that Dependency=HVAC System Is Heat Pump is No and Dependency=HVAC System Is Shared is Neither Shared or Only Cooling Shared. Essentially, this means our fraction of buildings without heating systems does not match Heating Fuel.tsv, and we are underestimating heating, in some regions (e.g. CR10) potentially up to 20%. This could also be an issue with other fuels, like natural gas, but this needs further investigation to confirm.

Recommendations:

  • Completely restructure HVAC TSVs to simplify and ensure that distributions are accurate to source data
  • Remove or simplify the dependencies that link distribution of electric heating technologies to cooling saturation
  • Add in resstock_probability column as standard in all TSVs so that these issues can be identified and diagnosed more quickly
  • Compare annual heating totals before and after fix to understand impact of missing heating on old projects.
@shorowit
Copy link
Contributor

shorowit commented Apr 3, 2020

Presumably this occurs because the source data has no samples for the combination of e.g., (heating fuel, climate zone, vintage), right?

In the past, we had discussions about smoothing probabilities when the sampling is highly granular (@ejhw probably remembers this approach). Alternatively probabilities could be filled in using probabilities from nearby combinations that do have samples.

@joseph-robertson
Copy link
Contributor

joseph-robertson commented Apr 3, 2020

I don't think this is a tsv structure issue. If you look at HVAC System Heating Electricity.tsv, specifically rows where Location Region=CR10, Vintage=1950s, Heating Fuel=Electricity, HVAC System Is Heat Pump=No, and HVAC System Is Shared=Neither Shared, you see that the Option=None is 100% probability of being sampled.

@JLReyna
Copy link
Member Author

JLReyna commented Apr 3, 2020

@joseph-robertson and that's a problem. If we've said Heating Fuel = Electricity and not Heating Fuel =None, it needs an electric heating technology assigned, but it is not getting any equipment because Option=None is 100% in HVAC System Heating Electricity.tsv and it's not getting a shared system or a heat pump. On the row you called out, the resstock_probability is 0.1%, so that fraction of the housing stock is not getting electric heating equipment even though it's included in the Heating Fuel.tsv as part of the electric distribution

In LA ResStock, we discovered that this was causing a 15% reduction in assigned heating equipment compared to what was specified in Heating Fuel.tsv (i.e. we expected 85% heating saturation, but because of this issue we had 70% saturation in some cases). We reviewed the results.csvs and there were a lot of buildings with Heating Fuel = Electricity, but no heating technologies assigned

@joseph-robertson
Copy link
Contributor

I'm confused. So you agree that the HVAC System Heating Electricity.tsv file needs to be updated to achieve your desired result? Or you're saying you think there is some other problem?

@shorowit
Copy link
Contributor

shorowit commented Apr 3, 2020

We're in agreement that there's an issue. But the issue is just gaps in the source data, which manifests as gaps in the probability tsv file (like the one that @joseph-robertson pointed to).

@afontani
Copy link
Contributor

afontani commented Apr 3, 2020

So I believe it is only these rows in the table below (HVAC System Heating Electricity.tsv). But these rows represent 22% (@JLReyna correct me if I am wrong on the percentage) of the units in CR10. If there is a lack of source data, then we should collapse a dependency or dependencies and assign averages to Electric Furnace, Electric boiler, and Electric Baseboard options and have None be 0.

Dependency=Location Region Dependency=Vintage Dependency=Heating Fuel Dependency=HVAC System Is Heat Pump Dependency=HVAC System Is Shared Option=None Option=Electric Boiler Option=Electric Furnace Option=Electric Baseboard
CR05 1950s Electricity No Neither Shared 1 0 0 0
CR05 1950s Electricity No Only Cooling Shared 1 0 0 0
CR10 <1940 Electricity No Neither Shared 1 0 0 0
CR10 <1940 Electricity No Only Cooling Shared 1 0 0 0
CR10 1940s Electricity No Neither Shared 1 0 0 0
CR10 1940s Electricity No Only Cooling Shared 1 0 0 0
CR10 1950s Electricity No Neither Shared 1 0 0 0
CR10 1950s Electricity No Only Cooling Shared 1 0 0 0

@JLReyna
Copy link
Member Author

JLReyna commented Apr 3, 2020

Ah, okay. I think we're talking about the same thing in different ways. Are you saying the 100% None assignment only happened because of a lack of source data? To me, it's a fundamental issue in the structure if you can allow the assignment of None to a building that is supposed to have an electric technology, or maybe that the complexity of the dependency structure masks this happening, but I can see you all are talking about None having been the default when no data were available.

@JLReyna
Copy link
Member Author

JLReyna commented Apr 3, 2020

@afontani basically - 21% of CR10.

that would be the quick fix. To just make sure that these rows weren't getting None assignments.

@shorowit
Copy link
Contributor

shorowit commented Apr 3, 2020

Should probably audit all the heating fuel tsv's. I think I'm seeing similar issues with Fuel Oil?

@joseph-robertson
Copy link
Contributor

Historically, I believe we've used the approach of assigning equal probability across all "non None" options for "gap" rows. @shorowit can correct me if I'm wrong.

@JLReyna
Copy link
Member Author

JLReyna commented Apr 3, 2020

@shorowit agreed. We had some Other Fuel options also not getting assignment in LA. Less of a major issue there since that project was focused on electricity

@shorowit
Copy link
Contributor

shorowit commented Apr 3, 2020

@joseph-robertson We only did that when the row wasn't being used (i.e., the combination of dependencies would never occur based on their probabilities). These rows are definitely being used though.

@joseph-robertson
Copy link
Contributor

joseph-robertson commented Apr 3, 2020

Hmm. So we didn't need to do that then? It was just to make tsvs look nicer?

@shorowit
Copy link
Contributor

shorowit commented Apr 3, 2020

Well many tsv's don't have a None option, so we had to do something. I believe it was just a way to flag the row as having no samples.

@ejhw
Copy link
Contributor

ejhw commented Apr 3, 2020

@JLReyna good catch on this. It seems like it got introduced with multifamily capabilities.

To me, it's a fundamental issue in the structure if you can allow the assignment of None to a building that is supposed to have an electric technology, or maybe that the complexity of the dependency structure masks this happening, but I can see you all are talking about None having been the default when no data were available.

In this case, the None is needed for the heat pumps and central shared systems, but maybe there is a better way of structuring that complexity.

@JLReyna JLReyna changed the title Buildings incorrectly missing HVAC systems because of dependency structure Buildings incorrectly missing HVAC systems Apr 28, 2020
@JLReyna JLReyna mentioned this issue Apr 28, 2020
9 tasks
joseph-robertson added a commit that referenced this issue Jun 30, 2020
828c59c180 Add default value for schedule csv path.
4a883c4077 Merge branch 'master' into build-res-hpxml-v3
75b13545f5 Fix schedules in tv plug loads test.
e0f27a71a2 Merge pull request #435 from NREL/run_log_os_warnings
bda233d24f Move oga require back up.
9b9256843e Merge branch 'master' into build-res-hpxml-v3
b7d6402f1e Update variable names. [ci skip]
56e109f48a Merge pull request #434 from NREL/rename_energyplus_class
5df23d664f Adds OpenStudio warnings to run.log when using run_simulation.rb.
3520679ae4 Renames the new EnergyPlus class to EPlus to avoid conflicts in some workflows.
4f747e47fc Merge pull request #433 from NREL/window_ufactor_warning
79ff991025 Move oga down into run method.
133a1cf0a5 Remove debug statement.
fb9c2b9057 Adds a warning if the window U-factor is above the EnergyPlus max value and reduces it to an allowed value.
1c49fd9749 Merge pull request #432 from NREL/tv_schedule_bugfix
4b456aefe6 Fixes a typo in the tv schedule that caused all tv energy use to essentially occur in a single hour.

git-subtree-dir: resources/hpxml-measures
git-subtree-split: 828c59c180dd9bc82ea7e3cecf12bed3f787e824
@joseph-robertson
Copy link
Contributor

@JLReyna @afontani does #478 close this issue? Or should this issue be left open?

@afontani
Copy link
Contributor

@joseph-robertson: I believe the HVAC restructure does close this issue.

@joseph-robertson
Copy link
Contributor

Closed in #478.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants