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 | ||
---|---|---|---|---|---|---|
real(kind=r64), | intent(in) | :: | InletDryBulb | |||
real(kind=r64), | intent(in) | :: | InletWetBulb | |||
real(kind=r64), | intent(in) | :: | AirMassFlowRatio | |||
integer, | intent(in) | :: | SHRFTempCurveIndex | |||
integer, | intent(in) | :: | SHRFFlowCurveIndex | |||
real(kind=r64), | intent(in) | :: | SHRRated |
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.
FUNCTION CalcSHRUserDefinedCurves(InletDryBulb,InletWetBulb,AirMassFlowRatio, &
SHRFTempCurveIndex,SHRFFlowCurveIndex,SHRRated) RESULT(SHRopr)
! SUBROUTINE INFORMATION:
! AUTHOR Bereket Nigusse, FSEC
! DATE WRITTEN December 2012
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS FUNCTION:
! Returns the oprating sensible heat ratio for a given Rated SHR abd coil entering
! air DBT and WBT, and supply air mass flow fraction.
! METHODOLOGY EMPLOYED:
! Model uses user specified rated SHR, and SHR modifying curves for temperature and flow
! fraction. The curves adjust the rated SHR based on biquadratic curve for temperatures
! and quadratic function for supply air mass flow ratio (actual vs rated).
!
! The biquadratic and quadratic curves are normalized caurves generated from manufacturer's
! performance data
! REFERENCES: na
! USE STATEMENTS:
USE CurveManager, ONLY: CurveValue
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! FUNCTION ARGUMENT DEFINITIONS:
REAL(r64), INTENT (IN) :: InletDryBulb ! inlet air dry bulb temperature [C]
REAL(r64), INTENT (IN) :: InletWetBulb ! inlet air wet bulb temperature [C]
REAL(r64), INTENT (IN) :: AirMassFlowRatio ! ratio of actual air mass flow to rated air mass flow
INTEGER, INTENT (IN) :: SHRFTempCurveIndex ! SHR modifier curve index
INTEGER, INTENT (IN) :: SHRFFlowCurveIndex ! SHR modifier curve index
REAL(r64), INTENT (IN) :: SHRRated ! rated sensible heat ratio, user input
CHARACTER(len=*), PARAMETER :: RoutineName='CalcSHRUserDefinedCurves'
! INTERFACE BLOCK SPECIFICATIONS
! na
!
! DERIVED TYPE DEFINITIONS
! na
!
! FUNCTION LOCAL VARIABLE DECLARATIONS:
REAL(r64) :: SHRTempModFac ! Sensible Heat Ratio modifier (function of entering wetbulb, entering drybulb)
REAL(r64) :: SHRFlowModFac ! Sensible Heat Ratio modifier (function of actual vs rated flow)
REAL(r64) :: SHRopr ! operating SHR, corrected for Temp and Flow Fraction
! Get SHR modifying factor (function of inlet wetbulb & drybulb) for off-rated conditions
SHRTempModFac = CurveValue(SHRFTempCurveIndex,InletWetBulb,InletDryBulb)
IF(SHRTempModFac .LT. 0.0d0)THEN
SHRTempModFac = 0.0d0
END IF
! Get SHR modifying factor (function of mass flow ratio) for off-rated conditions
SHRFlowModFac = CurveValue(SHRFFlowCurveIndex,AirMassFlowRatio)
IF(SHRFlowModFac .LT. 0.0d0)THEN
SHRFlowModFac = 0.0d0
END IF
! Calculate "operating" sensible heat ratio
SHRopr = SHRRated * SHRTempModFac * SHRFlowModFac
IF (SHRopr .LT. 0.0d0) SHRopr = 0.0d0 ! SHR cannot be less than zero
IF (SHRopr .GT. 1.0d0) SHRopr = 1.0d0 ! SHR cannot be greater than 1.0
RETURN
END FUNCTION CalcSHRUserDefinedCurves