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) | :: | PumpNum |
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 ReportPumps(PumpNum)
! SUBROUTINE INFORMATION:
! AUTHOR: Dan Fisher
! DATE WRITTEN: October 1998
! MODIFIED July 2001, Rick Strand (revision of pump module)
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! This subroutine sets the pump reporting variables.
! METHODOLOGY EMPLOYED:
! Standard EnergyPlus methodology.
! REFERENCES:
! na
! USE STATEMENTS:
USE DataBranchAirLoopPlant, ONLY: MassFlowTolerance
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: PumpNum
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS
! na
! DERIVED TYPE DEFINITIONS
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
INTEGER :: InletNode ! pump inlet node number
INTEGER :: OutletNode ! pump outlet node number
INTEGER :: PumpType !Current pump type
! FLOW:
PumpType = PumpEquip(PumpNum)%PumpType
InletNode = PumpEquip(PumpNum)%InletNodeNum
OutletNode = PumpEquip(PumpNum)%OutletNodeNum
IF (PumpMassFlowRate <= MassFlowTolerance) THEN
PumpEquipReport(PumpNum)%PumpMassFlowRate = 0.0d0
PumpEquipReport(PumpNum)%PumpHeattoFluid = 0.0d0
PumpEquipReport(PumpNum)%OutletTemp = Node(OutletNode)%Temp
PumpEquip(PumpNum)%Power = 0.0d0
PumpEquip(PumpNum)%Energy = 0.0d0
PumpEquipReport(PumpNum)%ShaftPower = 0.0d0
PumpEquipReport(PumpNum)%PumpHeattoFluidEnergy = 0.0d0
PumpEquipReport(PumpNum)%ZoneTotalGainRate = 0.d0
PumpEquipReport(PumpNum)%ZoneTotalGainEnergy = 0.d0
PumpEquipReport(PumpNum)%ZoneConvGainRate = 0.d0
PumpEquipReport(PumpNum)%ZoneRadGainRate = 0.d0
PumpEquipReport(PumpNum)%NumPumpsOperating = 0
ELSE
PumpEquipReport(PumpNum)%PumpMassFlowRate = PumpMassFlowRate
PumpEquipReport(PumpNum)%PumpHeattoFluid = PumpHeattoFluid
PumpEquipReport(PumpNum)%OutletTemp = Node(OutletNode)%Temp
PumpEquip(PumpNum)%Power = Power
PumpEquip(PumpNum)%Energy = PumpEquip(PumpNum)%Power * TimeStepSys * SecInHour
PumpEquipReport(PumpNum)%ShaftPower = ShaftPower
PumpEquipReport(PumpNum)%PumpHeattoFluidEnergy = PumpHeattoFluid * TimeStepSys * SecInHour
IF(PumpType == Pump_ConSpeed .OR. PumpType == Pump_VarSpeed .OR. PumpType == Pump_Cond) THEN
PumpEquipReport(PumpNum)%NumPumpsOperating = 1
ELSE IF(PumpType == PumpBank_ConSpeed .OR. PumpType == PumpBank_VarSpeed) THEN
PumpEquipReport(PumpNum)%NumPumpsOperating = NumPumpsRunning
END IF
PumpEquipReport(PumpNum)%ZoneTotalGainRate = Power - PumpHeattoFluid
PumpEquipReport(PumpNum)%ZoneTotalGainEnergy = PumpEquipReport(PumpNum)%ZoneTotalGainRate * TimeStepSys * SecInHour
PumpEquipReport(PumpNum)%ZoneConvGainRate = (1 - PumpEquip(PumpNum)%SkinLossRadFraction) &
* PumpEquipReport(PumpNum)%ZoneTotalGainRate
PumpEquipReport(PumpNum)%ZoneRadGainRate = PumpEquip(PumpNum)%SkinLossRadFraction &
* PumpEquipReport(PumpNum)%ZoneTotalGainRate
END IF
RETURN
END SUBROUTINE ReportPumps