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) | :: | TempControlledZoneID | |||
| integer, | intent(in) | :: | ActualZoneNum | |||
| real(kind=r64), | intent(inout) | :: | ZoneAirSetpoint | 
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 AdjustAirSetpointsforOpTempCntrl(TempControlledZoneID, ActualZoneNum, ZoneAirSetpoint)
          ! SUBROUTINE INFORMATION:
          !       AUTHOR         B. Griffith
          !       DATE WRITTEN   June 2006
          !       MODIFIED       na
          !       RE-ENGINEERED  na
          ! PURPOSE OF THIS SUBROUTINE:
          ! This subroutine modifies the air temperature setpoint to effect operative temperature control
          ! METHODOLOGY EMPLOYED:
          ! pass in data and alter setpoint if needed
          ! REFERENCES:
          ! na
          ! USE STATEMENTS:
  USE DataHeatBalance,   ONLY: MRT
  USE ScheduleManager, ONLY: GetCurrentScheduleValue
  IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
          ! SUBROUTINE ARGUMENT DEFINITIONS:
  INTEGER, INTENT(IN) :: TempControlledZoneID
  INTEGER, INTENT(IN) :: ActualZoneNum
  REAL(r64),    INTENT(INOUT) :: ZoneAirSetpoint
          ! SUBROUTINE PARAMETER DEFINITIONS:
          ! na
          ! INTERFACE BLOCK SPECIFICATIONS:
          ! na
          ! DERIVED TYPE DEFINITIONS:
          ! na
          ! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
  REAL(r64) :: thisMRT  ! local variable for mean radiant temperature in this zone
  REAL(r64) :: thisMRTFraction ! local variable for fraction that MRT is in Op Temp definition
  IF (.NOT.(AnyOpTempControl)) RETURN  ! do nothing to setpoint
  IF (.NOT. (TempControlledZone(TempControlledZoneID)%OperativeTempControl)) RETURN ! do nothing to setpoint
  ! is operative temp radiative fraction scheduled or fixed?
  If (TempControlledZone(TempControlledZoneID)%OpTempCntrlModeScheduled) then
    thisMRTFraction = GetCurrentScheduleValue(TempControlledZone(TempControlledZoneID)%OpTempRadiativeFractionSched)
  ELSE
    thisMRTFraction = TempControlledZone(TempControlledZoneID)%FixedRadiativeFraction
  ENDIF
  ! get mean radiant temperature for zone
  thisMRT = MRT(ActualZoneNum)
  ! modify setpoint for operative temperature control
  !  traping for MRT fractions between 0.0 and 0.9 during get input, so shouldn't be able to divide by zero here.
  ZoneAirSetpoint = (ZoneAirSetpoint - thisMRTFraction * thisMRT) / (1.d0 - thisMRTFraction)
  RETURN
END SUBROUTINE AdjustAirSetpointsforOpTempCntrl