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 UpdateFinalSurfaceHeatBalance
! SUBROUTINE INFORMATION:
! AUTHOR Rick Strand
! DATE WRITTEN December 2000
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! If a radiant system is present and was on for part of the time step,
! then we probably need to make yet another pass through the heat balance.
! This is necessary because the heat source/sink to the surface that is
! the radiant system may have varied during the system time steps.
! METHODOLOGY EMPLOYED:
! First, determine whether or not the radiant system was running. If
! any of the Qsource terms are non-zero, then it was running. Then,
! update the current source terms with the "average" value calculated
! by the radiant system algorithm. This requires the "USE" of the
! radiant algorithm module. Finally, using this source value, redo
! the inside and outside heat balances.
! REFERENCES:
! na
! USE STATEMENTS:
USE LowTempRadiantSystem, ONLY : UpdateRadSysSourceValAvg
USE HighTempRadiantSystem, ONLY : UpdateHTRadSourceValAvg
USE HWBaseboardRadiator, ONLY : UpdateBBRadSourceValAvg
USE SteamBaseboardRadiator, ONLY : UpdateBBSteamRadSourceValAvg
USE ElectricBaseboardRadiator, ONLY : UpdateBBElecRadSourceValAvg
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:
LOGICAL :: LowTempRadSysOn ! .TRUE. if a low temperature radiant system is running
LOGICAL :: HighTempRadSysOn ! .TRUE. if a high temperature radiant system is running
LOGICAL :: HWBaseboardSysOn ! .TRUE. if a water baseboard heater is running
LOGICAL :: SteamBaseboardSysOn ! .TRUE. if a steam baseboard heater is running
LOGICAL :: ElecBaseboardSysOn ! .TRUE. if a steam baseboard heater is running
! FLOW:
CALL UpdateRadSysSourceValAvg(LowTempRadSysOn)
CALL UpdateHTRadSourceValAvg(HighTempRadSysOn)
CALL UpdateBBRadSourceValAvg(HWBaseboardSysOn)
CALL UpdateBBSteamRadSourceValAvg(SteamBaseboardSysOn)
CALL UpdateBBElecRadSourceValAvg(ElecBaseboardSysOn)
IF (LowTempRadSysOn.OR.HighTempRadSysOn.OR.HWBaseboardSysOn.OR.SteamBaseboardSysOn.OR. &
ElecBaseboardSysOn) THEN
! Solve the zone heat balance 'Detailed' solution
! Call the outside and inside surface heat balances
CALL CalcHeatBalanceOutsideSurf
CALL CalcHeatBalanceInsideSurf
END IF
RETURN
END SUBROUTINE UpdateFinalSurfaceHeatBalance