NREL / OpenStudio-HPXML

Modeling of residential buildings in EnergyPlus using OpenStudio/HPXML.
Other
41 stars 17 forks source link

Allow the specification of a minimum heat pump size. #1275

Closed afontani closed 1 year ago

afontani commented 1 year ago

Under aggressive envelope upgrades, ResStock (LA100 model) is seeing a lot of unmet hours from heat pumps whose sizes are small ~0.5 ton. We would like to be able to set a minimum capacity.

I think the AllowIncreasedFixedCapacities argument with the user-specified capacity would allow for this functionality.

shorowit commented 1 year ago

@afontani I would prefer if we could identify the cause of the undersized heat pump. Can you provide an HPXML or the steps needed to reproduce the issue?

ekpresent commented 1 year ago

@noahsandoval let's work together today to get Scott an example file or two.

noahsandoval commented 1 year ago

@ekpresent @afontani @shorowit Here are the .xml files for building_id 45552

Here are the .xml files for building_id 21340

Both are SFDs with an unusually high number of unmet cooling hours.

shorowit commented 1 year ago

Note: These are some seriously unrealistic buildings. Building 45552 is a 633 sqft, 3-bedroom SFD home, yet is 2 stories and has 9 occupants. Building 21340 is a 328 sqft, 1-bedroom SFD home (is that even possible?!), yet is 2 stories and has 5 occupants. Perhaps the process by which these samples are produced should be scrutinized...

That said, I've dug in a bit and much of the unmet hours appears to stem from having a high number of occupants -- much greater than the assumed number of occupants (#bedrooms+1) in our Manual J calculation. This is easy to address: use the assumed number of occupants for asset calculations and use the provided number of occupants for operational calculations. PR coming; it's also an easy fix to backport. In building 45552, the cooling unmet hours are reduced from 5507 to 1646. In building 21340, it's reduced from 5597 to 2121.

Aside from this, I did a quick comparison of the OS-HPXML design loads to another software tool and they match up pretty well other than the infiltration/ventilation load. I will plan to look at that a little closer.

afontani commented 1 year ago

@shorowit :Point taken. I looked at our characteristics and although the models were created for the LA100 ES project, it is still a potential problem with project_national in ResStock.

I created an issue https://github.com/NREL/resstock-estimation/issues/351.

ekpresent commented 1 year ago

I finally took a look at the full population (results.csv) and I don't think @shorowit's takeaways tell the full story. Yes, some of the most egregious cases involve homes that probably don't make sense geometrically. Yes, this is much worse when the occupant count is above what our sizing algorithm uses. But usage level alone seems to play a big role. Take a look. (This is the percent of models with an increase in unmet hours of 1,000 hours or more, I could use another threshold - this one is arbitrary.)

Gains of more than 1000 unmet cooling hours

So I do agree that this is internal gains driven with these very insulated high internal gains homes. But I think there's more than just sizing at play here. I think this may be showing some holes in our natural ventilation. In a highly diurnal climate, a home with high internal gains that is experiencing temperatures well above the setpoint is going to be using techniques other than the heat pump.

shorowit commented 1 year ago

Sorry, I had started to type up some additional information but got distracted. Yes, I noticed that the plug loads multiplier, like the number of occupants, is also a major culprit. That's why I ended up reworking my PR into this, which can allow resstock to better inform the Manual J sizing calculations for these types of homes.

These are super low-load homes that are completely dominated by internal gains; if the internal gains are high (either because of plug loads or occupants), they can exceed the (generally pretty conservative) defaults we use from Manual J. But we're talking about selecting cooling capacities that are too small by fractions of a ton. Sure it looks scary to have thousands of hours of unmet cooling load, but if you had that extra fraction of a ton of cooling capacity, it wouldn't result in large increases in cooling energy use.

shorowit commented 1 year ago

But if you really need to see those unmet hours drop towards zero, I can provide some additional easy-to-implement solutions that should help.

noahsandoval commented 1 year ago

Update: I have still not been able to rerun this .yml calling the add_component_loads and include_timeseries_component_loads measures due to Eagle being down. I'll keep trying over the weekend and hope we can have something by our meeting on Monday.

shorowit commented 1 year ago

Aside from this, I did a quick comparison of the OS-HPXML design loads to another software tool and they match up pretty well other than the infiltration/ventilation load. I will plan to look at that a little closer.

I pored over our calculations and they look good. I discovered that the other software tool's results were moderately different for infiltration/ventilation because of the difference between the two Los Angeles sites in Manual J for design humidity. Switched to the AP site and now they show good agreement. (I did end up tweaking our assumption about indoor RH; Manual J recommends 45% - 55% and we were assuming 55%. Updated it to be 50%. Perhaps it could be another input exposed in my PR.)

afontani commented 1 year ago

Thank you, @shorowit. It is good to have this review. I appreciate the modifications you have made recently.