Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | MaterNum | |||
character(len=*), | intent(in) | :: | Roughness | |||
logical, | intent(inout) | :: | ErrorsFound |
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 ValidateMaterialRoughness(MaterNum,Roughness,ErrorsFound)
! SUBROUTINE INFORMATION:
! AUTHOR Linda K. Lawrie
! DATE WRITTEN April 1999
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This subroutine compares the input Roughness value against the
! valid values and sets the correct value in the Material Data Structure.
! METHODOLOGY EMPLOYED:
! Error message provided if not valid.
! REFERENCES:
! na
! USE STATEMENTS:
! na
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: MaterNum ! Which Material number being validated.
CHARACTER(len=*), INTENT(IN) :: Roughness ! Roughness String
LOGICAL, INTENT(INOUT) :: ErrorsFound ! If errors found
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
!Select the correct Number for the associated ascii name for the roughness type
IF (SameString(Roughness,'VeryRough')) Material(MaterNum)%Roughness=VeryRough
IF (SameString(Roughness,'Rough')) Material(MaterNum)%Roughness=Rough
IF (SameString(Roughness,'MediumRough')) Material(MaterNum)%Roughness=MediumRough
IF (SameString(Roughness,'MediumSmooth')) Material(MaterNum)%Roughness=MediumSmooth
IF (SameString(Roughness,'Smooth')) Material(MaterNum)%Roughness=Smooth
IF (SameString(Roughness,'VerySmooth')) Material(MaterNum)%Roughness=VerySmooth
! Was it set?
IF (Material(MaterNum)%Roughness == 0) THEN
CALL ShowSevereError('Material='//TRIM(Material(MaterNum)%Name)//',Illegal Roughness='//TRIM(Roughness))
ErrorsFound=.true.
ENDIF
RETURN
END SUBROUTINE ValidateMaterialRoughness