Address Coil:Cooling:DX Doesn't Use the Minimum Outside Air Temperature for Compressor Operation Field #11131
Address Coil:Cooling:DX Doesn't Use the Minimum Outside Air Temperature for Compressor Operation Field #11131
Conversation
|
Uploaded test file. |
Nigusse
left a comment
There was a problem hiding this comment.
Enabled the Coil:Cooling:DX coil object operation control using the outside air temperature minimum limit.
|
|
||
| if ((speedNum == 0) || ((speedNum == 1) && (speedRatio == 0.0)) || (inletNode.MassFlowRate == 0.0)) { | ||
| if ((speedNum == 0) || ((speedNum == 1) && (speedRatio == 0.0)) || (inletNode.MassFlowRate == 0.0) || | ||
| (state.dataEnvrn->OutDryBulbTemp < this->minOutdoorDrybulb)) { |
There was a problem hiding this comment.
The Coil:Cooling:DX cooling coil object operation is disabled when the outside air temperature is below the minimum limit allowed for compressor operation.
| Real64 ratedAirVolFlowEMSOverrideValue = 0.0; | ||
| bool ratedTotCapFlowEMSOverrideON = false; | ||
| Real64 ratedTotCapFlowEMSOverrideValue = 0.0; | ||
| Real64 minOutdoorDrybulb = 0.0; |
There was a problem hiding this comment.
Defined member variable and set value to 0.0. Hmmm, maybe I should have set to the default value.
| this->alternateMode2.minOutdoorDrybulb = this->normalMode.minOutdoorDrybulb; | ||
| this->myOneTimeMinOATFlag = false; | ||
| } | ||
| } |
There was a problem hiding this comment.
The OA temperature minimum limit values propagated to operating mode variables. This is one time setup.
| EXPECT_EQ(performance->normalMode.minOutdoorDrybulb, 5.0); | ||
| EXPECT_EQ(performance->alternateMode.minOutdoorDrybulb, 5.0); | ||
| EXPECT_EQ(performance->alternateMode2.minOutdoorDrybulb, 5.0); | ||
| EXPECT_EQ(thisCoil.totalCoolingEnergyRate, 0.0); |
There was a problem hiding this comment.
Modified an existing unit test to demonstrate the fix.
| CoilCoolingDXCurveFitOperatingMode normalMode; | ||
| CoilCoolingDXCurveFitOperatingMode alternateMode; // enhanced dehumidifcation or Subcool mode | ||
| CoilCoolingDXCurveFitOperatingMode alternateMode2; // Reheat mode | ||
| bool myOneTimeMinOATFlag = true; |
There was a problem hiding this comment.
A new flag variable is defined and set true for controlling a onetime run of the oneTimeMinOATSetup() function.
|
@Nigusse @Myoldmopar it has been 30 days since this pull request was last updated. |
|
One more round of CI to cleanup final issues, then merging (hopefully). |

Pull request overview
Coil:Cooling:DXdoesn't use MinOAT or AvailSched inputs #10884Description of the purpose of this PR
Pull Request Author
Reviewer