Skip to content

Commit

Permalink
Merge branch 'develop' of https://github.com/NREL/EnergyPlus into #6044
Browse files Browse the repository at this point in the history
…-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA
  • Loading branch information
rraustad committed Jun 13, 2017
2 parents 19ee338 + f6f8fec commit 1eb51a3
Show file tree
Hide file tree
Showing 7 changed files with 53 additions and 52 deletions.
63 changes: 35 additions & 28 deletions src/EnergyPlus/DXCoils.cc

Large diffs are not rendered by default.

5 changes: 2 additions & 3 deletions src/EnergyPlus/DXCoils.hh
Expand Up @@ -899,10 +899,9 @@ namespace DXCoils {
Real64 const InletAirTemp, // inlet air temperature [C]
Real64 const InletAirHumRat, // inlet air humidity ratio [kg water / kg dry air]
Real64 const TotCap, // total cooling capacity [Watts]
Real64 const AirMassFlowRate, // the air mass flow rate at the given capacity [kg/s]
Real64 const AirVolFlowRate, // the air volume flow rate at the given capacity [m3/s]
Real64 const SHR, // sensible heat ratio at the given capacity and flow rate
bool const PrintFlag = true, // flag used to print warnings if desired
Real64 const BaroPress=StdBaroPress // Barometric pressure [Pa]
bool const PrintFlag = true // flag used to print warnings if desired
);

Real64
Expand Down
6 changes: 2 additions & 4 deletions src/EnergyPlus/ReportSizingManager.cc
Expand Up @@ -979,8 +979,7 @@ namespace ReportSizingManager {
}

// check that the autosized SHR corresponds to a valid apperatus dew point (ADP) temperature
DesMassFlow = DataFlowUsedForSizing * PsyRhoAirFnPbTdbW( StdBaroPress, RatedInletAirTemp, RatedInletAirHumRat, CallingRoutine );
AutosizeDes = ValidateADP( CompType, CompName, RatedInletAirTemp, RatedInletAirHumRat, DataCapacityUsedForSizing, DesMassFlow, AutosizeDes, CallingRoutine );
AutosizeDes = ValidateADP( CompType, CompName, RatedInletAirTemp, RatedInletAirHumRat, DataCapacityUsedForSizing, DataFlowUsedForSizing, AutosizeDes, CallingRoutine );

} else {
AutosizeDes = 1.0;
Expand Down Expand Up @@ -1704,8 +1703,7 @@ namespace ReportSizingManager {
}

// check that the autosized SHR corresponds to a valid apperatus dew point (ADP) temperature
DesMassFlow = DataFlowUsedForSizing * PsyRhoAirFnPbTdbW( StdBaroPress, RatedInletAirTemp, RatedInletAirHumRat, CallingRoutine );
AutosizeDes = ValidateADP( CompType, CompName, RatedInletAirTemp, RatedInletAirHumRat, DataCapacityUsedForSizing, DesMassFlow, AutosizeDes, CallingRoutine );
AutosizeDes = ValidateADP( CompType, CompName, RatedInletAirTemp, RatedInletAirHumRat, DataCapacityUsedForSizing, DataFlowUsedForSizing, AutosizeDes, CallingRoutine );

} else {
ShowSevereError( CallingRoutine + ' ' + CompType + ' ' + CompName );
Expand Down
2 changes: 1 addition & 1 deletion testfiles/1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf
Expand Up @@ -374,7 +374,7 @@
Main Cooling Coil 1, !- Name
System Availability Schedule, !- Availability Schedule Name
148300, !- Gross Rated Total Cooling Capacity {W}
0.85, !- Gross Rated Sensible Heat Ratio
0.83, !- Gross Rated Sensible Heat Ratio
4.5669, !- Gross Rated Cooling COP {W/W}
8.5, !- Rated Air Flow Rate {m3/s}
, !- Rated Evaporator Fan Power Per Volume Flow Rate {W/(m3/s)}
Expand Down
2 changes: 1 addition & 1 deletion testfiles/DOAToVRF.idf
Expand Up @@ -2485,7 +2485,7 @@
Sizing:Zone,
SPACE1-1, !- Zone or ZoneList Name
SupplyAirTemperature, !- Zone Cooling Design Supply Air Temperature Input Method
12.5, !- Zone Cooling Design Supply Air Temperature {C}
12.0, !- Zone Cooling Design Supply Air Temperature {C}
, !- Zone Cooling Design Supply Air Temperature Difference {deltaC}
SupplyAirTemperature, !- Zone Heating Design Supply Air Temperature Input Method
50., !- Zone Heating Design Supply Air Temperature {C}
Expand Down
4 changes: 2 additions & 2 deletions testfiles/RefBldgSmallOfficeNew2004_Chicago.idf
Expand Up @@ -2470,7 +2470,7 @@ Fan:SystemModel,
Sizing:Zone,
Perimeter_ZN_1, !- Zone or ZoneList Name
SupplyAirTemperature, !- Zone Cooling Design Supply Air Temperature Input Method
14.0000, !- Zone Cooling Design Supply Air Temperature {C}
13.9000, !- Zone Cooling Design Supply Air Temperature {C}
, !- Zone Cooling Design Supply Air Temperature Difference {deltaC}
SupplyAirTemperature, !- Zone Heating Design Supply Air Temperature Input Method
40.0000, !- Zone Heating Design Supply Air Temperature {C}
Expand Down Expand Up @@ -2532,7 +2532,7 @@ Fan:SystemModel,
Sizing:Zone,
Perimeter_ZN_3, !- Zone or ZoneList Name
SupplyAirTemperature, !- Zone Cooling Design Supply Air Temperature Input Method
14.0000, !- Zone Cooling Design Supply Air Temperature {C}
13.9000, !- Zone Cooling Design Supply Air Temperature {C}
, !- Zone Cooling Design Supply Air Temperature Difference {deltaC}
SupplyAirTemperature, !- Zone Heating Design Supply Air Temperature Input Method
40.0000, !- Zone Heating Design Supply Air Temperature {C}
Expand Down
23 changes: 10 additions & 13 deletions tst/EnergyPlus/unit/DXCoils.unit.cc
Expand Up @@ -943,30 +943,28 @@ namespace EnergyPlus {
Real64 InletAirHumRat;
const Real64 TotalCap( 1303.5987246916557 );
const Real64 AirVolFlowRate( 0.085422486640000003 );
Real64 AirMassFlowRate;
const Real64 SHR( 0.88 );
Real64 AirPressure;
Real64 CBF_expected;
Real64 CBF_calculated;

AirPressure = StdPressureSeaLevel;
InletAirHumRat = Psychrometrics::PsyWFnTdbTwbPb(InletDBTemp, InletWBTemp, AirPressure );
AirMassFlowRate = AirVolFlowRate * Psychrometrics::PsyRhoAirFnPbTdbW( AirPressure, InletDBTemp, InletAirHumRat );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirMassFlowRate, SHR, true, AirPressure );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirVolFlowRate, SHR, true );
CBF_expected = 0.17268167698750708;
EXPECT_DOUBLE_EQ( CBF_calculated, CBF_expected );

