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 DetermineMaxBackSurfaces
! SUBROUTINE INFORMATION:
! AUTHOR Joe Klems
! DATE WRITTEN September 2011
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! Calculates the basis length for a Window6 Non-Symmetric or Axisymmetric basis
! from the input basis matrix
! METHODOLOGY EMPLOYED:
! <description>
! REFERENCES:
! na
! USE STATEMENTS:
! na
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
! na
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
INTEGER :: I !gen purpose index
INTEGER :: ZoneNum !Zone Number
INTEGER :: SurfNum !Surface Number
INTEGER :: NumSurfInZone =0 !Number of zone surfaces
LOGICAL :: ComplexFenInZone = .FALSE.
DO ZoneNum = 1, NumOfZones
ComplexFenInZone = .FALSE.
DO SurfNum = Zone(ZoneNum)%SurfaceFirst , Zone(ZoneNum)%SurfaceLast
IF(SurfaceWindow(SurfNum)%WindowModelType == WindowBSDFModel) ComplexFenInZone = .TRUE.
END DO
IF(ComplexFenInZone) THEN
NumSurfInZone = Zone(ZoneNum)%SurfaceLast - Zone(ZoneNum)%SurfaceFirst + 1
IF(MaxBkSurf < NumSurfInZone) MaxBkSurf = NumSurfInZone
END IF
END DO
RETURN
END SUBROUTINE DetermineMaxBackSurfaces