Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | IceNum | |||
real(kind=r64), | intent(in) | :: | MyLoad | |||
logical, | intent(in) | :: | RunFlag |
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 RecordOutput(IceNum,MyLoad,RunFlag)
! SUBROUTINE INFORMATION:
! PURPOSE OF THIS SUBROUTINE:
! METHODOLOGY EMPLOYED:
! REFERENCES:
! USE STATEMENTS:
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: IceNum
REAL(r64), INTENT(IN) :: MyLoad
LOGICAL, INTENT(IN) :: RunFlag
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS
! na
! DERIVED TYPE DEFINITIONS
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
! FLOW
IF (MyLoad ==0 .OR. .NOT. RunFlag ) THEN
IceStorageReport(IceNum)%MyLoad = MyLoad
IceStorageReport(IceNum)%U = U
IceStorageReport(IceNum)%Urate = Urate
IceStorageReport(IceNum)%ITSCoolingRate = 0.0d0
IceStorageReport(IceNum)%ITSCoolingEnergy = 0.0d0
IceStorageReport(IceNum)%ITSChargingRate = 0.0d0
IceStorageReport(IceNum)%ITSChargingEnergy = 0.0d0
IceStorageReport(IceNum)%ITSmdot = 0.0d0
IceStorageReport(IceNum)%ITSInletTemp = ITSInletTemp
IceStorageReport(IceNum)%ITSOutletTemp = ITSOutletTemp
ELSE
IceStorageReport(IceNum)%MyLoad = MyLoad
IceStorageReport(IceNum)%U = U
IceStorageReport(IceNum)%Urate = Urate
IF(ITSCoolingRate > 0.0d0) THEN
IceStorageReport(IceNum)%ITSCoolingRate = ITSCoolingRate
IceStorageReport(IceNum)%ITSCoolingEnergy = ITSCoolingEnergy
IceStorageReport(IceNum)%ITSChargingRate = 0.0d0
IceStorageReport(IceNum)%ITSChargingEnergy = 0.0d0
ELSE
IceStorageReport(IceNum)%ITSCoolingRate = 0.0d0
IceStorageReport(IceNum)%ITSCoolingEnergy = 0.0d0
IceStorageReport(IceNum)%ITSChargingRate = -ITSCoolingRate
IceStorageReport(IceNum)%ITSChargingEnergy = -ITSCoolingEnergy
ENDIF
IceStorageReport(IceNum)%ITSmdot = ITSMassFlowRate
IceStorageReport(IceNum)%ITSInletTemp = ITSInletTemp
IceStorageReport(IceNum)%ITSOutletTemp = ITSOutletTemp
END IF
RETURN
END SUBROUTINE RecordOutput