@@ -255,7 +255,7 @@ namespace VariableSpeedCoils {
255255 // Allocate Arrays
256256 if (state.dataVariableSpeedCoils->NumVarSpeedCoils > 0) {
257257 state.dataVariableSpeedCoils->VarSpeedCoil.allocate(state.dataVariableSpeedCoils->NumVarSpeedCoils);
258- state.dataHeatBal->HeatReclaimVS_DXCoil .allocate(state.dataVariableSpeedCoils->NumVarSpeedCoils);
258+ state.dataHeatBal->HeatReclaimVS_Coil .allocate(state.dataVariableSpeedCoils->NumVarSpeedCoils);
259259 }
260260
261261 state.dataInputProcessing->inputProcessor->getObjectDefMaxArgs(
@@ -313,6 +313,8 @@ namespace VariableSpeedCoils {
313313
314314 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).bIsDesuperheater = false;
315315 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Name = AlphArray(1);
316+ state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).Name = state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Name;
317+ state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).SourceType = CurrentModuleObject;
316318 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).CoolHeatType = "COOLING";
317319 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).VSCoilType = HVAC::Coil_CoolingWaterToAirHPVSEquationFit;
318320 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).VarSpeedCoilType =
@@ -848,8 +850,8 @@ namespace VariableSpeedCoils {
848850 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).bIsDesuperheater = false;
849851 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Name = AlphArray(1);
850852 // Initialize DataHeatBalance heat reclaim variable name for use by heat reclaim coils
851- state.dataHeatBal->HeatReclaimVS_DXCoil (DXCoilNum).Name = state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Name;
852- state.dataHeatBal->HeatReclaimVS_DXCoil (DXCoilNum).SourceType = CurrentModuleObject;
853+ state.dataHeatBal->HeatReclaimVS_Coil (DXCoilNum).Name = state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Name;
854+ state.dataHeatBal->HeatReclaimVS_Coil (DXCoilNum).SourceType = CurrentModuleObject;
853855 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).CoolHeatType = "COOLING";
854856 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).VSCoilType = HVAC::Coil_CoolingAirToAirVariableSpeed;
855857 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).VarSpeedCoilType = HVAC::cAllCoilTypes(HVAC::Coil_CoolingAirToAirVariableSpeed);
@@ -4298,7 +4300,7 @@ namespace VariableSpeedCoils {
42984300 }
42994301
43004302 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).SimFlag = true;
4301- state.dataHeatBal->HeatReclaimVS_DXCoil (DXCoilNum).AvailCapacity = 0.0;
4303+ state.dataHeatBal->HeatReclaimVS_Coil (DXCoilNum).AvailCapacity = 0.0;
43024304
43034305 state.dataVariableSpeedCoils->MyEnvrnFlag(DXCoilNum) = false;
43044306
@@ -4426,7 +4428,7 @@ namespace VariableSpeedCoils {
44264428 state.dataVariableSpeedCoils->VSHPWHHeatingCapacity = 0.0; // Used by Heat Pump:Water Heater object as total water heating capacity [W]
44274429 state.dataVariableSpeedCoils->VSHPWHHeatingCOP = 0.0; // Used by Heat Pump:Water Heater object as water heating COP [W/W]
44284430 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).OutletWaterTemp = state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).InletWaterTemp;
4429- state.dataHeatBal->HeatReclaimVS_DXCoil (DXCoilNum).AvailCapacity = 0.0;
4431+ state.dataHeatBal->HeatReclaimVS_Coil (DXCoilNum).AvailCapacity = 0.0;
44304432 }
44314433
44324434 void SizeVarSpeedCoil(EnergyPlusData &state, int const DXCoilNum, bool &ErrorsFound)
@@ -6393,13 +6395,11 @@ namespace VariableSpeedCoils {
63936395 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).QSensible = state.dataVariableSpeedCoils->QSensible;
63946396 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).QLatent =
63956397 state.dataVariableSpeedCoils->QLoadTotal - state.dataVariableSpeedCoils->QSensible;
6396- state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).QSource = state.dataVariableSpeedCoils->QSource;
63976398 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).Energy = state.dataVariableSpeedCoils->Winput * TimeStepSysSec;
63986399 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EnergyLoadTotal = state.dataVariableSpeedCoils->QLoadTotal * TimeStepSysSec;
63996400 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EnergySensible = state.dataVariableSpeedCoils->QSensible * TimeStepSysSec;
64006401 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EnergyLatent =
64016402 (state.dataVariableSpeedCoils->QLoadTotal - state.dataVariableSpeedCoils->QSensible) * TimeStepSysSec;
6402- state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EnergySource = state.dataVariableSpeedCoils->QSource * TimeStepSysSec;
64036403 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).CrankcaseHeaterConsumption =
64046404 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).CrankcaseHeaterPower * TimeStepSysSec;
64056405 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EvapWaterConsump =
@@ -6431,7 +6431,9 @@ namespace VariableSpeedCoils {
64316431 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).WaterMassFlowRate = 0.0;
64326432 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).OutletWaterTemp = 0.0;
64336433 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).OutletWaterEnthalpy = 0.0;
6434- state.dataHeatBal->HeatReclaimVS_DXCoil(DXCoilNum).AvailCapacity = state.dataVariableSpeedCoils->QSource;
6434+ state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).AvailCapacity = state.dataVariableSpeedCoils->QSource;
6435+ if (state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).WaterHeatingDesuperheaterReclaimedHeatTotal > 0.0)
6436+ state.dataVariableSpeedCoils->QSource -= state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).WaterHeatingDesuperheaterReclaimedHeatTotal;
64356437 } else {
64366438 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).WaterMassFlowRate = state.dataVariableSpeedCoils->SourceSideMassFlowRate;
64376439 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).OutletWaterTemp =
@@ -6440,7 +6442,12 @@ namespace VariableSpeedCoils {
64406442 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).OutletWaterEnthalpy =
64416443 state.dataVariableSpeedCoils->SourceSideInletEnth +
64426444 state.dataVariableSpeedCoils->QSource / state.dataVariableSpeedCoils->SourceSideMassFlowRate;
6445+ state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).AvailCapacity = state.dataVariableSpeedCoils->QSource;
6446+ if (state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).WaterHeatingDesuperheaterReclaimedHeatTotal > 0.0)
6447+ state.dataVariableSpeedCoils->QSource -= state.dataHeatBal->HeatReclaimVS_Coil(DXCoilNum).WaterHeatingDesuperheaterReclaimedHeatTotal;
64436448 }
6449+ state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).QSource = state.dataVariableSpeedCoils->QSource;
6450+ state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).EnergySource = state.dataVariableSpeedCoils->QSource * TimeStepSysSec;
64446451
64456452 state.dataVariableSpeedCoils->VarSpeedCoil(DXCoilNum).QWasteHeat = QWasteHeat;
64466453
0 commit comments