@@ -391,12 +391,14 @@ TEST_F(EnergyPlusFixture, SZVAV_PTUnit_Testing)
391391
392392 // test fails, expected MaxCoolAirMassFlow, only got 87% of that, issue 9090
393393 // test here should be EXPECT_EQ or EXPECT_NEAR thisUnit.MaxCoolAirMassFlow
394- EXPECT_GT (state->dataLoopNodes ->Node (1 ).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow ); // high speed air flow rate
395- EXPECT_LT (state->dataLoopNodes ->Node (4 ).Temp , state->dataLoopNodes ->Node (1 ).Temp ); // active cooling
396-
397- MinHumRat = min (state->dataLoopNodes ->Node (4 ).HumRat , state->dataLoopNodes ->Node (1 ).HumRat );
398- OutletTemp = state->dataLoopNodes ->Node (4 ).Temp ;
399- InletTemp = state->dataLoopNodes ->Node (1 ).Temp ;
394+ int fanInNode = Node::GetNodeIndex (*state, " FAN IN NODE" );
395+ int coilOutNode = Node::GetNodeIndex (*state, " HEATING COIL OUT NODE" );
396+ EXPECT_GT (state->dataLoopNodes ->Node (fanInNode).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow ); // high speed air flow rate
397+ EXPECT_LT (state->dataLoopNodes ->Node (coilOutNode).Temp , state->dataLoopNodes ->Node (fanInNode).Temp ); // active cooling
398+
399+ MinHumRat = min (state->dataLoopNodes ->Node (coilOutNode).HumRat , state->dataLoopNodes ->Node (fanInNode).HumRat );
400+ OutletTemp = state->dataLoopNodes ->Node (coilOutNode).Temp ;
401+ InletTemp = state->dataLoopNodes ->Node (fanInNode).Temp ;
400402 LoadMet = thisUnit.MaxCoolAirMassFlow * (Psychrometrics::PsyHFnTdbW (OutletTemp, MinHumRat) - Psychrometrics::PsyHFnTdbW (InletTemp, MinHumRat));
401403 EXPECT_NEAR (LoadMet, QZnReq, 1600.0 ); // coil could not meet load, not a failure just issue with testing results
402404 EXPECT_NEAR (LoadMet, -2859.0 , 500.0 );
@@ -407,12 +409,13 @@ TEST_F(EnergyPlusFixture, SZVAV_PTUnit_Testing)
407409 state->dataUnitarySystems ->HeatingLoad = HeatingLoad;
408410
409411 // set unit inlet node conditions for heating
410- state->dataLoopNodes ->Node (1 ).Temp = 21.0 ;
411- state->dataLoopNodes ->Node (1 ).HumRat = 0.008 ;
412- state->dataLoopNodes ->Node (1 ).Enthalpy = 41431.0 ;
413- state->dataLoopNodes ->Node (5 ).Temp = 21.0 ;
414- state->dataLoopNodes ->Node (5 ).HumRat = 0.008 ;
415- state->dataLoopNodes ->Node (5 ).Enthalpy = 41431.0 ;
412+ int zoneNode = Node::GetNodeIndex (*state, " ZoneNode" );
413+ state->dataLoopNodes ->Node (fanInNode).Temp = 21.0 ;
414+ state->dataLoopNodes ->Node (fanInNode).HumRat = 0.008 ;
415+ state->dataLoopNodes ->Node (fanInNode).Enthalpy = 41431.0 ;
416+ state->dataLoopNodes ->Node (zoneNode).Temp = 21.0 ;
417+ state->dataLoopNodes ->Node (zoneNode).HumRat = 0.008 ;
418+ state->dataLoopNodes ->Node (zoneNode).Enthalpy = 41431.0 ;
416419
417420 // Region 1 of control, low air flow rate, modulate coil capacity
418421 QZnReq = 200.0 ;
@@ -429,12 +432,12 @@ TEST_F(EnergyPlusFixture, SZVAV_PTUnit_Testing)
429432 PLR ,
430433 CompressorOnFlag);
431434
432- EXPECT_NEAR (state->dataLoopNodes ->Node (1 ).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow , 0.00000001 ); // high speed air flow rate
433- EXPECT_GT (state->dataLoopNodes ->Node (4 ).Temp , state->dataLoopNodes ->Node (1 ).Temp ); // active heating
435+ EXPECT_NEAR (state->dataLoopNodes ->Node (fanInNode ).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow , 0.00000001 ); // high speed air flow rate
436+ EXPECT_GT (state->dataLoopNodes ->Node (coilOutNode ).Temp , state->dataLoopNodes ->Node (fanInNode ).Temp ); // active heating
434437
435- MinHumRat = min (state->dataLoopNodes ->Node (4 ).HumRat , state->dataLoopNodes ->Node (1 ).HumRat );
436- OutletTemp = state->dataLoopNodes ->Node (4 ).Temp ;
437- InletTemp = state->dataLoopNodes ->Node (1 ).Temp ;
438+ MinHumRat = min (state->dataLoopNodes ->Node (coilOutNode ).HumRat , state->dataLoopNodes ->Node (fanInNode ).HumRat );
439+ OutletTemp = state->dataLoopNodes ->Node (coilOutNode ).Temp ;
440+ InletTemp = state->dataLoopNodes ->Node (fanInNode ).Temp ;
438441 LoadMet =
439442 thisUnit.MaxNoCoolHeatAirMassFlow * (Psychrometrics::PsyHFnTdbW (OutletTemp, MinHumRat) - Psychrometrics::PsyHFnTdbW (InletTemp, MinHumRat));
440443 EXPECT_NEAR (LoadMet, QZnReq, 0.0001 );
@@ -455,14 +458,14 @@ TEST_F(EnergyPlusFixture, SZVAV_PTUnit_Testing)
455458 PLR ,
456459 CompressorOnFlag);
457460
458- EXPECT_GT (state->dataLoopNodes ->Node (1 ).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow ); // air flow higher than low speed
459- EXPECT_LT (state->dataLoopNodes ->Node (1 ).MassFlowRate , thisUnit.MaxHeatAirMassFlow ); // air flow lower than high speed
460- EXPECT_GT (state->dataLoopNodes ->Node (4 ).Temp , state->dataLoopNodes ->Node (1 ).Temp ); // active heating
461+ EXPECT_GT (state->dataLoopNodes ->Node (fanInNode ).MassFlowRate , thisUnit.MaxNoCoolHeatAirMassFlow ); // air flow higher than low speed
462+ EXPECT_LT (state->dataLoopNodes ->Node (fanInNode ).MassFlowRate , thisUnit.MaxHeatAirMassFlow ); // air flow lower than high speed
463+ EXPECT_GT (state->dataLoopNodes ->Node (coilOutNode ).Temp , state->dataLoopNodes ->Node (fanInNode ).Temp ); // active heating
461464
462- AirMassFlow = state->dataLoopNodes ->Node (4 ).MassFlowRate ;
463- MinHumRat = min (state->dataLoopNodes ->Node (4 ).HumRat , state->dataLoopNodes ->Node (1 ).HumRat );
464- OutletTemp = state->dataLoopNodes ->Node (4 ).Temp ;
465- InletTemp = state->dataLoopNodes ->Node (1 ).Temp ;
465+ AirMassFlow = state->dataLoopNodes ->Node (coilOutNode ).MassFlowRate ;
466+ MinHumRat = min (state->dataLoopNodes ->Node (coilOutNode ).HumRat , state->dataLoopNodes ->Node (fanInNode ).HumRat );
467+ OutletTemp = state->dataLoopNodes ->Node (coilOutNode ).Temp ;
468+ InletTemp = state->dataLoopNodes ->Node (fanInNode ).Temp ;
466469 LoadMet = AirMassFlow * (Psychrometrics::PsyHFnTdbW (OutletTemp, MinHumRat) - Psychrometrics::PsyHFnTdbW (InletTemp, MinHumRat));
467470 EXPECT_NEAR (LoadMet, QZnReq, 0.0001 );
468471 EXPECT_NEAR (LoadMet, 1200.0 , 0.0001 );
@@ -482,12 +485,12 @@ TEST_F(EnergyPlusFixture, SZVAV_PTUnit_Testing)
482485 PLR ,
483486 CompressorOnFlag);
484487
485- EXPECT_NEAR (state->dataLoopNodes ->Node (1 ).MassFlowRate , thisUnit.MaxHeatAirMassFlow , 0.00000001 ); // high speed air flow rate
486- EXPECT_GT (state->dataLoopNodes ->Node (4 ).Temp , state->dataLoopNodes ->Node (1 ).Temp ); // active heating
488+ EXPECT_NEAR (state->dataLoopNodes ->Node (fanInNode ).MassFlowRate , thisUnit.MaxHeatAirMassFlow , 0.00000001 ); // high speed air flow rate
489+ EXPECT_GT (state->dataLoopNodes ->Node (coilOutNode ).Temp , state->dataLoopNodes ->Node (fanInNode ).Temp ); // active heating
487490
488- MinHumRat = min (state->dataLoopNodes ->Node (4 ).HumRat , state->dataLoopNodes ->Node (1 ).HumRat );
489- OutletTemp = state->dataLoopNodes ->Node (4 ).Temp ;
490- InletTemp = state->dataLoopNodes ->Node (1 ).Temp ;
491+ MinHumRat = min (state->dataLoopNodes ->Node (coilOutNode ).HumRat , state->dataLoopNodes ->Node (fanInNode ).HumRat );
492+ OutletTemp = state->dataLoopNodes ->Node (coilOutNode ).Temp ;
493+ InletTemp = state->dataLoopNodes ->Node (fanInNode ).Temp ;
491494 LoadMet = thisUnit.MaxHeatAirMassFlow * (Psychrometrics::PsyHFnTdbW (OutletTemp, MinHumRat) - Psychrometrics::PsyHFnTdbW (InletTemp, MinHumRat));
492495 EXPECT_NEAR (LoadMet, QZnReq, 0.0001 );
493496 EXPECT_NEAR (LoadMet, 2000.0 , 0.0001 );
0 commit comments