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

Change R-value of Insulation Layer for Construction By a Multiplier/Percent measures fail (and general improvements) #31

Open
MatthewSteen opened this issue May 28, 2021 · 4 comments

Comments

@MatthewSteen
Copy link
Member

MatthewSteen commented May 28, 2021

The Change R-value of Insulation Layer for Construction By a Multiplier and Change R-value of Insulation Layer for Construction By a Specified Percentage measures fail for interior constructions because the corresponding matched/reversed surface construction is not changed.

Failure

 ** Severe  ** GetSurfaceData: Construction FLOORPLNM-CONST of interzone surface FLOOR1-FLEXLAB-X3-PLNMA does not have the same materials in the reverse order as the construction CEILING-CONST of adjacent surface CEILING1-FLEXLAB-X3-ZONEA
   **   ~~~   ** or the properties of the reversed layers are not correct due to differing layer front and back side values
   **   ~~~   ** ...this problem for this pair will not be reported again.

General Improvements

The above failure was for a calibration use case for zone temperatures (occupied and plenum). Additionally, I think the following would be nice improvements.

  1. The multiplier and percent arguments should allow for decreased performance, not just an increase. These are after all in the calibration gem not the EE gem
  2. Use the arguments to simply set the existing object rather than cloning it, then changing it. Maybe there's a reason for cloning, but it just adds cruft to a model in my opinion.
    • Removing the cloned code will actually fix the failure too.
@brianlball
Copy link
Contributor

you can use a negative % or a multiplier < 1 in some circumstances for decreased performance

@MatthewSteen
Copy link
Member Author

you can use a negative % or a multiplier < 1 in some circumstances for decreased performance

Multipliers < 1 return false...

def check_multiplier(runner, multiplier)
if multiplier < 0
runner.registerError("Multiplier #{multiplier} cannot be negative.")
false
end
end

@brianlball
Copy link
Contributor

thats < 0, not < 1.

@MatthewSteen
Copy link
Member Author

thats < 0, not < 1.

Oops, yes it is. I was looking at the r_value_prct_inc variable name.

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

No branches or pull requests

2 participants