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) | :: | PondGHENum |
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 UpdatePondGroundHeatExchanger(PondGHENum)
! SUBROUTINE INFORMATION:
! AUTHOR Simon Rees
! DATE WRITTEN August 2002
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This subroutine does any updating that needs to be done for pond
! ground heat exchangers. This routine must also set the outlet water
! conditions.
! METHODOLOGY EMPLOYED:
! REFERENCES:
! na
! USE STATEMENTS:
USE DataGlobals, ONLY : TimeStepZone
USE DataLoopNode, ONLY : Node
USE FluidProperties, ONLY : GetSpecificHeatGlycol
USE PlantUtilities, ONLY : SafeCopyPlantNode
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: PondGHENum ! Index for the pond
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS
! na
! DERIVED TYPE DEFINITIONS
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
REAL(r64) :: CpFluid ! Specific heat of working fluid
! Calculate the water side outlet conditions and set the
! appropriate conditions on the correct HVAC node.
CpFluid = GetSpecificHeatGlycol(PlantLoop(PondGHE(PondGHENum)%LoopNum)%FluidName,InletTemp, &
PlantLoop(PondGHE(PondGHENum)%LoopNum)%FluidIndex,'PondGroundHeatExchanger:Update')
! check for flow
CALL SafeCopyPlantNode(InletNodeNum, OutletNodeNum)
IF ( (CpFluid > 0.0d0) .AND. (FlowRate > 0.0d0) ) THEN
Node(OutletNodeNum)%Temp = InletTemp - HeatTransRate / (FlowRate*CpFluid)
Node(OutletNodeNum)%Enthalpy = Node(OutletNodeNum)%Temp*CpFluid
END IF
! keep track of the bulk temperature
PondGHE(PondGHENum)%BulkTemperature = PondTemp
RETURN
END SUBROUTINE UpdatePondGroundHeatExchanger