diff --git a/src/EnergyPlus/Coils/CoilCoolingDX.cc b/src/EnergyPlus/Coils/CoilCoolingDX.cc index 6ce7bef2a44..95eb0228bd3 100644 --- a/src/EnergyPlus/Coils/CoilCoolingDX.cc +++ b/src/EnergyPlus/Coils/CoilCoolingDX.cc @@ -70,6 +70,7 @@ #include #include #include +#include #include using namespace EnergyPlus; @@ -1047,19 +1048,7 @@ void CoilCoolingDX::reportAllStandardRatings(EnergyPlusData &state) } else { OutputReportPredefined::PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP, coil.name, "N/A"); } - OutputReportPredefined::addFootNoteSubTable( - state, - state.dataOutRptPredefined->pdstDXCoolCoil, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2017.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard 340/360-2007. " - "
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - Ratings not yet " - "supported in EnergyPlus.
" - "3 - SEER (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard."); + OutputReportPredefined::addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil, StandardRatings::AHRI2017FOOTNOTE); // AHRI 2023 Standard SEER2 Calculations if (state.dataHVACGlobal->StandardRatingsMyCoolOneTimeFlag2) { @@ -1125,20 +1114,7 @@ void CoilCoolingDX::reportAllStandardRatings(EnergyPlusData &state) } else { OutputReportPredefined::PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP_2023, coil.name, "N/A"); } - OutputReportPredefined::addFootNoteSubTable( - state, - state.dataOutRptPredefined->pdstDXCoolCoil_2023, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2023.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard 340/360-2022. " - "
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - Ratings not yet " - "supported in EnergyPlus.
" - "3 - SEER2 (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER2 (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard.
" - "4 - Value for the Full Speed of the coil."); + OutputReportPredefined::addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil_2023, StandardRatings::AHRI2023FOOTNOTE); } } state.dataCoilCooingDX->stillNeedToReportStandardRatings = false; diff --git a/src/EnergyPlus/DXCoils.cc b/src/EnergyPlus/DXCoils.cc index 3f9d45b9969..885b66cb176 100644 --- a/src/EnergyPlus/DXCoils.cc +++ b/src/EnergyPlus/DXCoils.cc @@ -14824,18 +14824,7 @@ void CalcTwoSpeedDXCoilStandardRating(EnergyPlusData &state, int const DXCoilNum PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilSEERUserIP, thisDXCoil.Name, "N/A"); PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilSEERStandardIP, thisDXCoil.Name, "N/A"); - addFootNoteSubTable( - state, - state.dataOutRptPredefined->pdstDXCoolCoil, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2017.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard 340/360-2007.
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - Ratings not yet supported in " - "EnergyPlus.
" - "3 - SEER (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard."); + addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil, StandardRatings::AHRI2017FOOTNOTE); PreDefTableEntry(state, state.dataOutRptPredefined->pdchVAVDXCoolCoilType, thisDXCoil.Name, "Coil:Cooling:DX:TwoSpeed"); if (thisDXCoil.RateWithInternalStaticAndFanObject) { diff --git a/src/EnergyPlus/OutputReportTabular.cc b/src/EnergyPlus/OutputReportTabular.cc index 0c404c76d54..c4a1564b029 100644 --- a/src/EnergyPlus/OutputReportTabular.cc +++ b/src/EnergyPlus/OutputReportTabular.cc @@ -17188,7 +17188,7 @@ void WriteTable(EnergyPlusData &state, // end the table tbl_stream << "\n"; if (!footnoteText.empty()) { - tbl_stream << fmt::format("{}\n", footnoteText); + tbl_stream << fmt::format("
{}
\n", footnoteText); } tbl_stream << "

\n"; } else if (thisStyle == TableStyle::XML) { @@ -17316,7 +17316,11 @@ void WriteTable(EnergyPlusData &state, } } if (!footnoteText.empty()) { - tbl_stream << fmt::format(" {}\n", footnoteText); + if (footnoteText.find("\n", footnoteText); + } else { + tbl_stream << fmt::format(" {}\n", footnoteText); + } } } } else { diff --git a/src/EnergyPlus/StandardRatings.cc b/src/EnergyPlus/StandardRatings.cc index 6d43fbcdd2c..fb0bdddc744 100644 --- a/src/EnergyPlus/StandardRatings.cc +++ b/src/EnergyPlus/StandardRatings.cc @@ -6804,18 +6804,7 @@ namespace StandardRatings { } else { PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP, CompName, "N/A"); } - addFootNoteSubTable(state, - state.dataOutRptPredefined->pdstDXCoolCoil, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2017.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/hv (39565 W) - calculated as per AHRI " - "Standard 340/360-2007.
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - " - "Ratings not yet supported in EnergyPlus.
" - "3 - SEER (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard."); + addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil, StandardRatings::AHRI2017FOOTNOTE); } else { // ANSI/AHRI 210/240 Standard 2023 Ratings | SEER2 if (state.dataHVACGlobal->StandardRatingsMyCoolOneTimeFlag2) { @@ -6862,19 +6851,7 @@ namespace StandardRatings { } else { PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP_2023, CompName, "N/A"); } - addFootNoteSubTable(state, - state.dataOutRptPredefined->pdstDXCoolCoil_2023, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2023.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard " - "340/360-2022.
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - " - "Ratings not yet supported in EnergyPlus.
" - "3 - SEER2 (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER2 (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard.
" - "4 - Value for the Full Speed of the coil."); + addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil_2023, StandardRatings::AHRI2023FOOTNOTE); } break; } @@ -6973,18 +6950,7 @@ namespace StandardRatings { } else { PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP, CompName, "N/A"); } - addFootNoteSubTable(state, - state.dataOutRptPredefined->pdstDXCoolCoil, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2017.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard " - "340/360-2007.
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - " - "Ratings not yet supported in EnergyPlus.
" - "3 - SEER (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard."); + addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil, StandardRatings::AHRI2017FOOTNOTE); } else { // ANSI/AHRI 210/240 Standard 2023 Ratings | SEER2 if (state.dataHVACGlobal->StandardRatingsMyCoolOneTimeFlag2) { @@ -7030,19 +6996,7 @@ namespace StandardRatings { } else { PreDefTableEntry(state, state.dataOutRptPredefined->pdchDXCoolCoilIEERIP_2023, CompName, "N/A"); } - addFootNoteSubTable(state, - state.dataOutRptPredefined->pdstDXCoolCoil_2023, - "ANSI/AHRI ratings account for supply air fan heat and electric power.
" - "1 - EnergyPlus object type.
" - "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2023.
" - "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard " - "340/360-2022.
" - "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - " - "Ratings not yet supported in EnergyPlus.
" - "3 - SEER2 (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" - "  SEER2 (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" - "from the appropriate AHRI standard.
" - "4 - Value for the Full Speed of the coil."); + addFootNoteSubTable(state, state.dataOutRptPredefined->pdstDXCoolCoil_2023, StandardRatings::AHRI2023FOOTNOTE); } break; diff --git a/src/EnergyPlus/StandardRatings.hh b/src/EnergyPlus/StandardRatings.hh index 301a69f0b2b..d9f36918fda 100644 --- a/src/EnergyPlus/StandardRatings.hh +++ b/src/EnergyPlus/StandardRatings.hh @@ -58,6 +58,9 @@ #include #include +// C++ Headers +#include + namespace EnergyPlus { // Forward declarations @@ -76,6 +79,31 @@ namespace StandardRatings { Real64 constexpr HeatingOutdoorCoilInletAirDBTempH3Test(-8.33); // Outdoor air dry-bulb temp in degrees C (17F) // Test H3 (low and High Speed) Std. AHRI 210/240 + static constexpr std::string_view AHRI2017FOOTNOTE = + "ANSI/AHRI ratings account for supply air fan heat and electric power.
" + "1 - EnergyPlus object type.
" + "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2017.
" + "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard 340/360-2007. " + "
" + "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - Ratings not yet " + "supported in EnergyPlus.
" + "3 - SEER (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" + "  SEER (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" + "from the appropriate AHRI standard."; + + static constexpr std::string_view AHRI2023FOOTNOTE = + "ANSI/AHRI ratings account for supply air fan heat and electric power.
" + "1 - EnergyPlus object type.
" + "2 - Capacity less than 65K Btu/h (19050 W) - calculated as per AHRI Standard 210/240-2023.
" + "  Capacity of 65K Btu/h (19050 W) to less than 135K Btu/h (39565 W) - calculated as per AHRI Standard 340/360-2022. " + "
" + "  Capacity from 135K (39565 W) to 250K Btu/hr (73268 W) - calculated as per AHRI Standard 365-2009 - Ratings not yet " + "supported in EnergyPlus.
" + "3 - SEER2 (User) is calculated using user-input PLF curve and cooling coefficient of degradation.
" + "  SEER2 (Standard) is calculated using the default PLF curve and cooling coefficient of degradation" + "from the appropriate AHRI standard.
" + "4 - Value for the Full Speed of the coil."; + // Defrost strategy (heat pump only) enum class DefrostStrat {