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) | :: | BaseboardTypeNum | |||
| character(len=*), | intent(in) | :: | BaseboardName | |||
| integer, | intent(in) | :: | EquipFlowCtrl | |||
| integer, | intent(in) | :: | LoopNum | |||
| integer, | intent(in) | :: | LoopSide | |||
| integer, | intent(inout) | :: | CompIndex | |||
| logical, | intent(in) | :: | FirstHVACIteration | |||
| logical, | intent(inout) | :: | InitLoopEquip | 
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 UpdateBaseboardPlantConnection(BaseboardTypeNum, &
                                          BaseboardName,&
                                          EquipFlowCtrl, &
                                          LoopNum,LoopSide,CompIndex,&
                                          FirstHVACIteration, InitLoopEquip)
          ! SUBROUTINE INFORMATION:
          !       AUTHOR         Chandan Sharma, FSEC
          !       DATE WRITTEN   Sept. 2010
          !       MODIFIED       na
          !       RE-ENGINEERED  na
          ! PURPOSE OF THIS SUBROUTINE:
          ! update sim routine called from plant
          ! METHODOLOGY EMPLOYED:
          ! check input, provide comp index, call utility routines
          ! REFERENCES:
          ! Based on UpdateBaseboardPlantConnection from Brent Griffith, Sept 2010
          ! USE STATEMENTS:
  USE PlantUtilities , ONLY: PullCompInterconnectTrigger
  USE DataPlant,       ONLY: ccSimPlantEquipTypes, TypeOf_Baseboard_Conv_Water, &
                             CriteriaType_MassFlowRate, CriteriaType_Temperature, CriteriaType_HeatTransferRate
  USE InputProcessor,  ONLY: FindItemInList
  USE General,         ONLY: TrimSigDigits
  USE DataGlobals,     ONLY: KickOffSimulation
  IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
          ! SUBROUTINE ARGUMENT DEFINITIONS:
          ! na
          ! SUBROUTINE PARAMETER DEFINITIONS:
          ! na
          ! INTERFACE BLOCK SPECIFICATIONS:
          ! na
          ! DERIVED TYPE DEFINITIONS:
          ! na
          ! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
  INTEGER, INTENT(IN)   :: BaseboardTypeNum     ! type index
  CHARACTER(len=*), INTENT(IN) :: BaseboardName ! component name
  INTEGER, INTENT(IN)    :: EquipFlowCtrl       ! Flow control mode for the equipment
  INTEGER, INTENT(IN)    :: LoopNum             ! Plant loop index for where called from
  INTEGER, INTENT(IN)    :: LoopSide            ! Plant loop side index for where called from
  INTEGER, INTENT(INOUT) :: CompIndex           ! Chiller number pointer
  LOGICAL , INTENT(IN)   :: FirstHVACIteration
  LOGICAL, INTENT(INOUT) :: InitLoopEquip       ! If not zero, calculate the max load for operating conditions
  INTEGER :: BaseboardNum
  INTEGER :: InletNodeNum
  INTEGER :: OutletNodeNum
    ! Find the correct baseboard
  IF (CompIndex == 0) THEN
    BaseboardNum = FindItemInList(BaseboardName,Baseboard%EquipID,NumBaseboards)
    IF (BaseboardNum == 0) THEN
      CALL ShowFatalError('UpdateBaseboardPlantConnection: Invalid Unit Specified '//cCMO_BBRadiator_Water//  &
         '="'//TRIM(BaseboardName)//'"')
    ENDIF
    CompIndex=BaseboardNum
  ELSE
    BaseboardNum=CompIndex
    IF (BaseboardNum > NumBaseboards .or. BaseboardNum < 1) THEN
      CALL ShowFatalError('UpdateBaseboardPlantConnection:  Invalid CompIndex passed='//  &
                          TRIM(TrimSigDigits(BaseboardNum))// &
                          ', Number of baseboards='//TRIM(TrimSigDigits(NumBaseboards))//  &
                          ', Entered baseboard name='//TRIM(BaseboardName))
    ENDIF
    IF (KickOffSimulation) THEN
      IF (BaseboardName /= Baseboard(BaseboardNum)%EquipID) THEN
        CALL ShowFatalError('UpdateBaseboardPlantConnection: Invalid CompIndex passed='//  &
                            TRIM(TrimSigDigits(BaseboardNum))// &
                            ', baseboard name='//TRIM(BaseboardName)//', stored baseboard Name for that index='//  &
                            TRIM(Baseboard(BaseboardNum)%EquipID))
      ENDIF
      IF (BaseboardTypeNum /= TypeOf_Baseboard_Conv_Water) THEN
        CALL ShowFatalError('UpdateBaseboardPlantConnection: Invalid CompIndex passed='//  &
                            TRIM(TrimSigDigits(BaseboardNum))// &
                            ', baseboard name='//TRIM(BaseboardName)//', stored baseboard Name for that index='//  &
                            TRIM(ccSimPlantEquipTypes(BaseboardTypeNum)) )
      ENDIF
    ENDIF
  ENDIF
  IF (InitLoopEquip) THEN
    RETURN
  END IF
  CALL PullCompInterconnectTrigger(Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   Baseboard(BaseboardNum)%BranchNum,   &
                                   Baseboard(BaseboardNum)%CompNum,     &
                                   Baseboard(BaseboardNum)%BBLoadReSimIndex, &
                                   Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   CriteriaType_HeatTransferRate,         &
                                   Baseboard(BaseboardNum)%Power)
  CALL PullCompInterconnectTrigger(Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   Baseboard(BaseboardNum)%BranchNum,   &
                                   Baseboard(BaseboardNum)%CompNum,     &
                                   Baseboard(BaseboardNum)%BBLoadReSimIndex, &
                                   Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   CriteriaType_MassFlowRate,         &
                                   Baseboard(BaseboardNum)%WaterMassFlowRate)
  CALL PullCompInterconnectTrigger(Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   Baseboard(BaseboardNum)%BranchNum,   &
                                   Baseboard(BaseboardNum)%CompNum,     &
                                   Baseboard(BaseboardNum)%BBLoadReSimIndex, &
                                   Baseboard(BaseboardNum)%LoopNum,     &
                                   Baseboard(BaseboardNum)%LoopSideNum, &
                                   CriteriaType_Temperature,         &
                                   Baseboard(BaseboardNum)%WaterOutletTemp)
  RETURN
END SUBROUTINE UpdateBaseboardPlantConnection