Nodes of different colours represent the following:
Solid arrows point from a parent (sub)module to the submodule which is descended from it. Dashed arrows point from a module being used to the module or program unit using it. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | LoopNum |
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 ShowBranchesOnLoop(LoopNum)
! SUBROUTINE INFORMATION:
! AUTHOR Linda Lawrie
! DATE WRITTEN November 2011
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This routine will display (with continue error messages) the branch/component
! structure of the given loop.
! METHODOLOGY EMPLOYED:
! na
! REFERENCES:
! na
! USE STATEMENTS:
USE DataInterfaces, ONLY: ShowContinueError
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: LoopNum ! Loop number of loop
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
CHARACTER(len=10) :: DemandSupply
INTEGER :: LSN ! Loopside counter
INTEGER :: BrN ! Branch counter
INTEGER :: CpN ! Component (on branch) counter
DO LSN=DemandSide,SupplySide
IF (LSN == DemandSide) THEN
DemandSupply='Demand'
ELSEIF (LSN == SupplySide) THEN
DemandSupply='Supply'
ELSE
DemandSupply='Unknown'
ENDIF
CALL ShowContinueError(trim(DemandSupply)//' Branches:')
DO BrN = 1, PlantLoop(LoopNum)%LoopSide(LSN)%TotalBranches
CALL ShowContinueError(' '//trim(PlantLoop(LoopNum)%LoopSide(LSN)%Branch(BrN)%Name))
CALL ShowContinueError(' Components on Branch:')
DO CpN=1,PlantLoop(LoopNum)%LoopSide(LSN)%Branch(BrN)%TotalComponents
CALL ShowContinueError(' '//trim(PlantLoop(LoopNum)%LoopSide(LSN)%Branch(BrN)%Comp(CpN)%TypeOf)//':'// &
trim(PlantLoop(LoopNum)%LoopSide(LSN)%Branch(BrN)%Comp(CpN)%Name))
ENDDO
ENDDO
ENDDO
RETURN
END SUBROUTINE ShowBranchesOnLoop