NREL / openstudio-standards

Other
83 stars 58 forks source link

90.1 PRM: fan power additional properties only populated for zones on AirLoops #1523

Open eringold opened 1 year ago

eringold commented 1 year ago

@dmaddoxwhite @lymereJ @weilixu Another issue trying to use model_create_prm_stable_baseline_building on an actual model.

Fan power additional properties are set for zones served by AirLoopHVACs in the proposed model: https://github.com/NREL/openstudio-standards/blob/d332605c2f7a35039bf658bf55cad40a7bcac317/lib/openstudio-standards/standards/Standards.Model.rb#L242-L256

After baseline air systems are made, those properties are queried: https://github.com/NREL/openstudio-standards/blob/d332605c2f7a35039bf658bf55cad40a7bcac317/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.AirLoopHVAC.rb#L269-L271

For zones that aren't served by AirLoops in the proposed model, but end up added to one in the Baseline model, those additional properties don't exist, and because zone.additionalProperties.getFeatureAsDouble isn't 'checked', they will throw 'optional is not initialized' errors. I believe such an occurance is very likely with actual proposed models (e.g. zones served by FCUs, but that don't have different enough loads to kick them into their own single-zone systems in the baseline).

Suggest querying and adding additional properties for more HVAC types in the proposed, or handling missing additional properties within air_loop_hvac_apply_prm_baseline_fan_power.

lymereJ commented 1 year ago

Thanks for reporting that issue! I'll push some changes to address it. Would you be able to share a model that we could use for testing this defect?

eringold commented 1 year ago

@lymereJ possibly. It's kind of an unwieldy model, probably not great to have as part of a test suite. Once I'm past this deadline I can see if I can mock something up that would be lighter.

This is also my first (and rushed) attempt at using the new PRM template, so it's possible there are things about how it expects the model to be setup that I haven't fully grasped.

lymereJ commented 1 year ago

Sure, thanks!

If you want to share the rough model for now that'd be great, we could use it to test this fix internally and we could integrate the "better" model later.