diff --git a/Source/hvac.f90 b/Source/hvac.f90 index 382fb280af4..46a019b3795 100644 --- a/Source/hvac.f90 +++ b/Source/hvac.f90 @@ -429,6 +429,16 @@ SUBROUTINE READ_HVAC WRITE(MESSAGE,'(A,I5)') 'ERROR(513): Ductnode has no ID, HVAC line number:',NN CALL SHUTDOWN(MESSAGE); RETURN ENDIF + IF ((GEOM .OR. GEOM2) .AND. VENT_ID/='null') THEN + WRITE(MESSAGE,'(A,A,A,I5)') 'ERROR(yyy): Ductnode with GEOM cannot have a VENT_ID. Ductnode ID:',TRIM(DN%ID),& + ', HVAC line number:',NN + CALL SHUTDOWN(MESSAGE); RETURN + ENDIF + IF (.NOT. GEOM .AND. VENT_ID=='null') THEN + WRITE(MESSAGE,'(A,A,A,I5)') 'ERROR(yyy): Ductnode with needs either GEOM or VENT_ID. Ductnode ID:',TRIM(DN%ID),& + ', HVAC line number:',NN + CALL SHUTDOWN(MESSAGE); RETURN + ENDIF DN%VENT_ID = VENT_ID DN%GEOM = GEOM IF (DN%VENT .AND. DN%GEOM) THEN @@ -457,12 +467,12 @@ SUBROUTINE READ_HVAC DN%N_DUCTS=ND ENDDO IF (DN%N_DUCTS == 1 .AND. .NOT. GEOM .AND. .NOT. AMBIENT .AND. VENT_ID=='null') THEN - WRITE(MESSAGE,'(A,A,A,I5)') 'ERROR(515): Non-AMBIENT or non VENT-connected ductnode must have >=2 ducts. Ductnode ID:',& - TRIM(DN%ID),', HVAC line number:',NN + WRITE(MESSAGE,'(A,A,A,A,I5)') 'ERROR(515): Non-AMBIENT, non-VENT, and non-GEOM connected ductnode ',& + '(i.e., internal node) must have >=2 ducts. Ductnode ID:',TRIM(DN%ID),', HVAC line number:',NN CALL SHUTDOWN(MESSAGE); RETURN ENDIF IF (DN%N_DUCTS >= 2 .AND. (AMBIENT .OR. GEOM .OR. VENT_ID/='null')) THEN - WRITE(MESSAGE,'(A,A,A,I5)') 'ERROR(516): AMBIENT, GEOM, or VENT-connected ductnode must have 1 duct. Ductnode ID:',& + WRITE(MESSAGE,'(A,A,A,I5)') 'ERROR(516): AMBIENT, VENT, or GEOM-connected ductnode must have 1 duct. Ductnode ID:',& TRIM(DN%ID),', HVAC line number:',NN CALL SHUTDOWN(MESSAGE); RETURN ENDIF diff --git a/Source/read.f90 b/Source/read.f90 index f79791e0ef5..085ddd5e166 100644 --- a/Source/read.f90 +++ b/Source/read.f90 @@ -11942,6 +11942,10 @@ SUBROUTINE READ_VENT WRITE(MESSAGE,'(3A)') 'ERROR(802): VENT ',TRIM(ID), ' needs an explicit ID because it involves HVAC.' CALL SHUTDOWN(MESSAGE,PROCESS_0_ONLY=.FALSE.) ; RETURN ENDIF + IF (SURF_ID=='HVAC' .AND. GEOM) THEN + WRITE(MESSAGE,'(3A)') 'ERROR(xxx): VENT ',TRIM(ID), ' cannot have SURF_ID=HVAC and GEOM=T.' + CALL SHUTDOWN(MESSAGE,PROCESS_0_ONLY=.FALSE.) ; RETURN + ENDIF ! Special cases where VENT is specified with PBX, PBY, PBZ, MB, or DB