// push inlet condition towards saturation curve to test CBF calculation robustness
InletWBTemp = 19.7; // 19.72 DB / 19.7 WB
InletAirHumRat = Psychrometrics::PsyWFnTdbTwbPb( InletDBTemp, InletWBTemp, AirPressure );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirMassFlowRate, SHR, true, AirPressure );
EXPECT_NEAR( CBF_calculated, 0.00021141, 0.0000001 );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirVolFlowRate, SHR, true );
EXPECT_NEAR( CBF_calculated, 0.00020826, 0.0000001 );

InletDBTemp = 13.1; // colder and much less likely inlet air temperature
InletWBTemp = 13.08; // 13.1 DB / 13.08 WB - hard to find ADP (needed mod to CalcCBF function)
InletAirHumRat = Psychrometrics::PsyWFnTdbTwbPb( InletDBTemp, InletWBTemp, AirPressure );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirMassFlowRate, SHR, true, AirPressure );
EXPECT_NEAR( CBF_calculated, 0.0001531, 0.0000001 );
CBF_calculated = CalcCBF( CoilType, CoilName, InletDBTemp, InletAirHumRat, TotalCap, AirVolFlowRate, SHR, true );
EXPECT_NEAR( CBF_calculated, 0.0001572, 0.0000001 );
}

TEST_F( EnergyPlusFixture, DXCoilEvapCondPumpSizingTest ) {
Expand Down Expand Up @@ -1477,17 +1475,16 @@ namespace EnergyPlus {
Real64 const RatedInletAirHumRat( 0.01125 ); // Humidity ratio corresponding to 80F dry bulb/67F wet bulb
std::string const CallingRoutine( "DXCoil_ValidateADPFunction" );

Real64 DesMassFlow = DXCoil( 1 ).RatedAirVolFlowRate( 1 ) * PsyRhoAirFnPbTdbW( StdBaroPress, RatedInletAirTemp, RatedInletAirHumRat, CallingRoutine );
Real64 CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DesMassFlow, DXCoil( 1 ).RatedSHR( 1 ), true );
Real64 CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DXCoil( 1 ).RatedAirVolFlowRate( 1 ), DXCoil( 1 ).RatedSHR( 1 ), true );

