@@ -364,6 +364,7 @@ void GetSysInput(EnergyPlusData &state)
364364 airTerm.SysName = Alphas (1 );
365365 airTerm.sysType = CurrentModuleObject;
366366 airTerm.SysType_Num = SysType::SingleDuctVAVReheat;
367+
367368 airTerm.ReheatComp = Alphas (7 );
368369 if (Util::SameString (airTerm.ReheatComp , " Coil:Heating:Fuel" )) {
369370 airTerm.ReheatComp_Num = HeatingCoilType::Gas;
@@ -380,12 +381,20 @@ void GetSysInput(EnergyPlusData &state)
380381 ShowContinueError (state, format (" Occurs in {} = {}" , airTerm.sysType , airTerm.SysName ));
381382 ErrorsFound = true ;
382383 }
384+
383385 airTerm.ReheatName = Alphas (8 );
384386 ValidateComponent (state, airTerm.ReheatComp , airTerm.ReheatName , IsNotOK, airTerm.sysType );
385387 if (IsNotOK) {
386388 ShowContinueError (state, format (" In {} = {}" , airTerm.sysType , airTerm.SysName ));
387389 ErrorsFound = true ;
388- }
390+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::Gas || airTerm.ReheatComp_Num == HeatingCoilType::Electric) {
391+ HeatingCoils::GetCoilIndex (state, airTerm.ReheatName , airTerm.ReheatComp_Index , ErrorsFound);
392+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SimpleHeating) {
393+ airTerm.ReheatComp_Index = WaterCoils::GetWaterCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
394+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SteamAirHeating) {
395+ airTerm.ReheatComp_Index = SteamCoils::GetSteamCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
396+ }
397+
389398 if (lAlphaBlanks (2 )) {
390399 airTerm.availSched = Sched::GetScheduleAlwaysOn (state);
391400 } else if ((airTerm.availSched = Sched::GetSchedule (state, Alphas (2 ))) == nullptr ) {
@@ -696,8 +705,14 @@ void GetSysInput(EnergyPlusData &state)
696705 if (IsNotOK) {
697706 ShowContinueError (state, format (" In {} = {}" , airTerm.sysType , airTerm.SysName ));
698707 ErrorsFound = true ;
699- }
700-
708+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::Gas || airTerm.ReheatComp_Num == HeatingCoilType::Electric) {
709+ HeatingCoils::GetCoilIndex (state, airTerm.ReheatName , airTerm.ReheatComp_Index , ErrorsFound);
710+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SimpleHeating) {
711+ airTerm.ReheatComp_Index = WaterCoils::GetWaterCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
712+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SteamAirHeating) {
713+ airTerm.ReheatComp_Index = SteamCoils::GetSteamCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
714+ }
715+
701716 if (lAlphaBlanks (2 )) {
702717 airTerm.availSched = Sched::GetScheduleAlwaysOn (state);
703718 } else if ((airTerm.availSched = Sched::GetSchedule (state, Alphas (2 ))) == nullptr ) {
@@ -923,8 +938,14 @@ void GetSysInput(EnergyPlusData &state)
923938 if (IsNotOK) {
924939 ShowContinueError (state, format (" In {} = {}" , airTerm.sysType , airTerm.SysName ));
925940 ErrorsFound = true ;
926- }
927-
941+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::Gas || airTerm.ReheatComp_Num == HeatingCoilType::Electric) {
942+ HeatingCoils::GetCoilIndex (state, airTerm.ReheatName , airTerm.ReheatComp_Index , ErrorsFound);
943+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SimpleHeating) {
944+ airTerm.ReheatComp_Index = WaterCoils::GetWaterCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
945+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SteamAirHeating) {
946+ airTerm.ReheatComp_Index = SteamCoils::GetSteamCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
947+ }
948+
928949 if (lAlphaBlanks (2 )) {
929950 airTerm.availSched = Sched::GetScheduleAlwaysOn (state);
930951 } else if ((airTerm.availSched = Sched::GetSchedule (state, Alphas (2 ))) == nullptr ) {
@@ -1658,7 +1679,14 @@ void GetSysInput(EnergyPlusData &state)
16581679 if (IsNotOK) {
16591680 ShowContinueError (state, format (" In {} = {}" , airTerm.sysType , airTerm.SysName ));
16601681 ErrorsFound = true ;
1661- }
1682+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::Gas || airTerm.ReheatComp_Num == HeatingCoilType::Electric) {
1683+ HeatingCoils::GetCoilIndex (state, airTerm.ReheatName , airTerm.ReheatComp_Index , ErrorsFound);
1684+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SimpleHeating) {
1685+ airTerm.ReheatComp_Index = WaterCoils::GetWaterCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
1686+ } else if (airTerm.ReheatComp_Num == HeatingCoilType::SteamAirHeating) {
1687+ airTerm.ReheatComp_Index = SteamCoils::GetSteamCoilIndex (state, airTerm.ReheatComp , airTerm.ReheatName , ErrorsFound);
1688+ }
1689+
16621690
16631691 airTerm.fanType = static_cast <HVAC::FanType>(getEnumValue (HVAC::fanTypeNamesUC, Alphas (5 )));
16641692
0 commit comments