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

v8.9.0 input processing and/or transition issues #6601

Closed
4 tasks done
mjwitte opened this issue Mar 28, 2018 · 13 comments · Fixed by #7523
Closed
4 tasks done

v8.9.0 input processing and/or transition issues #6601

mjwitte opened this issue Mar 28, 2018 · 13 comments · Fixed by #7523
Labels
PriorityHigh This defect or feature has been declared high priority

Comments

@mjwitte
Copy link
Contributor

mjwitte commented Mar 28, 2018

Issue overview

  • For Boilers and Chillers, the Flow Mode choices were changed back in v8.0, but the getinputs still accepted "VariableFlow" with a warning. Since "VariableFlow" is not a valid IDD key, the v8.9 input processor kicks this out. Transition to v8.9 needs to clean up any remaining "VariableFlow" and change them to "LeavingSetpointModulated". Then for the next release, the getinputs need to be modified to get rid of the blocks that warn and change this key.
    Hospital CHP-storage v8-5.idf.txt
    Helpdesk ticket number 12516.
    Addressed in Update v8-9-0 transition - fix old key choice synonyms that fail in v8-9-0 #7532

See comments below for additional issues.

Details

Some additional details for this issue (if relevant):

  • Platform (Operating system, version)
  • Version of EnergyPlus (if using an intermediate build, include SHA)
  • Unmethours link or helpdesk ticket number

Checklist

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

  • Defect file added (list location of defect file here)
  • Ticket added to Pivotal for defect (development team task)
  • Pull request created (the pull request will have additional tasks related to reviewing changes that fix this defect)
@mjwitte mjwitte changed the title Additional v8.9.0 transition rules due to stricter input processing v8.9.0 input processing and/or transition issues Mar 28, 2018
@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • EnergyManagementSystem:Program does not accept a blank line in the middle of the object. Either need to transition these away or modify input processor to allow this.
    For example:
  EnergyManagementSystem:Program,
    ER_Main,                 !- Name
    IF ER_Humidifier_Status > 0,  !- Program Line 1
    SET ER_ExtraElecHeatC_Status = 1,  !- Program Line 2
    SET ER_ExtraElecHeatC_SP = ER_AfterHumidifier_Temp + 1.4,  !- <none>
    ELSE,                    !- <none>
    SET ER_ExtraElecHeatC_Status = 0,  !- <none>
    SET ER_ExtraElecHeatC_SP = NULL,  !- <none>
    ENDIF,                   !- <none>
    IF T_OA < 10,            !- <none>
    ,                        !- <none>
    SET HeatGain = 0 * (ER_FanDesignMass/1.2) *2118,  !- <none>
    SET FlowRate = (ER_FanMassFlow/1.2)*2118,  !- <none>
    SET ER_PreheatDeltaT = HeatGain/(1.08*(FLOWRATE+0.000001)),  !- <none>
    SET ER_ExtraWaterHeatC_Status = 1,  !- <none>
    SET ER_ExtraWaterHeatC_SP = ER_AfterElecHeatC_Temp + ER_PreheatDeltaT,  !- <none>
    ELSE,                    !- <none>
    SET ER_ExtraWaterHeatC_Status = 0,  !- <none>
    SET ER_ExtraWaterHeatC_SP = NULL,  !- <none>
    ENDIF;                   !- <none>

   ** Severe  ** <root>[EnergyManagementSystem:Program][ER_Main][lines][8] - Missing required property 'program_line'.

JSON out looks like this:

                {
                    "program_line": "IF T_OA < 10"
                },
                {},
                {
                    "program_line": "SET HeatGain = 0 * (ER_FanDesignMass/1.2) *2118"
                },

Same defect file, Hospital CHP-storage v8-5.idf.txt
Helpdesk ticket number 12516.

Addressed by #6832

@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • Fuel types allow many synonyms in the get inputs, WaterHeater:Mixed, for example allows "Gas", "NaturalGas" and "Natural Gas" in the getinput, but the only currently valid key in the idd (for gas) is "NaturalGas". Anything else fails in the input processor. Need to transition these all away and look for others in the code.

Same defect file Hospital CHP-storage v8-5.idf.txt
Helpdesk ticket number 12516.
Partially addressed in #7532, remainder will be addressed in #7523

@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • HeatBalanceAlgorithm synonyms need to be transitioned away, e.g.
			if ( ( SELECT_CASE_var == "CONDUCTIONTRANSFERFUNCTION" ) || ( SELECT_CASE_var == "DEFAULT" ) || ( SELECT_CASE_var == "CTF" ) ) {

No test file.
Addressed in #7532

@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • ZoneAirHeatBalanceAlgorithm synonyms need to be transitioned away.
				if ( ( SELECT_CASE_var == "3RDORDERBACKWARDDIFFERENCE" ) || ( SELECT_CASE_var == "THIRDORDERBACKWARDDIFFERENCE" ) ) {

No test file.
Addressed in #7532

@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • Zone "Outside Convection Algorithm" synonyms
				} else if ( ( SELECT_CASE_var == "DOE2" ) || ( SELECT_CASE_var == "DOE-2" ) ) {

Addressed in #7532

@mjwitte
Copy link
Contributor Author

mjwitte commented Mar 28, 2018

  • Generator:WindTurbine "Rotor Type" synonyms, e.g.
			} else if ( ( SELECT_CASE_var == "VERTICALAXISWINDTURBINE" ) || ( SELECT_CASE_var == "VAWT" ) ) {

Addressed in #7532

@mjwitte
Copy link
Contributor Author

mjwitte commented Apr 6, 2018

@mjwitte
Copy link
Contributor Author

mjwitte commented Sep 18, 2019

@mjwitte
Copy link
Contributor Author

mjwitte commented Sep 18, 2019

@mjwitte
Copy link
Contributor Author

mjwitte commented Sep 23, 2019

@mbadams5 @Myoldmopar I've been working on cleaning out undocumented input synonyms from the EnergyPlus code and adding transition rules to CreateNewIDFUsingRulesV8_9_0.f90, naively thinking the key choices in the IDD were enforced by the input processor as of v8.9.

But now I see that modify_schema.py modifies some objects in the schema by adding new key choices to some objects or removing the key choice list altogether (allowing any string to pass to the getinput function). So this means old strings like "ULC" for UpperLeftCorner are still accepted (and are still lurking in some testfiles). So those transition rules need to be in CreateNewIDFUsingRulesV9_2_0.f90 (or more likely now 9_3_0). But some of the items listed in this issue did not get special treatment and do indeed need to be transitioned away back in CreateNewIDFUsingRulesV8_9_0.f90.

@mbadams5 Before I continue down this path do you agree that the goal should be to eliminate as many of these schema modifications as possible and use transition to standardize any idfs to match the IDD key choices? Is there some reason to keep any of the old synonyms active?

@Myoldmopar Needless to say this will be for post v9.2 release - too complicated to cram in the transition rules now.

@mbadams5
Copy link
Contributor

@mjwitte Yes, the goal should be to eliminate schema modifications, where possible, especially the ones linked above. If I remember correctly, those were changes that needed to happen after 8.9 IO freeze, but they needed to be changed after Alpha testing where the autogenerated schema was too strict for existing workflows. Transition rules would be the better approach.

@Myoldmopar
Copy link
Member

This is good stuff. Thanks for the effort @mjwitte, and I'll just change the milestone to future.

@mjwitte
Copy link
Contributor Author

mjwitte commented Nov 16, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PriorityHigh This defect or feature has been declared high priority
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants