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) | :: | HumNum |
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 UpdateReportWaterSystem(HumNum)
! SUBROUTINE INFORMATION:
! AUTHOR B. Griffith
! DATE WRITTEN Aug. 2006
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! collect water system calculations , update and report them
! METHODOLOGY EMPLOYED:
! <description>
! REFERENCES:
! na
! USE STATEMENTS:
USE DataWater , ONLY: WaterStorage
USE DataGlobals, ONLY: SecInHour, BeginTimeStepFlag
USE DataHVACGlobals, ONLY: TimeStepSys
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT (IN) :: HumNum ! number of the current humidifier being simulated
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
REAL(r64) :: AvailTankVdot
REAL(r64) :: TankSupplyVdot
REAL(r64) :: StarvedVdot
! set demand request in WaterStorage if needed.
IF (Humidifier(HumNum)%SuppliedByWaterSystem) Then
WaterStorage(Humidifier(HumNum)%WaterTankID)%VdotRequestDemand(Humidifier(HumNum)%WaterTankDemandARRID) &
= Humidifier(HumNum)%WaterConsRate
AvailTankVdot = & ! check what tank can currently provide
WaterStorage(Humidifier(HumNum)%WaterTankID)%VdotAvailDemand(Humidifier(HumNum)%WaterTankDemandARRID)
StarvedVdot = 0.0d0
TankSupplyVdot = Humidifier(HumNum)%WaterConsRate ! init
If ((AvailTankVdot < Humidifier(HumNum)%WaterConsRate) .and. ( .NOT. (BeginTimeStepFlag)) ) Then ! calculate starved flow
StarvedVdot = Humidifier(HumNum)%WaterConsRate - AvailTankVdot
TankSupplyVdot = AvailTankVdot
ENDIF
Humidifier(HumNum)%TankSupplyVdot = TankSupplyVdot
Humidifier(HumNum)%TankSupplyVol = TankSupplyVdot * (TimeStepSys * SecInHour)
Humidifier(HumNum)%StarvedSupplyVdot = StarvedVdot
Humidifier(HumNum)%StarvedSupplyVol = StarvedVdot * (TimeStepSys * SecInHour)
ENDIF
RETURN
END SUBROUTINE UpdateReportWaterSystem