diff --git a/src/EnergyPlus/DXCoils.cc b/src/EnergyPlus/DXCoils.cc index 355e0bc83fc..cc8fb70b8d8 100644 --- a/src/EnergyPlus/DXCoils.cc +++ b/src/EnergyPlus/DXCoils.cc @@ -231,7 +231,7 @@ void SimDXCoil(EnergyPlusData &state, CalcDXHeatingCoil(state, DXCoilNum, PartLoadRatio, fanOp, AirFlowRatio, MaxCap); } break; case HVAC::CoilVRF_FluidTCtrl_Cooling: { - CalcVRFCoolingCoil_FluidTCtrl(state, DXCoilNum, HVAC::CompressorOp::On, FirstHVACIteration, PartLoadRatio, fanOp, CompCycRatio, _, _); + CalcVRFCoolingCoil_FluidTCtrl(state, DXCoilNum, HVAC::CompressorOp::On, FirstHVACIteration, PartLoadRatio, fanOp, CompCycRatio, _, _, MaxCap); } break; case HVAC::CoilVRF_FluidTCtrl_Heating: { CalcVRFHeatingCoil_FluidTCtrl(state, compressorOp, DXCoilNum, PartLoadRatio, fanOp, _, MaxCap); @@ -6873,7 +6873,8 @@ void InitDXCoil(EnergyPlusData &state, int const DXCoilNum) // number of the cur } else if (thisDXCoil.DXCoilType_Num == HVAC::CoilVRF_Cooling) { CalcVRFCoolingCoil(state, DXCoilNum, HVAC::CompressorOp::On, false, 1.0, HVAC::FanOp::Cycling, 1.0, _, _, _); } else if (thisDXCoil.DXCoilType_Num == HVAC::CoilVRF_FluidTCtrl_Cooling) { - CalcVRFCoolingCoil_FluidTCtrl(state, DXCoilNum, HVAC::CompressorOp::On, false, 1.0, HVAC::FanOp::Cycling, 1.0, _, _); + CalcVRFCoolingCoil_FluidTCtrl( + state, DXCoilNum, HVAC::CompressorOp::On, false, 1.0, HVAC::FanOp::Cycling, 1.0, _, _, Constant::MaxCap); } // coil outlets @@ -16519,7 +16520,8 @@ void CalcVRFCoolingCoil_FluidTCtrl(EnergyPlusData &state, HVAC::FanOp const fanOp, // Allows parent object to control fan operation Real64 const CompCycRatio, // cycling ratio of VRF condenser ObjexxFCL::Optional_int_const PerfMode, // Performance mode for MultiMode DX coil; Always 1 for other coil types - ObjexxFCL::Optional OnOffAirFlowRatio // ratio of compressor on airflow to compressor off airflow + ObjexxFCL::Optional OnOffAirFlowRatio, // ratio of compressor on airflow to compressor off airflow + Real64 MaxCoolCap // maximum allowed cooling capacity ) { // SUBROUTINE INFORMATION: @@ -16744,7 +16746,8 @@ void CalcVRFCoolingCoil_FluidTCtrl(EnergyPlusData &state, ShowFatalError(state, format("{} \"{}\" - Rated total cooling capacity is zero or less.", thisDXCoil.DXCoilType, thisDXCoil.Name)); } - TotCap = thisDXCoil.RatedTotCap(Mode); + TotCap = min(MaxCoolCap, thisDXCoil.RatedTotCap(Mode)); + QCoilReq = -PartLoadRatio * TotCap; if (PartLoadRatio == 0.0) { AirMassFlowMin = state.dataHVACVarRefFlow->OACompOffMassFlow; @@ -16913,10 +16916,8 @@ void CalcVRFCoolingCoil_FluidTCtrl(EnergyPlusData &state, } } - // Coil total cooling - Real64 AirMassFlowRate = thisDXCoil.InletAirMassFlowRate; // Coil total/sensible/latent cooling rates - CalcComponentSensibleLatentOutput(AirMassFlowRate, + CalcComponentSensibleLatentOutput(AirMassFlow * PartLoadRatio, InletAirDryBulbTemp, InletAirHumRat, OutletAirTemp, @@ -17347,8 +17348,7 @@ void ControlVRFIUCoil(EnergyPlusData &state, MaxSH = 15; MaxSC = 20; Garate = state.dataDXCoils->DXCoil(CoilIndex).RatedAirMassFlowRate(1); - // why always limit the minimum fan speed ratio to 0.65? - FanSpdRatioMin = min(max(OAMassFlow / Garate, 0.65), 1.0); // ensure that coil flow rate is higher than OA flow rate + FanSpdRatioMin = min(OAMassFlow / Garate, 1.0); // ensure that coil flow rate is higher than OA flow rate if (QCoil == 0) { // No Heating or Cooling diff --git a/src/EnergyPlus/DXCoils.hh b/src/EnergyPlus/DXCoils.hh index af96c667b24..e79a70ca309 100644 --- a/src/EnergyPlus/DXCoils.hh +++ b/src/EnergyPlus/DXCoils.hh @@ -541,7 +541,7 @@ namespace DXCoils { ObjexxFCL::Optional PartLoadRatio = _, // part load ratio (for single speed cycling unit) ObjexxFCL::Optional OnOffAFR = _, // ratio of compressor on airflow to compressor off airflow ObjexxFCL::Optional CoilCoolingHeatingPLRRatio = _, // used for cycling fan RH control - ObjexxFCL::Optional MaxCap = _, // maximum cooling capacity of VRF terminal units + ObjexxFCL::Optional MaxCap = Constant::MaxCap, // maximum cooling capacity of VRF terminal units ObjexxFCL::Optional CompCyclingRatio = _ // cycling ratio of VRF condenser connected to this TU ); @@ -878,7 +878,8 @@ namespace DXCoils { HVAC::FanOp const fanOp, // Allows parent object to control fan operation Real64 const CompCycRatio, // cycling ratio of VRF condenser ObjexxFCL::Optional_int_const PerfMode, // Performance mode for MultiMode DX coil; Always 1 for other coil types - ObjexxFCL::Optional OnOffAirFlowRatio // ratio of compressor on airflow to compressor off airflow + ObjexxFCL::Optional OnOffAirFlowRatio, // ratio of compressor on airflow to compressor off airflow + Real64 MaxCoolCap = Constant::MaxCap // maximum allowed cooling capacity ); void diff --git a/src/EnergyPlus/DataGlobalConstants.hh b/src/EnergyPlus/DataGlobalConstants.hh index 7ddb061d90f..3c7ff92e8fb 100644 --- a/src/EnergyPlus/DataGlobalConstants.hh +++ b/src/EnergyPlus/DataGlobalConstants.hh @@ -619,6 +619,8 @@ namespace Constant { Real64 constexpr UniversalGasConst = 8314.462175; // Universal Gas Constant (J/mol*K) Real64 constexpr convertJtoGJ = 1.0E-9; // Conversion factor for J to GJ + Real64 constexpr MaxCap(1.0e+20); // limit of zone terminal unit capacity + } // namespace Constant } // namespace EnergyPlus diff --git a/src/EnergyPlus/HVACVariableRefrigerantFlow.cc b/src/EnergyPlus/HVACVariableRefrigerantFlow.cc index 6bb48f857f3..4ea2e6d85d5 100644 --- a/src/EnergyPlus/HVACVariableRefrigerantFlow.cc +++ b/src/EnergyPlus/HVACVariableRefrigerantFlow.cc @@ -1479,8 +1479,8 @@ void GetVRFInputData(EnergyPlusData &state, bool &ErrorsFound) state.dataHVACVarRefFlow->MaxHeatingCapacity.allocate(state.dataHVACVarRefFlow->NumVRFCond); state.dataHVACVarRefFlow->CoolCombinationRatio.allocate(state.dataHVACVarRefFlow->NumVRFCond); state.dataHVACVarRefFlow->HeatCombinationRatio.allocate(state.dataHVACVarRefFlow->NumVRFCond); - state.dataHVACVarRefFlow->MaxCoolingCapacity = MaxCap; - state.dataHVACVarRefFlow->MaxHeatingCapacity = MaxCap; + state.dataHVACVarRefFlow->MaxCoolingCapacity = Constant::MaxCap; + state.dataHVACVarRefFlow->MaxHeatingCapacity = Constant::MaxCap; state.dataHVACVarRefFlow->CoolCombinationRatio = 1.0; state.dataHVACVarRefFlow->HeatCombinationRatio = 1.0; } @@ -6589,8 +6589,8 @@ void InitVRF(EnergyPlusData &state, int const VRFTUNum, int const ZoneNum, bool // terminal unit will be limited to 3-tons (see SimVRFCondenser where this variable is calculated). if (CurrentEndTime > state.dataHVACVarRefFlow->CurrentEndTimeLast || TimeStepSysLast > state.dataHVACGlobal->TimeStepSys || (FirstHVACIteration && state.dataHVACVarRefFlow->MyBeginTimeStepFlag(VRFCond))) { - state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = MaxCap; - state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = MaxCap; + state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = Constant::MaxCap; + state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = Constant::MaxCap; state.dataHVACVarRefFlow->MyBeginTimeStepFlag(VRFCond) = false; } @@ -9589,8 +9589,10 @@ void VRFTerminalUnitEquipment::CalcVRF(EnergyPlusData &state, } } // calculate sensible load met using delta enthalpy + Real64 TotalOutput = AirMassFlow * (Psychrometrics::PsyHFnTdbW(TempOut, SpecHumOut) - + Psychrometrics::PsyHFnTdbW(TempIn, SpecHumIn)); // total addition/removal rate, {W}; LoadMet = AirMassFlow * PsyDeltaHSenFnTdb2W2Tdb1W1(TempOut, SpecHumOut, TempIn, SpecHumIn); // sensible {W} - LatentLoadMet = AirMassFlow * (SpecHumOut - SpecHumIn); // latent {kgWater/s} + LatentLoadMet = TotalOutput - LoadMet; if (present(LatOutputProvided)) { // CR9155 Remove specific humidity calculations LatOutputProvided = LatentLoadMet; @@ -9736,10 +9738,7 @@ void ReportVRFTerminalUnit(EnergyPlusData &state, int const VRFTUNum) // index t TempOut = state.dataLoopNodes->Node(state.dataHVACVarRefFlow->VRFTU(VRFTUNum).VRFTUOutletNodeNum).Temp; TempIn = state.dataLoopNodes->Node(state.dataHVACVarRefFlow->VRFTU(VRFTUNum).VRFTUInletNodeNum).Temp; } - // latent heat vaporization/condensation used in moist air psychrometrics - Real64 const H2OHtOfVap = PsyHgAirFnWTdb(0.0, TempOut); - // convert latent in kg/s to watts - TotalConditioning = SensibleConditioning + (LatentConditioning * H2OHtOfVap); + TotalConditioning = SensibleConditioning + LatentConditioning; if (TotalConditioning <= 0.0) { state.dataHVACVarRefFlow->VRFTU(VRFTUNum).TotalCoolingRate = std::abs(TotalConditioning); @@ -9756,11 +9755,11 @@ void ReportVRFTerminalUnit(EnergyPlusData &state, int const VRFTUNum) // index t state.dataHVACVarRefFlow->VRFTU(VRFTUNum).SensibleHeatingRate = SensibleConditioning; } if (LatentConditioning <= 0.0) { - state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentCoolingRate = std::abs(LatentConditioning) * H2OHtOfVap; + state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentCoolingRate = std::abs(LatentConditioning); state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentHeatingRate = 0.0; } else { state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentCoolingRate = 0.0; - state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentHeatingRate = LatentConditioning * H2OHtOfVap; + state.dataHVACVarRefFlow->VRFTU(VRFTUNum).LatentHeatingRate = LatentConditioning; } state.dataHVACVarRefFlow->VRFTU(VRFTUNum).TotalCoolingEnergy = state.dataHVACVarRefFlow->VRFTU(VRFTUNum).TotalCoolingRate * ReportingConstant; state.dataHVACVarRefFlow->VRFTU(VRFTUNum).SensibleCoolingEnergy = @@ -10559,7 +10558,7 @@ void LimitCoilCapacity(int const NumTUInList, // Number of terminal un // sort TU capacity from lowest to highest for (TempTUIndex = 1; TempTUIndex <= NumTUInList; ++TempTUIndex) { - MinOutput = MaxCap; + MinOutput = Constant::MaxCap; for (NumTU = 1; NumTU <= NumTUInList; ++NumTU) { if (Temp2(NumTU) < MinOutput) { MinOutput = Temp2(NumTU); @@ -10567,7 +10566,7 @@ void LimitCoilCapacity(int const NumTUInList, // Number of terminal un MinOutputIndex = NumTU; } } - Temp2(MinOutputIndex) = MaxCap; + Temp2(MinOutputIndex) = Constant::MaxCap; } // find limit of "terminal unit" capacity so that sum of all TU's does not exceed condenser capacity @@ -11355,9 +11354,6 @@ void VRFCondenserEquipment::CalcVRFCondenser_FluidTCtrl(EnergyPlusData &state) if (Q_c_TU_PL > CompEvaporatingCAPSpdMax) { // Required load is beyond the max system capacity - Q_c_TU_PL = CompEvaporatingCAPSpdMax; - TU_CoolingLoad = CompEvaporatingCAPSpdMax; - this->TUCoolingLoad = TU_CoolingLoad; RefTSat = this->refrig->getSatTemperature(state, max(min(Pevap, RefPHigh), RefPLow), RoutineName); h_IU_evap_out = this->refrig->getSupHeatEnthalpy(state, max(RefTSat, this->IUEvaporatingTemp + 3), max(min(Pevap, RefPHigh), RefPLow), RoutineName); @@ -11503,9 +11499,9 @@ void VRFCondenserEquipment::CalcVRFCondenser_FluidTCtrl(EnergyPlusData &state) this->PipingCorrectionCooling = TU_CoolingLoad / (TU_CoolingLoad + Pipe_Q_c); state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = this->CoolingCapacity; // for report, maximum evaporating capacity of the system - this->HeatingCapacity = 0.0; // Include the piping loss - this->PipingCorrectionHeating = 1.0; // 1 means no piping loss - state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = 0.0; + this->HeatingCapacity = 0.0; // Include the piping loss + this->PipingCorrectionHeating = 1.0; // 1 means no piping loss + state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = 0.0; // yujie: might be wrong here too, should be MaxCap = 1e+20 this->OUCondHeatRate = Q_h_OU; this->OUEvapHeatRate = 0; @@ -11737,7 +11733,7 @@ void VRFCondenserEquipment::CalcVRFCondenser_FluidTCtrl(EnergyPlusData &state) this->CoolingCapacity = 0.0; // Include the piping loss this->PipingCorrectionCooling = 0.0; - state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = 0.0; // for report + state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = Constant::MaxCap; // for report this->OUCondHeatRate = 0; this->OUEvapHeatRate = Q_c_OU; @@ -11973,13 +11969,13 @@ void VRFCondenserEquipment::CalcVRFCondenser_FluidTCtrl(EnergyPlusData &state) this->OUFanPower = 0.0; this->VRFCondCyclingRatio = 0.0; - this->HeatingCapacity = 0.0; // Include the piping loss - this->PipingCorrectionHeating = 1.0; // 1 means no piping loss - state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = MaxCap; // yujie: default value is MaxCap = 1e+20, not 0 + this->HeatingCapacity = 0.0; // Include the piping loss + this->PipingCorrectionHeating = 1.0; // 1 means no piping loss + state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) = Constant::MaxCap; // yujie: default value is MaxCap = 1e+20, not 0 this->CoolingCapacity = 0.0; // Include the piping loss this->PipingCorrectionCooling = 1.0; - state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = MaxCap; // for report + state.dataHVACVarRefFlow->MaxCoolingCapacity(VRFCond) = Constant::MaxCap; // for report this->CondensingTemp = state.dataEnvrn->OutDryBulbTemp; this->EvaporatingTemp = state.dataEnvrn->OutDryBulbTemp; @@ -12715,7 +12711,7 @@ void VRFTerminalUnitEquipment::CalcVRF_FluidTCtrl(EnergyPlusData &state, state.dataHVACVarRefFlow->CompOffMassFlow = state.dataHVACVarRefFlow->OACompOffMassFlow; } else { // identify the air flow rate corresponding to the coil load - if (this->HeatingCoilPresent && state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) < MaxCap) { + if (this->HeatingCoilPresent && state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond) < Constant::MaxCap) { // Only fix heating only mode for now state.dataHVACVarRefFlow->CompOnMassFlow = CalVRFTUAirFlowRate_FluidTCtrl( state, VRFTUNum, PartLoadRatio, FirstHVACIteration, state.dataHVACVarRefFlow->MaxHeatingCapacity(VRFCond)); @@ -12864,8 +12860,10 @@ void VRFTerminalUnitEquipment::CalcVRF_FluidTCtrl(EnergyPlusData &state, } } // calculate sensible load met using delta enthalpy + Real64 TotalOutput = AirMassFlow * (Psychrometrics::PsyHFnTdbW(TempOut, SpecHumOut) - + Psychrometrics::PsyHFnTdbW(TempIn, SpecHumIn)); // total addition/removal rate, {W}; LoadMet = AirMassFlow * PsyDeltaHSenFnTdb2W2Tdb1W1(TempOut, SpecHumOut, TempIn, SpecHumIn); // sensible {W} - LatentLoadMet = AirMassFlow * (SpecHumOut - SpecHumIn); // latent {kgWater/s} + LatentLoadMet = TotalOutput - LoadMet; if (present(LatOutputProvided)) { LatOutputProvided = LatentLoadMet; } diff --git a/src/EnergyPlus/HVACVariableRefrigerantFlow.hh b/src/EnergyPlus/HVACVariableRefrigerantFlow.hh index d34e72a3a4a..e63d6cab0a2 100644 --- a/src/EnergyPlus/HVACVariableRefrigerantFlow.hh +++ b/src/EnergyPlus/HVACVariableRefrigerantFlow.hh @@ -107,8 +107,6 @@ namespace HVACVariableRefrigerantFlow { Num }; - constexpr Real64 MaxCap(1.0e+20); // limit of zone terminal unit capacity - // VRF Algorithm Type enum class AlgorithmType { diff --git a/testfiles/CMakeLists.txt b/testfiles/CMakeLists.txt index 0f07fc71c17..7c9a8436fcc 100644 --- a/testfiles/CMakeLists.txt +++ b/testfiles/CMakeLists.txt @@ -679,13 +679,13 @@ add_simulation_test(IDF_FILE VSHeatPumpWaterHeater.idf EPW_FILE USA_FL_Miami.Int add_simulation_test(IDF_FILE VSHeatPumpWaterToAirEquationFit.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) add_simulation_test(IDF_FILE VSWaterHeaterHeatPumpStratifiedTank.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) add_simulation_test(IDF_FILE VaryingLocationAndOrientation.idf EPW_FILE USA_CO_Golden-NREL.724666_TMY3.epw) -add_simulation_test(IDF_FILE US+SF+CZ4A+hp+crawlspace+IECC_2006_VRF.idf EPW_FILE USA_NY_New.York-John.F.Kennedy.Intl.AP.744860_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_5Zone.idf EPW_FILE USA_FL_Miami.Intl.AP.722020_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_5Zone_wAirloop.idf EPW_FILE USA_FL_Miami.Intl.AP.722020_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_FluidTCtrl_5Zone.idf EPW_FILE USA_FL_Miami.Intl.AP.722020_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_FluidTCtrl_HR_5Zone.idf EPW_FILE USA_FL_Miami.Intl.AP.722020_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_FluidTCtrl_wSuppHeater_5Zone.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) add_simulation_test(IDF_FILE VariableRefrigerantFlow_wSuppHeater_5Zone.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) +add_simulation_test(IDF_FILE US+SF+CZ4A+hp+crawlspace+IECC_2006_VRF.idf EPW_FILE USA_NY_New.York-John.F.Kennedy.Intl.AP.744860_TMY3.epw) add_simulation_test(IDF_FILE VentilatedSlab.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) add_simulation_test(IDF_FILE VentilatedSlab_SeriesSlabs.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) add_simulation_test(IDF_FILE VentilationSimpleTest.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) diff --git a/tst/EnergyPlus/unit/HVACVariableRefrigerantFlow.unit.cc b/tst/EnergyPlus/unit/HVACVariableRefrigerantFlow.unit.cc index c7f26710338..c0fb35eabbc 100644 --- a/tst/EnergyPlus/unit/HVACVariableRefrigerantFlow.unit.cc +++ b/tst/EnergyPlus/unit/HVACVariableRefrigerantFlow.unit.cc @@ -13273,9 +13273,9 @@ TEST_F(EnergyPlusFixture, VRF_FluidTCtrl_ReportOutputVerificationTest) EXPECT_EQ(0.0, thisVRFTU.CoolOutAirMassFlow); EXPECT_EQ(0.0, thisVRFTU.HeatOutAirMassFlow); EXPECT_EQ(0.0, thisVRFTU.NoCoolHeatOutAirMassFlow); - EXPECT_NEAR(5125.0840, thisDXCoolingCoil.TotalCoolingEnergyRate, 0.0001); - EXPECT_NEAR(4999.8265, thisVRFTU.TotalCoolingRate, 0.0001); - EXPECT_NEAR(125.2573 * thisDXCoolingCoil.CoolingCoilRuntimeFraction, thisFan->totalPower, 0.0001); + EXPECT_NEAR(5730.4055, thisDXCoolingCoil.TotalCoolingEnergyRate, 0.0001); + EXPECT_NEAR(5645.5696, thisVRFTU.TotalCoolingRate, 0.0001); + EXPECT_NEAR(84.8359, thisFan->totalPower, 0.0001); EXPECT_NEAR(thisDXCoolingCoil.TotalCoolingEnergyRate, (thisVRFTU.TotalCoolingRate + thisFan->totalPower), 0.0001); EXPECT_NEAR(0.8930, state->dataHVACVarRefFlow->VRF(1).VRFCondCyclingRatio, 0.0001); EXPECT_NEAR(state->dataHVACVarRefFlow->VRF(1).OUFanPower, state->dataHVACVarRefFlow->VRF(1).RatedOUFanPower, 0.0001); @@ -18306,7 +18306,7 @@ TEST_F(EnergyPlusFixture, VRF_FluidTCtrl_SupplementalHtgCoilTest) // test the TU1 outputs; TU1 provides cooling EXPECT_NEAR(156.0, TU1_fan->totalPower, 0.1); EXPECT_NEAR(6153.6, TU1_dx_clg_coil.SensCoolingEnergyRate, 0.1); - EXPECT_NEAR(6723.6, VRFTU1.TotalCoolingRate, 0.1); + EXPECT_NEAR(6731.2, VRFTU1.TotalCoolingRate, 0.1); EXPECT_NEAR(-5997.6, VRFTU1.TerminalUnitSensibleRate, 0.1); EXPECT_EQ(0.0, TU1_dx_htg_coil.TotalHeatingEnergyRate); EXPECT_EQ(0.0, VRFTU1.SuppHeatingCoilLoad); @@ -20442,7 +20442,7 @@ TEST_F(EnergyPlusFixture, VRF_FluidTCtrl_offSupplementalHtgCoilTest) // test the TU1 outputs; TU1 provides cooling with supp heating coil scheduled off EXPECT_NEAR(156.0, TU1_fan->totalPower, 0.1); EXPECT_NEAR(6153.6, TU1_dx_clg_coil.SensCoolingEnergyRate, 0.1); - EXPECT_NEAR(6723.6, VRFTU1.TotalCoolingRate, 0.1); + EXPECT_NEAR(6731.2, VRFTU1.TotalCoolingRate, 0.1); EXPECT_NEAR(-5997.6, VRFTU1.TerminalUnitSensibleRate, 0.1); EXPECT_EQ(0.0, TU1_dx_htg_coil.TotalHeatingEnergyRate); EXPECT_EQ(0.0, VRFTU1.SuppHeatingCoilLoad); @@ -20466,7 +20466,7 @@ TEST_F(EnergyPlusFixture, VRF_FluidTCtrl_offSupplementalHtgCoilTest) EXPECT_NEAR(27.1, TU2_fan->totalPower, 0.1); EXPECT_EQ(0.0, TU2_dx_clg_coil.SensCoolingEnergyRate); EXPECT_NEAR(2085.6, VRFTU2.SensibleCoolingRate, 0.1); - EXPECT_NEAR(3961.64, VRFTU2.TotalCoolingRate, 0.1); + EXPECT_NEAR(3988.04, VRFTU2.TotalCoolingRate, 0.1); EXPECT_NEAR(VRFTU2.TotalCoolingRate, VRFTU2.SensibleCoolingRate + VRFTU2.LatentCoolingRate, 0.1); EXPECT_NEAR(-2085.6, VRFTU2.TerminalUnitSensibleRate, 0.1); EXPECT_EQ(0.0, TU2_dx_htg_coil.TotalHeatingEnergyRate);