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.
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 ReportSurfaceShading
! SUBROUTINE INFORMATION:
! AUTHOR Linda Lawrie
! DATE WRITTEN April 2000
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This subroutine uses the internal variables used in the Shading
! calculations and prepares them for reporting (at timestep level).
! METHODOLOGY EMPLOYED:
! Because all of the calculations are done on a "daily" basis in this
! module, it is difficult to formulate the values that might be useful
! for reporting. SunLitFrac was the first of these two arrays to be
! made into "two dimensions". It is not clear that both have to be
! two dimensions.
! REFERENCES:
! na
! USE STATEMENTS:
USE OutputReportPredefined
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 SurfNum ! Loop Counter
INTEGER RepCol ! the column of the predefined report
DO SurfNum=1,TotSurfaces
SurfSunlitFrac(SurfNum)=SunLitFrac(SurfNum,HourOfDay,TimeStep)
SurfSunlitArea(SurfNum)=SunLitFrac(SurfNum,HourOfDay,TimeStep)*Surface(SurfNum)%Area
ENDDO
!added for predefined reporting
RepCol = 0
IF (Month == 3 .and. DayOfMonth == 21) THEN
IF ((HourOfDay .EQ. 9) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfMar21_9
ELSEIF ((HourOfDay .EQ. 12) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfMar21_12
ELSEIF ((HourOfDay .EQ. 15) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfMar21_15
END IF
ELSEIF (Month == 6 .and. DayOfMonth == 21) THEN
IF ((HourOfDay .EQ. 9) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfJun21_9
ELSEIF ((HourOfDay .EQ. 12) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfJun21_12
ELSEIF ((HourOfDay .EQ. 15) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfJun21_15
END IF
ELSEIF (Month == 12 .and. DayOfMonth == 21) THEN
IF ((HourOfDay .EQ. 9) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfDec21_9
ELSEIF ((HourOfDay .EQ. 12) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfDec21_12
ELSEIF ((HourOfDay .EQ. 15) .AND. (TimeStep .EQ. 4)) THEN
RepCol = pdchSlfDec21_15
END IF
END IF
IF (RepCol .NE. 0) THEN
DO SurfNum=1,TotSurfaces
IF (surface(SurfNum)%Class .EQ. SurfaceClass_Window) THEN
CALL PreDefTableEntry(RepCol,surface(SurfNum)%Name,SurfSunlitFrac(SurfNum))
END IF
END DO
END IF
RETURN
END SUBROUTINE ReportSurfaceShading