EXPECT_NEAR( 0.747472, DXCoil( 1 ).RatedSHR( 1 ), 0.0000001 );
EXPECT_NEAR( 0.1012203, CBF_calculated, 0.0000001 );
EXPECT_NEAR( 0.788472, DXCoil( 1 ).RatedSHR( 1 ), 0.0000001 );
EXPECT_NEAR( 0.0003944, CBF_calculated, 0.0000001 );

DXCoil( 1 ).RatedTotCap( 1 ) = 35000.0; // simulate outlet condition right at the saturation curve
DXCoil( 1 ).RatedSHR( 1 ) = AutoSize;

SizeDXCoil( 1 );
CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DesMassFlow, DXCoil( 1 ).RatedSHR( 1 ), true );
CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DXCoil( 1 ).RatedAirVolFlowRate( 1 ), DXCoil( 1 ).RatedSHR( 1 ), true );

EXPECT_NEAR( 0.67608322, DXCoil( 1 ).RatedSHR( 1 ), 0.0000001 );
EXPECT_NEAR( 0.0003243, CBF_calculated, 0.0000001 );
Expand All @@ -1496,7 +1493,7 @@ namespace EnergyPlus {
DXCoil( 1 ).RatedSHR( 1 ) = AutoSize;

SizeDXCoil( 1 );
CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DesMassFlow, DXCoil( 1 ).RatedSHR( 1 ), true );
CBF_calculated = CalcCBF( DXCoil( 1 ).DXCoilType, DXCoil( 1 ).Name, RatedInletAirTemp, RatedInletAirHumRat, DXCoil( 1 ).RatedTotCap( 1 ), DXCoil( 1 ).RatedAirVolFlowRate( 1 ), DXCoil( 1 ).RatedSHR( 1 ), true );

EXPECT_NEAR( 0.64408322, DXCoil( 1 ).RatedSHR( 1 ), 0.0000001 );
EXPECT_NEAR( 0.0028271, CBF_calculated, 0.0000001 );
Expand Down

8 comments on commit 1eb51a3

@nrel-bot-3
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-MacOS-10.9-clang: OK (2348 of 2497 tests passed, 0 test warnings)

Messages:

  • 149 tests had: EIO diffs.
  • 103 tests had: ESO big diffs.
  • 144 tests had: Table big diffs.
  • 96 tests had: MTR big diffs.
  • 43 tests had: ESO small diffs.
  • 11 tests had: ERR diffs.
  • 2 tests had: MTR small diffs.

Failures:

regression Test Summary

  • Passed: 447
  • Failed: 149

Build Badge Test Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-Linux-Ubuntu-14.04-gcc-4.8: OK (2388 of 2537 tests passed, 0 test warnings)

Messages:

  • 149 tests had: EIO diffs.
  • 103 tests had: ESO big diffs.
  • 144 tests had: Table big diffs.
  • 96 tests had: MTR big diffs.
  • 43 tests had: ESO small diffs.
  • 11 tests had: ERR diffs.
  • 2 tests had: MTR small diffs.

Failures:

regression Test Summary

  • Passed: 467
  • Failed: 149

Build Badge Test Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-Linux-Ubuntu-14.04-cppcheck-1.61: OK (0 of 0 tests passed, 0 test warnings)

Build Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-Linux-Ubuntu-14.04-gcc-4.8-UnitTestsCoverage-Debug: OK (1303 of 1303 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-Linux-Ubuntu-14.04-gcc-4.8-IntegrationCoverage-Debug: OK (1904 of 1904 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - x86_64-Linux-Ubuntu-14.04-custom_check: OK (0 of 0 tests passed, 0 test warnings)

Build Badge

@nrel-bot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - i386-Windows-7-VisualStudio-14: OK (2503 of 2503 tests passed, 0 test warnings)

Build Badge Test Badge

@nrel-bot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#6044-Reheat-coils-using-main-air-loop-air-flow-rate-to-size-coil-UA (rraustad) - Win64-Windows-7-VisualStudio-14: OK (2503 of 2503 tests passed, 0 test warnings)

Build Badge Test Badge

Please sign in to comment.