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.
SUBROUTINE DumpAirLoopStatistics
! SUBROUTINE INFORMATION:
! AUTHOR Dimitri Curtil
! DATE WRITTEN April 2006
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! Writes runtime statistics for controllers on all air loops
! to a CSV file named "statistics.HVACControllers.csv".
! METHODOLOGY EMPLOYED:
! Needs description, as appropriate.
! REFERENCES:
! na
! USE STATEMENTS:
USE DataSystemVariables, ONLY : TrackAirLoopEnvFlag
USE DataHVACGlobals, ONLY : NumPrimaryAirSys
USE DataAirSystems, ONLY : PrimaryAirSystem
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
! na
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS
INTEGER, EXTERNAL :: GetNewUnitNumber
! DERIVED TYPE DEFINITIONS
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
CHARACTER(LEN=MaxNameLength) :: StatisticsFileName
INTEGER :: FileUnit
INTEGER :: AirLoopNum
! FLOW
! Detect if statistics have been generated or not for this run
IF ( .NOT.TrackAirLoopEnvFlag ) THEN
RETURN
END IF
StatisticsFileName(:) = ' '
StatisticsFileName = 'statistics.HVACControllers.csv'
StatisticsFileName = ADJUSTL(StatisticsFileName)
FileUnit = GetNewUnitNumber()
IF ( FileUnit <= 0 ) THEN
CALL ShowWarningError( &
'DumpAirLoopStatistics: Invalid unit for air loop statistics file="'// &
TRIM(StatisticsFileName)//'"')
RETURN
END IF
OPEN(UNIT=FileUnit, FILE=StatisticsFileName, Action='write', ERR=100)
DO AirLoopNum=1,NumPrimaryAirSys
CALL WriteAirLoopStatistics( FileUnit, PrimaryAirSystem(AirLoopNum), AirLoopStats(AirLoopNum) )
END DO
CLOSE(FileUnit)
RETURN
100 CONTINUE
CALL ShowFatalError( &
'DumpAirLoopStatistics: Failed to open statistics file "'//TRIM(StatisticsFileName)//'" for output (write).' &
)
RETURN
END SUBROUTINE DumpAirLoopStatistics