diff --git a/src/EnergyPlus/ConvectionCoefficients.cc b/src/EnergyPlus/ConvectionCoefficients.cc index 7c33104830f..8b5f06a4b77 100644 --- a/src/EnergyPlus/ConvectionCoefficients.cc +++ b/src/EnergyPlus/ConvectionCoefficients.cc @@ -4054,7 +4054,9 @@ void DynamicIntConvSurfaceClassification(EnergyPlusData &state, int const SurfNu } } break; case DataZoneEquipment::ZoneEquipType::VentilatedSlab: - case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiant: { + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantConstFlow: + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantVarFlow: + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantElectric: { if (zoneEquipConfig.InFloorActiveElement) { for (int spaceNumLoop : zone.spaceIndexes) { auto const &thisSpace = state.dataHeatBal->space(spaceNumLoop); diff --git a/src/EnergyPlus/DataZoneEquipment.cc b/src/EnergyPlus/DataZoneEquipment.cc index 488102e47a3..64a59f8158b 100644 --- a/src/EnergyPlus/DataZoneEquipment.cc +++ b/src/EnergyPlus/DataZoneEquipment.cc @@ -126,10 +126,13 @@ constexpr std::array(ZoneEquipType::Num)> zon "ZONEHVAC:BASEBOARD:RADIANTCONVECTIVE:WATER", // BaseboardWater "ZONEHVAC:BASEBOARD:RADIANTCONVECTIVE:ELECTRIC", // BaseboardElectric "ZONEHVAC:HIGHTEMPERATURERADIANT", // HighTempRadiant - "ZONEHVAC:LOWTEMPERATURERADIANT:VARIABLEFLOW", // LowTempRadiant + "ZONEHVAC:LOWTEMPERATURERADIANT:CONSTANTFLOW", // LowTempRadiantConstFlow + "ZONEHVAC:LOWTEMPERATURERADIANT:VARIABLEFLOW", // LowTempRadiantVarFlow + "ZONEHVAC:LOWTEMPERATURERADIANT:ELECTRIC", // LowTempRadiantElectric "FAN:ZONEEXHAUST", // ExhaustFan "HEATEXCHANGER:AIRTOAIR:FLATPLATE", // HeatExchanger - "WATERHEATER:HEATPUMP:PUMPEDCONDENSER", // HeatPumpWaterHeater + "WATERHEATER:HEATPUMP:PUMPEDCONDENSER", // HeatPumpWaterHeaterPumpedCondenser + "WATERHEATER:HEATPUMP:WRAPPEDCONDENSER", // HeatPumpWaterHeaterWrappedCondenser "ZONEHVAC:DEHUMIDIFIER:DX", // DXDehumidifier "ZONEHVAC:REFRIGERATIONCHILLERSET", // RefrigerationAirChillerSet "ZONEHVAC:FORCEDAIR:USERDEFINED", // UserDefinedVACForcedAir @@ -984,16 +987,9 @@ void processZoneEquipmentInput(EnergyPlusData &state, } if (thisZoneEquipList.EquipType(ZoneEquipTypeNum) == ZoneEquipType::Invalid) { - if (thisZoneEquipList.EquipTypeName(ZoneEquipTypeNum) == "ZONEHVAC:LOWTEMPERATURERADIANT:CONSTANTFLOW" || - thisZoneEquipList.EquipTypeName(ZoneEquipTypeNum) == "ZONEHVAC:LOWTEMPERATURERADIANT:ELECTRIC") { - thisZoneEquipList.EquipType(ZoneEquipTypeNum) = ZoneEquipType::LowTemperatureRadiant; - } else if (thisZoneEquipList.EquipTypeName(ZoneEquipTypeNum) == "WATERHEATER:HEATPUMP:WRAPPEDCONDENSER") { - thisZoneEquipList.EquipType(ZoneEquipTypeNum) = DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeater; - } else { - ShowSevereError(state, format("{}{} = {}", RoutineName, CurrentModuleObject, thisZoneEquipList.Name)); - ShowContinueError(state, format("..Invalid Equipment Type = {}", thisZoneEquipList.EquipType(ZoneEquipTypeNum))); - state.dataZoneEquip->GetZoneEquipmentDataErrorsFound = true; - } + ShowSevereError(state, format("{}{} = {}", RoutineName, CurrentModuleObject, thisZoneEquipList.Name)); + ShowContinueError(state, format("..Invalid Equipment Type = {}", thisZoneEquipList.EquipType(ZoneEquipTypeNum))); + state.dataZoneEquip->GetZoneEquipmentDataErrorsFound = true; } } } // End parsing all extensible Zone Equipment info @@ -1216,17 +1212,10 @@ void processZoneEquipSplitterInput(EnergyPlusData &state, auto &ip = state.dataInputProcessing->inputProcessor; std::string const zeqTypeName = ip->getAlphaFieldValue(objectFields, objectSchemaProps, "zone_equipment_object_type"); thisZeqSplitter.zoneEquipType = DataZoneEquipment::ZoneEquipType(getEnumValue(zoneEquipTypeNamesUC, zeqTypeName)); - // SpaceHVAC TODO: Copied this block from processZoneEquipmentInput section for ZoneHVAC:EquipmentList - seems this could be simplified if (thisZeqSplitter.zoneEquipType == ZoneEquipType::Invalid) { - if (zeqTypeName == "ZONEHVAC:LOWTEMPERATURERADIANT:CONSTANTFLOW" || zeqTypeName == "ZONEHVAC:LOWTEMPERATURERADIANT:ELECTRIC") { - thisZeqSplitter.zoneEquipType = ZoneEquipType::LowTemperatureRadiant; - } else if (zeqTypeName == "WATERHEATER:HEATPUMP:WRAPPEDCONDENSER") { - thisZeqSplitter.zoneEquipType = DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeater; - } else { - ShowSevereError(state, format("{}{} = {}", RoutineName, zeqSplitterModuleObject, thisZeqSplitter.Name)); - ShowContinueError(state, format("..Invalid Equipment Type = {}", zeqTypeName)); - state.dataZoneEquip->GetZoneEquipmentDataErrorsFound = true; - } + ShowSevereError(state, format("{}{} = {}", RoutineName, zeqSplitterModuleObject, thisZeqSplitter.Name)); + ShowContinueError(state, format("..Invalid Equipment Type = {}", zeqTypeName)); + state.dataZoneEquip->GetZoneEquipmentDataErrorsFound = true; } thisZeqSplitter.zoneEquipName = ip->getAlphaFieldValue(objectFields, objectSchemaProps, "zone_equipment_name"); diff --git a/src/EnergyPlus/DataZoneEquipment.hh b/src/EnergyPlus/DataZoneEquipment.hh index 008be07c127..8d7b3e638b2 100644 --- a/src/EnergyPlus/DataZoneEquipment.hh +++ b/src/EnergyPlus/DataZoneEquipment.hh @@ -135,10 +135,13 @@ namespace DataZoneEquipment { BaseboardWater, BaseboardElectric, HighTemperatureRadiant, - LowTemperatureRadiant, + LowTemperatureRadiantConstFlow, + LowTemperatureRadiantVarFlow, + LowTemperatureRadiantElectric, ExhaustFan, HeatExchanger, - HeatPumpWaterHeater, + HeatPumpWaterHeaterPumpedCondenser, + HeatPumpWaterHeaterWrappedCondenser, DehumidifierDX, RefrigerationChillerSet, UserDefinedHVACForcedAir, diff --git a/src/EnergyPlus/RoomAirModelManager.cc b/src/EnergyPlus/RoomAirModelManager.cc index 8c890593867..053ca64018f 100644 --- a/src/EnergyPlus/RoomAirModelManager.cc +++ b/src/EnergyPlus/RoomAirModelManager.cc @@ -2837,7 +2837,8 @@ namespace RoomAir { // SupplyNodeName = ""; // ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? May not use } break; - case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeater: { // WaterHeater : HeatPump + case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeaterPumpedCondenser: + case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeaterWrappedCondenser: { // WaterHeater : HeatPump EquipIndex = WaterThermalTanks::getHeatPumpWaterHeaterIndex(state, EquipName); if (EquipIndex == 0) return EquipFind; ReturnNodeNum = state.dataWaterThermalTanks->HPWaterHeater(EquipIndex).HeatPumpAirInletNode; diff --git a/src/EnergyPlus/SystemReports.cc b/src/EnergyPlus/SystemReports.cc index e862f4ba56a..a7d41e1f41c 100644 --- a/src/EnergyPlus/SystemReports.cc +++ b/src/EnergyPlus/SystemReports.cc @@ -4040,11 +4040,14 @@ void ReportVentilationLoads(EnergyPlusData &state) case DataZoneEquipment::ZoneEquipType::BaseboardConvectiveElectric: case DataZoneEquipment::ZoneEquipType::HighTemperatureRadiant: // not sure how HeatExchanger:* could be used as zone equipment ????? - case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiant: + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantConstFlow: + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantVarFlow: + case DataZoneEquipment::ZoneEquipType::LowTemperatureRadiantElectric: case DataZoneEquipment::ZoneEquipType::ExhaustFan: case DataZoneEquipment::ZoneEquipType::HeatExchanger: // HPWaterHeater can be used as zone equipment - case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeater: + case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeaterPumpedCondenser: + case DataZoneEquipment::ZoneEquipType::HeatPumpWaterHeaterWrappedCondenser: case DataZoneEquipment::ZoneEquipType::BaseboardWater: case DataZoneEquipment::ZoneEquipType::DehumidifierDX: case DataZoneEquipment::ZoneEquipType::BaseboardSteam: diff --git a/src/EnergyPlus/ZoneEquipmentManager.cc b/src/EnergyPlus/ZoneEquipmentManager.cc index e474238c2f2..3b889ff284d 100644 --- a/src/EnergyPlus/ZoneEquipmentManager.cc +++ b/src/EnergyPlus/ZoneEquipmentManager.cc @@ -3787,9 +3787,9 @@ void SimZoneEquipment(EnergyPlusData &state, bool const FirstHVACIteration, bool // via SumLatentHTRadSys... so setting LatOutputProvided = 0.0 } break; - case ZoneEquipType::LowTemperatureRadiant: { // 'ZoneHVAC:LowTemperatureRadiant:VariableFlow', - // 'ZoneHVAC:LowTemperatureRadiant:ConstantFlow' - // 'ZoneHVAC:LowTemperatureRadiant:Electric' + case ZoneEquipType::LowTemperatureRadiantConstFlow: + case ZoneEquipType::LowTemperatureRadiantVarFlow: + case ZoneEquipType::LowTemperatureRadiantElectric: { LowTempRadiantSystem::SimLowTempRadiantSystem(state, state.dataZoneEquipmentManager->PrioritySimOrder(EquipTypeNum).EquipName, FirstHVACIteration, @@ -3836,7 +3836,8 @@ void SimZoneEquipment(EnergyPlusData &state, bool const FirstHVACIteration, bool zoneEquipList.EquipIndex(EquipPtr)); } break; - case ZoneEquipType::HeatPumpWaterHeater: { // 'WaterHeater:HeatPump:PumpedCondenser' + case ZoneEquipType::HeatPumpWaterHeaterPumpedCondenser: + case ZoneEquipType::HeatPumpWaterHeaterWrappedCondenser: { WaterThermalTanks::SimHeatPumpWaterHeater(state, state.dataZoneEquipmentManager->PrioritySimOrder(EquipTypeNum).EquipName, FirstHVACIteration,