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 InitOutAirNodes
! SUBROUTINE INFORMATION:
! AUTHOR Fred Buhl
! DATE WRITTEN Sept 1998
! MODIFIED B. Griffith, added EMS override
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! Initialize the outside air node data data. In Particular,
! set the outside air nodes to the outside conditions at the
! start of every heat balance time step.
! METHODOLOGY EMPLOYED:
! REFERENCES:
! na
! USE STATEMENTS:
USE Psychrometrics, ONLY: PsyHFnTdbW, PsyWFnTdbTwbPb
IMPLICIT NONE
! SUBROUTINE PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
INTEGER :: OutsideAirNodeNum
INTEGER :: NodeNum
! Do the begin time step initialization
DO OutsideAirNodeNum = 1, NumOutsideAirNodes
NodeNum = OutsideAirNodeList(OutsideAirNodeNum)
IF (Node(NodeNum)%Height < 0.0d0) THEN
! Note -- this setting is different than the DataEnvironment "AT" settings.
Node(NodeNum)%OutAirDryBulb = OutDryBulbTemp
Node(NodeNum)%OutAirWetBulb = OutWetBulbTemp
ELSE
Node(NodeNum)%OutAirDryBulb = OutDryBulbTempAt(Node(NodeNum)%Height)
Node(NodeNum)%OutAirWetBulb = OutWetBulbTempAt(Node(NodeNum)%Height)
END IF
IF (Node(NodeNum)%EMSOverrideOutAirDryBulb) &
Node(NodeNum)%OutAirDryBulb = Node(NodeNum)%EMSValueForOutAirDryBulb
IF (Node(NodeNum)%EMSOverrideOutAirWetBulb) THEN
Node(NodeNum)%OutAirWetBulb = Node(NodeNum)%EMSValueForOutAirWetBulb
Node(NodeNum)%HumRat = PsyWFnTdbTwbPb(Node(NodeNum)%OutAirDryBulb, Node(NodeNum)%OutAirWetBulb, OutBaroPress)
Node(NodeNum)%Enthalpy = PsyHFnTdbW(Node(NodeNum)%OutAirDryBulb,Node(NodeNum)%HumRat)
ELSE
Node(NodeNum)%HumRat = OutHumRat
Node(NodeNum)%Enthalpy = PsyHFnTdbW(Node(NodeNum)%OutAirDryBulb,OutHumRat)
ENDIF
Node(NodeNum)%Temp = Node(NodeNum)%OutAirDryBulb
Node(NodeNum)%Press = OutBaroPress
Node(NodeNum)%Quality = 0.0d0
! Add contaminants
IF (Contaminant%CO2Simulation) Node(NodeNum)%CO2 = OutdoorCo2
IF (Contaminant%GenericContamSimulation) Node(NodeNum)%GenContam = OutdoorGC
END DO
RETURN
END SUBROUTINE InitOutAirNodes