Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | NumGlycols | ||||
integer | :: | GlycolNum | ||||
logical | :: | DataPresent | ||||
character(len=*) | :: | GlycolName | ||||
character(len=*) | :: | RoutineName | ||||
character(len=*) | :: | Property | ||||
character(len=*) | :: | calledfrom |
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
SUBROUTINE ReportFatalGlycolErrors(NumGlycols,GlycolNum,DataPresent,GlycolName,RoutineName,Property,calledfrom)
! SUBROUTINE INFORMATION:
! AUTHOR Linda Lawrie
! DATE WRITTEN July 2011
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! Consolidate fatal error reporting for glycols.
! METHODOLOGY EMPLOYED:
! na
! REFERENCES:
! na
! USE STATEMENTS:
! na
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER :: NumGlycols ! Number of Glycols in input/data
INTEGER :: GlycolNum ! Glycol Index
LOGICAL :: DataPresent ! data is present for this fluid.
CHARACTER(len=*) :: GlycolName ! Name being reported
CHARACTER(len=*) :: RoutineName ! Routine name to show
CHARACTER(len=*) :: Property ! Property being requested
CHARACTER(len=*) :: calledfrom ! original called from (external to fluid properties)
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
INTEGER :: RefrigNo
! check and see if it might be a refrigerant
RefrigNo=FindRefrigerant(GlycolName)
IF (NumGlycols == 0) THEN
CALL ShowSevereError(RoutineName//': no glycols found -- cannot evaluate fluid '//Property// &
' for "'//trim(GlycolName)//'", called from: '//calledfrom)
ELSEIF (GlycolNum == 0) THEN
CALL ShowSevereError(RoutineName//': data not found in input for requested glycol "'// &
trim(GlycolName)//'", called from: '//calledfrom)
ELSEIF (.not. DataPresent) THEN
CALL ShowSevereError(RoutineName//': '//Property//' data not found in input for requested glycol "'// &
trim(GlycolName)//'", called from: '//calledfrom)
ENDIF
IF (RefrigNo > 0) &
CALL ShowContinueError('Note: that fluid is listed as a Refrigerant from input.')
CALL ShowFatalError('Program terminates due to preceding condition.')
RETURN
END SUBROUTINE ReportFatalGlycolErrors