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) | :: | CurveIndex | |||
logical, | intent(out) | :: | IsValid |
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 ValidatePLFCurve(CurveIndex, IsValid)
! SUBROUTINE INFORMATION:
! AUTHOR Peter Graham Ellis
! DATE WRITTEN February 2005
! MODIFIED na
! RE-ENGINEERED na
! PURPOSE OF THIS SUBROUTINE:
! Validates the Part Load Factor curve by making sure it can never be less than or equal to zero
! over the domain of Part Load Ratio inputs from 0 to 1.
! METHODOLOGY EMPLOYED:
! Currently can only check 0 and 1. Need changes in CurveManager to be able to check minimums and
! maximums.
! USE STATEMENTS:
USE CurveManager, ONLY: CurveValue, GetCurveType
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! SUBROUTINE ARGUMENT DEFINITIONS:
INTEGER, INTENT(IN) :: CurveIndex
LOGICAL, INTENT(OUT) :: IsValid
! FLOW:
IsValid = .TRUE.
! Check 0 and 1
IF (CurveValue(CurveIndex,0.0d0) <= 0) IsValid = .FALSE.
IF (CurveValue(CurveIndex,1.0d0) <= 0) IsValid = .FALSE.
IF (IsValid) THEN ! Check min/maxs
SELECT CASE (GetCurveType(CurveIndex))
CASE ('QUADRATIC')
! Curve coeffs are not currently exposed so there's no good way to do this yet
CASE ('CUBIC')
END SELECT
END IF
RETURN
END SUBROUTINE ValidatePLFCurve