InitConductionTransferFunctions Subroutine

public subroutine InitConductionTransferFunctions()

proc~~initconductiontransferfunctions~~UsesGraph proc~initconductiontransferfunctions InitConductionTransferFunctions module~general General module~general->proc~initconductiontransferfunctions module~dataconversions DataConversions module~dataconversions->proc~initconductiontransferfunctions module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~general module~dataprecisionglobals->module~dataconversions
Help

Arguments

None

Calls

proc~~initconductiontransferfunctions~~CallsGraph proc~initconductiontransferfunctions InitConductionTransferFunctions interface~showsevereerror ShowSevereError proc~initconductiontransferfunctions->interface~showsevereerror proc~calculateexponentialmatrix CalculateExponentialMatrix proc~initconductiontransferfunctions->proc~calculateexponentialmatrix interface~showfatalerror ShowFatalError proc~initconductiontransferfunctions->interface~showfatalerror proc~calculateinversematrix CalculateInverseMatrix proc~initconductiontransferfunctions->proc~calculateinversematrix interface~showcontinueerror ShowContinueError proc~initconductiontransferfunctions->interface~showcontinueerror proc~calculatectfs CalculateCTFs proc~initconductiontransferfunctions->proc~calculatectfs proc~calculategammas CalculateGammas proc~initconductiontransferfunctions->proc~calculategammas construct construct proc~initconductiontransferfunctions->construct proc~displaynumberandstring DisplayNumberandString proc~initconductiontransferfunctions->proc~displaynumberandstring roundsigdigits roundsigdigits proc~initconductiontransferfunctions->roundsigdigits material material proc~initconductiontransferfunctions->material proc~reportctfs ReportCTFs proc~initconductiontransferfunctions->proc~reportctfs proc~reportctfs->construct proc~reportctfs->material proc~displaymaterialroughness DisplayMaterialRoughness proc~reportctfs->proc~displaymaterialroughness 2 2 proc~reportctfs->2 scanforreports scanforreports proc~reportctfs->scanforreports 3 3 proc~reportctfs->3 4 4 proc~reportctfs->4
Help

Called By

proc~~initconductiontransferfunctions~~CalledByGraph proc~initconductiontransferfunctions InitConductionTransferFunctions proc~initheatbalance InitHeatBalance proc~initheatbalance->proc~initconductiontransferfunctions proc~manageheatbalance ManageHeatBalance proc~manageheatbalance->proc~initheatbalance proc~setupsimulation SetupSimulation proc~setupsimulation->proc~manageheatbalance proc~managesimulation ManageSimulation proc~managesimulation->proc~manageheatbalance proc~managesimulation->proc~setupsimulation proc~setupzonesizing SetupZoneSizing proc~setupzonesizing->proc~manageheatbalance proc~managesizing ManageSizing proc~managesizing->proc~manageheatbalance proc~managesizing->proc~setupzonesizing program~energyplus EnergyPlus program~energyplus->proc~managesimulation
Help


Source Code

SUBROUTINE InitConductionTransferFunctions

          ! SUBROUTINE INFORMATION:
          !       AUTHOR         Russ Taylor
          !       DATE WRITTEN   June 1990
          !       MODIFIED       July 1994, LKL, cosmetic and improve execution time
          !                      Dec 1995, Apr 1996, RKS, cosmetic and clean-up changes, changes to allow proper
          !                       handling of resistive layers
          !                      June 2000, RKS, addition of QTFs (both 1- and 2-D solutions for constructions
          !                       with embedded/internal heat sources/sinks)
          !                      July 2010-August 2011, RKS, R-value only layer enhancement
          !       RE-ENGINEERED  June 1996, February 1997, August-October 1997, RKS; Nov 1999, LKL

          ! PURPOSE OF THIS SUBROUTINE:
          ! This subroutine serves as the main drive for the
          ! calculation of Conduction Transfer Functions (CTFs)
          ! using the state space method.

          ! METHODOLOGY EMPLOYED:
          ! The basic steps of this routine (which may be a little difficult
          ! to decipher until another major revision is done) are:
          !   1. Determine if enough material info has been entered
          !   2. Determine whether construct is (a) all resistive,
          !      (b) the reverse of a previously calculated construct, or
          !      (c) neither (a) nor (b), i.e. a layer for which CTFs must
          !      be calculated.
          !   3. If the answer to 2 is (a), calculate the overall resistance
          !      and use this as the CTF (steady state conduction).
          !   4. If the answer to 2 is (b), transfer the CTFs for the reverse
          !      construction to the CTF arrays for this construct (reversing
          !      the inside and outside terms).
          !   5. If the answer to 2 is (c), calculate the CTFs using the state
          !      space method described below.
          ! The state space method of calculating CTFs involves
          ! applying a finite difference grid to a multilayered
          ! building element and performing linear algebra on the
          ! resulting system of equations (in matrix form).
          ! CTFs must be calculated for non-reversed layers which
          ! have an appreciable thermal mass.  A conversion from
          ! SI units to English units is made due to concerns
          ! about round off problems noted in earlier version of
          ! this subroutine.

          ! REFERENCES:
          ! Seem, J.E.  "Modeling of Heat Transfer in Buildings",
          !  Department of Mechanical Engineering, University of
          !  Wisconsin-Madison, 1987.
          ! Strand, R.K. "Testing Design Description for the CTF
          !  Calculation Code in BEST", BSO internal document,
          !  May/June 1996.
          ! Strand, R.K. "Heat Source Transfer Functions and Their
          !  Applicatoin to Low Temperature Radiant Heating System",
          !  Ph.D. Dissertation, Department of Mechanical and
          !  Industrial Engineering, University of Illinois at
          !  Urbana-Champaign, 1995.

          ! USE STATEMENTS:
  USE DataConversions
  USE General, ONLY: RoundSigDigits

  IMPLICIT NONE    ! Enforce explicit typing of all variables in this routine

          ! SUBROUTINE ARGUMENT DEFINITIONS:
          ! na

          ! SUBROUTINE PARAMETER DEFINITIONS:
  REAL(r64), PARAMETER :: PhysPropLimit = 1.0d-6  ! Physical properties limit.
          ! This is more or less the traditional value from BLAST.

  REAL(r64), PARAMETER :: RValueLowLimit = 1.0d-3  ! Physical properties limit for R-value only layers
          ! This value was based on trial and error related to CR 7791 where a
          ! user had entered a "no insulation" layer with an R-value of 1.0E-05.
          ! Some trial and error established this as a potential value though
          ! there is no guarantee that this is a good value.

  INTEGER, PARAMETER :: MinNodes = 6 ! Minimum number of state space nodes
          ! per layer.  This value was chosen based on experience with IBLAST.

  REAL(r64), PARAMETER :: MaxAllowedCTFSumError = 0.01d0 ! Allow a 1 percent
          ! difference between the CTF series summations.  If the difference is
          ! greater than this, then the coefficients will not yield a valid steady
          ! state solution.

  REAL(r64), PARAMETER :: MaxAllowedTimeStep = 4.0d0   ! Sets the maximum allowed time step
          ! for CTF calculations to be 4 hours.  This is done in response to some
          ! rare situations where odd or faulty input will cause the routine to
          ! go off and get some huge time step (in excess of 20 hours).  This value
          ! is a compromise that does not really solve any input problems.  One run
          ! indicated that 2 meters of concrete will result in a time step of slightly
          ! more than 3 hours.  So, 4 hours was arbitrarily picked as a ceiling for
          ! time steps so that an error message can be produced to warn the user
          ! that something isn't right.  Note that the 4 hour limit does not guarantee
          ! that problems won't exist and it does not necessarily avoid any problems
          ! that interpolated temperature histories might cause.

          ! INTERFACE BLOCK SPECIFICATIONS
          ! na

          ! DERIVED TYPE DEFINITIONS
          ! na

          ! SUBROUTINE LOCAL VARIABLE DECLARATIONS:
  INTEGER, &
    DIMENSION(MaxLayersInConstruct) :: AdjacentResLayerNum ! Layers that are adjacent to each other which are resistive
                                                           ! only can and should be combined
  INTEGER                           :: AdjLayer   ! Loop counter for adjacent resistance-only layers
  REAL(r64)             :: amatx      ! Intermediate calculation variable
  REAL(r64)             :: amatxx     ! Intermediate calculation variable
  REAL(r64)             :: amaty      ! Intermediate calculation variable
  REAL(r64)             :: BiggestSum ! Largest CTF series summation (maximum of SumXi, SumYi, and SumZi)
  REAL(r64)             :: cap        ! Thermal capacitance of a node (intermediate calculation)
  REAL(r64)             :: capavg     ! Thermal capacitance of a node (average value for a node at an interface)
  REAL(r64)             :: cnd        ! Total thermal conductance (1/Rtot) of the bldg element
  INTEGER                           :: Constr     ! Loop counter
  INTEGER                           :: ConstrNum  ! Loop counter (construct number)
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: cp         ! Specific heat of a material layer
  LOGICAL                           :: CTFConvrg  ! Set after CTFs are calculated, based on whether there are too
                                                  ! many CTF terms
  INTEGER                           :: CurrentLayer ! Pointer to material number in Material derived type (current layer)
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: dl         ! Thickness of a material layer
  REAL(r64)             :: dtn        ! Intermediate calculation of the time step
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: dx         ! Distance between nodes in a particular material layer
  REAL(r64)             :: dxn        ! Intermediate calculation of nodal spacing
  REAL(r64)             :: dxtmp      ! Intermediate calculation variable ( = 1/dx/cap)
  REAL(r64)             :: dyn        ! Nodal spacing in the direction perpendicular to the main direction
                                                  ! of heat transfer (only valid for a 2-D solution)
  LOGICAL                           :: ErrorsFound=.false.  !Flag for input error condition
  INTEGER                           :: HistTerm   ! Loop counter
  INTEGER                           :: ipts1      ! Intermediate calculation for number of nodes per layer
  INTEGER                           :: ir         ! Loop control for constructing Identity Matrix
  INTEGER                           :: Layer      ! Loop counter
  INTEGER                           :: Layer1     ! Loop counter
  INTEGER                           :: LayersInConstruct ! Array containing the number of layers for each construct
                                                  ! Different from TotLayers because shades are not include in local var
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: lr         ! R value of a material layer
  INTEGER                           :: Node       ! Loop counter
  INTEGER                           :: Node2      ! Node number (modification of Node and NodeInRow)
  INTEGER                           :: NodeInLayer ! Loop counter
  INTEGER                           :: NodeInRow  ! Loop counter
  INTEGER, &
    DIMENSION(MaxLayersInConstruct) :: Nodes      ! Array containing the number of nodes per layer
  INTEGER                           :: NumResLayers ! Number of resistive layers in the construction
                                                  ! property allowable, traditional value from BLAST
  INTEGER                           :: NumAdjResLayers ! Number of resistive layers that are adjacent
  INTEGER                           :: OppositeLayer ! Used for comparing constructions (to see if one is the reverse of another)
  LOGICAL, &
    DIMENSION(MaxLayersInConstruct) :: ResLayer   ! Set true if the layer must be handled as a resistive
  LOGICAL                           :: RevConst   ! Set true if one construct is the reverse of another (CTFs already
                                                  ! available)
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: rho        ! Density of a material layer
  REAL(r64), &
    DIMENSION(MaxLayersInConstruct) :: rk         ! Thermal conductivity of a material layer
  REAL(r64)             :: rs         ! Total thermal resistance of the building element
  REAL(r64)             :: SumXi      ! Summation of all of the Xi terms (inside CTFs) for a construction
  REAL(r64)             :: SumYi      ! Summation of all of the Xi terms (cross CTFs) for a construction
  REAL(r64)             :: SumZi      ! Summation of all of the Xi terms (outside CTFs) for a construction
  LOGICAL :: DoCTFErrorReport
  REAL(r64) :: Alpha ! thermal diffusivity in m2/s, for local check of properties
  REAL(r64) :: DeltaTimestep      ! zone timestep in seconds, for local check of properties
  REAL(r64) :: ThicknessThreshold ! min thickness consistent with other thermal properties, for local check

          ! FLOW:
          ! Subroutine initializations
  TinyLimit=rTinyValue
  DoCTFErrorReport=.false.

  DO ConstrNum = 1, TotConstructs   ! Begin construction loop ...

    Construct(ConstrNum)%CTFCross       = 0.0D0
    Construct(ConstrNum)%CTFFlux        = 0.0D0
    Construct(ConstrNum)%CTFInside      = 0.0D0
    Construct(ConstrNum)%CTFOutside     = 0.0D0
    Construct(ConstrNum)%CTFSourceIn    = 0.0D0
    Construct(ConstrNum)%CTFSourceOut   = 0.0D0
    Construct(ConstrNum)%CTFTimeStep    = 0.0D0
    Construct(ConstrNum)%CTFTSourceOut  = 0.0D0
    Construct(ConstrNum)%CTFTSourceIn   = 0.0D0
    Construct(ConstrNum)%CTFTSourceQ    = 0.0D0
    Construct(ConstrNum)%CTFTUserOut    = 0.0D0
    Construct(ConstrNum)%CTFTUserIn     = 0.0D0
    Construct(ConstrNum)%CTFTUserSource = 0.0D0
    Construct(ConstrNum)%NumHistories   = 0
    Construct(ConstrNum)%NumCTFTerms    = 0
    Construct(ConstrNum)%UValue         = 0.0d0

    AdjacentResLayerNum = 0 ! Zero this out for each construct

    IF(Construct(ConstrNum)%TypeIsWindow) CYCLE

          ! Initialize construct parameters

    Construct(ConstrNum)%CTFTimeStep = TimeStepZone
    rs = 0.0D0
    LayersInConstruct = 0
    NumResLayers = 0
    ResLayer     = .FALSE.

    DO Layer = 1, Construct(ConstrNum)%TotLayers    ! Begin layer loop ...

          ! Loop through all of the layers in the current construct. The purpose
          ! of this loop is to define the thermal properties necessary to
          ! calculate the CTFs.

      CurrentLayer = Construct(ConstrNum)%LayerPoint(Layer)

        LayersInConstruct = LayersInConstruct + 1

          ! Obtain thermal properties from the Material derived type

        dl(Layer)  = Material(CurrentLayer)%Thickness
        rk(Layer)  = Material(CurrentLayer)%Conductivity
        rho(Layer) = Material(CurrentLayer)%Density
        cp(Layer)  = Material(CurrentLayer)%SpecHeat ! Must convert
                                        ! from kJ/kg-K to J/kg-k due to rk units

        IF (Construct(ConstrNum)%SourceSinkPresent .AND. .Not. Material(CurrentLayer)%WarnedForHighDiffusivity) THEN
          ! check for materials that are too conductive or thin
          IF ((rho(Layer) *  cp(Layer)) > 0.d0) THEN
            Alpha = rk(Layer) / (rho(Layer) *  cp(Layer))
            IF (Alpha > HighDiffusivityThreshold ) THEN
              DeltaTimestep      = TimeStepZone * SecInHour
              ThicknessThreshold = SQRT(Alpha * DeltaTimestep * 3.d0)
              IF (Material(CurrentLayer)%Thickness < ThicknessThreshold) THEN
                CALL ShowSevereError('InitConductionTransferFunctions: Found Material that is too thin and/or too ' &
                                       //'highly conductive, material name = '  // TRIM(Material(CurrentLayer)%Name))
                CALL ShowContinueError('High conductivity Material layers are not well supported for internal source ' &
                                        //'constructions, material conductivity = ' &
                                        //TRIM(RoundSigDigits(Material(CurrentLayer)%Conductivity, 3)) //' [W/m-K]')
                CALL ShowContinueError('Material thermal diffusivity = ' //TRIM(RoundSigDigits(Alpha, 3)) //' [m2/s]')
                CALL ShowContinueError('Material with this thermal diffusivity should have thickness > ' &
                                      //  TRIM(RoundSigDigits(ThicknessThreshold , 5)) // ' [m]')
                IF (Material(CurrentLayer)%Thickness < ThinMaterialLayerThreshold) THEN
                  CALL ShowContinueError('Material may be too thin to be modeled well, thickness = ' &
                                          // TRIM(RoundSigDigits(Material(currentLayer)%Thickness, 5 ))//' [m]')
                  CALL ShowContinueError('Material with this thermal diffusivity should have thickness > ' &
                                      //  TRIM(RoundSigDigits(ThinMaterialLayerThreshold , 5)) // ' [m]')
                ENDIF
                Material(CurrentLayer)%WarnedForHighDiffusivity = .TRUE.
              ENDIF
            ENDIF
          ENDIF
        ENDIF

        IF (rk(Layer) <= PhysPropLimit) THEN  ! Thermal conductivity too small,
                            ! thus this must be handled as a resistive layer

          ResLayer(Layer) = .TRUE.

        ELSE

          lr(Layer) = dl(Layer)/rk(Layer)
          IF ((dl(Layer)*SQRT(rho(Layer)*cp(Layer)/rk(Layer))) &
                                             < PhysPropLimit) THEN

          ! If the time constant is smaller than some reasonable
          ! limit, this should be treated as a resistive layer.

            ResLayer(Layer) = .TRUE.

          ELSE      ! Layer has significant thermal mass (non-resistive)

            ResLayer(Layer) = .FALSE.

          END IF
        END IF

          ! If not a resistive layer, nothing further is required
          ! for this layer.

        IF (ResLayer(Layer)) THEN  ! Resistive layer-check for R-value, etc.
          NumResLayers = NumResLayers + 1 ! Increment number of resistive layers
          lr(Layer) = Material(CurrentLayer)%Resistance    ! User defined thermal resistivity
          IF (lr(Layer) < RValueLowLimit) THEN  ! User didn't define enough
                    ! parameters to calculate CTFs for a building element
                    ! containing this layer.

            CALL ShowSevereError('InitConductionTransferFunctions: Material='//TRIM(Material(CurrentLayer)%Name)//  &
               'R Value below lowest allowed value')
            CALL ShowContinueError('Lowest allowed value=['//trim(RoundSigDigits(RValueLowLimit,3))//  &
                          '], Material R Value=['//trim(RoundSigDigits(lr(Layer),3))//'].')
            ErrorsFound=.true.

          ELSE      ! A valid user defined R-value is available.
                    ! If this is either the first or last layer in the construction,
                    ! then assign other properties based on air at 1 atm, 300K.
                    ! Reference for air properties:  Incropera and DeWitt,
                    ! Introduction to Heat Transfer, Appendix A, Table A.4,
                    ! John Wiley & Sons, New York, 1985.
                    ! If this is not the first or last layer in the construction,
                    ! then use the "exact" approach to model a massless layer
                    ! based on the node equations for the state space method.

            IF ( (Layer == 1) .OR. (Layer == Construct(ConstrNum)%TotLayers) .OR. &
                 (.NOT. Material(Construct(ConstrNum)%LayerPoint(Layer))%ROnly) ) THEN
              cp(Layer)  = 1.007d0
              rho(Layer) = 1.1614d0
              rk(Layer)  = 0.0263d0
              dl(Layer)  = rk(Layer)*lr(Layer)
            ELSE
              cp(Layer)  = 0.0d0
              rho(Layer) = 0.0d0
              rk(Layer)  = 1.0d0
              dl(Layer)  = lr(Layer)
            END IF

          END IF
        END IF      ! ... end of resistive layer determination IF-THEN block.
    END DO          ! ... end of layer loop.

    ! If errors have been found, just cycle

    IF (ErrorsFound) CYCLE

          ! Combine any adjacent resistive-only (no mass) layers together
          ! to avoid a divide by zero error in the CTF calculations below.
          ! Since the inner and outer layers cannot be resistive layers
          ! (inner and outer layer still converted to equivalent air layer)
          ! there can only be resistive layers adjacent to one another if
          ! there are more than three total layers and more than one
          ! resistive layer.
    IF ((LayersInConstruct > 3).AND.(NumResLayers > 1)) THEN
      NumAdjResLayers = 0
      DO Layer = 2, LayersInConstruct-2
        IF ( (ResLayer(Layer)) .AND. (ResLayer(Layer+1)) ) THEN
          NumAdjResLayers = NumAdjResLayers + 1
          ! There is method to the next assignment statement.  As the layers get shifted, the layer
          ! numbers will also shift.  Thus, we have to also shift which layer we are dealing with.
          AdjacentResLayerNum(NumAdjResLayers) = Layer + 1 - NumAdjResLayers
        END IF
      END DO
      DO AdjLayer = 1, NumAdjResLayers
        Layer = AdjacentResLayerNum(AdjLayer)
          ! Double check to make sure we are in the right place...
        IF ( (ResLayer(Layer)) .AND. (ResLayer(Layer+1)) ) THEN
            ! Shift layers forward after combining two adjacent layers.  Then
            ! restart the do loop.
          cp(Layer)  = 0.0d0
          rho(Layer) = 0.0d0
          rk(Layer)  = 1.0d0
          lr(Layer)  = lr(Layer) + lr(Layer+1)
          dl(Layer)  = lr(Layer)
          NumResLayers = NumResLayers - 1 ! Combining layers so decrease number of resistive layers
          DO Layer1 = Layer+1, LayersInConstruct - 1
            lr(Layer1)  = lr(Layer1+1)
            dl(Layer1)  = dl(Layer1+1)
            rk(Layer1)  = rk(Layer1+1)
            rho(Layer1) = rho(Layer1+1)
            cp(Layer1)  = cp(Layer1+1)
            ResLayer(Layer1) = ResLayer(Layer1+1)
          END DO
            ! Then zero out the layer that got shifted forward
          cp(LayersInConstruct)  = 0.0d0
          rho(LayersInConstruct) = 0.0d0
          rk(LayersInConstruct)  = 0.0d0
          lr(LayersInConstruct)  = 0.0d0
          dl(LayersInConstruct)  = 0.0d0
            ! Now reduce the number of layers in construct since merger is complete
          LayersInConstruct = LayersInConstruct - 1
            ! Also adjust layers with source/sinks if two layers are merged
          IF (Construct(ConstrNum)%SourceSinkPresent) THEN
            Construct(ConstrNum)%SourceAfterLayer = Construct(ConstrNum)%SourceAfterLayer - 1
            Construct(ConstrNum)%TempAfterLayer   = Construct(ConstrNum)%TempAfterLayer - 1
          END IF
        ELSE ! These are not adjacent layers and there is a logic flaw here (should not happen)
          CALL ShowFatalError('Combining resistance layers failed for '//TRIM(Construct(ConstrNum)%Name))
          CALL ShowContinueError('This should never happen.  Contact EnergyPlus Support for further assistance.')
        END IF
      END DO
    END IF

          ! Convert SI units to English.  In theory, conversion to English
          ! units is not necessary; however, Russ Taylor noted that some
          ! numerical problems when SI units were used and decided to continue
          ! calculating CTFs in English units.

    DO Layer = 1,LayersInConstruct  ! Begin units conversion loop ...

      lr(Layer)  = lr(Layer)*CFU
      dl(Layer)  = dl(Layer)/CFL
      rk(Layer)  = rk(Layer)/CFK
      rho(Layer) = rho(Layer)/CFD
      cp(Layer)  = cp(Layer)/(CFC*1000.0d0)

    END DO          ! ... end of layer loop for units conversion.

    IF (Construct(ConstrNum)%SolutionDimensions == 1) THEN
      dyn = 0.0d0
    ELSE
      dyn = (Construct(ConstrNum)%ThicknessPerpend/CFL)/REAL(NumOfPerpendNodes-1,r64)
    END IF

          ! Compute total construct conductivity and resistivity.

    DO Layer = 1,LayersInConstruct
      rs = rs + lr(Layer)   ! Resistances in series sum algebraically
    END DO

    cnd = 1.0D0/rs      ! Conductivity is the inverse of resistivity

    IF (LayersInConstruct > NumResLayers) THEN

          ! One or more are not simple resistive layers so CTFs will have to be
          ! calculated unless this is a reverse of a previously defined
          ! construction.

          ! Check for reversed construction of interzone surfaces by checking
          ! previous constructions for same number of layers as first indicator.

      RevConst = .FALSE.

      DO Constr = 1, ConstrNum-1       ! Constructions loop (check reversed) ...

          ! If a source or sink is present in this construction, do not allow any
          ! checks for reversed constructions, i.e., always force EnergyPlus to
          ! calculate CTF/QTFs.  So, don't even check for reversed constructions.
        IF (Construct(ConstrNum)%SourceSinkPresent) EXIT ! Constr DO loop

        IF (Construct(ConstrNum)%TotLayers == & ! Same number of layers--now
               Construct(Constr)%TotLayers) THEN  ! check for reversed construct.

          RevConst = .TRUE.

          DO Layer = 1, Construct(ConstrNum)%TotLayers  ! Begin layers loop ...

          ! RevConst is set to FALSE anytime a mismatch in materials is found.
          ! This will exit this DO immediately and go on to the next construct
          ! (if any remain).

            OppositeLayer = Construct(ConstrNum)%TotLayers-Layer+1

            IF (Construct(ConstrNum)%LayerPoint(Layer) /=  &
                Construct(Constr)%LayerPoint(OppositeLayer)) THEN

                RevConst = .FALSE.
                EXIT ! Layer DO loop

            END IF

          END DO    ! ... end of layers loop.

          IF (RevConst) THEN        ! Curent construction is a reverse of
                    ! construction Constr.  Thus, CTFs do not need to be re-
                    ! calculated.  Copy CTF info for construction Constr to
                    ! construction ConstrNum.

            Construct(ConstrNum)%CTFTimeStep  = Construct(Constr)%CTFTimeStep
            Construct(ConstrNum)%NumHistories = Construct(Constr)%NumHistories
            Construct(ConstrNum)%NumCTFTerms  = Construct(Constr)%NumCTFTerms

          ! Transfer the temperature and flux history terms to CTF arrays.
          ! Loop through the number of CTF history terms ...
            DO HistTerm = 0, Construct(ConstrNum)%NumCTFTerms

              Construct(ConstrNum)%CTFInside(HistTerm)  = Construct(Constr)%CTFOutside(HistTerm)
              Construct(ConstrNum)%CTFCross(HistTerm)   = Construct(Constr)%CTFCross(HistTerm)
              Construct(ConstrNum)%CTFOutside(HistTerm) = Construct(Constr)%CTFInside(HistTerm)
              IF (HistTerm /= 0) &
                 Construct(ConstrNum)%CTFFlux(HistTerm) = Construct(Constr)%CTFFlux(HistTerm)

            END DO  ! ... end of CTF history terms loop.

            EXIT ! Constr DO loop

          END IF    ! ... end of reversed construction found block

        END IF      ! ... end of reversed construct (same number of layers) block.

      END DO        ! ... end of construct loop (check reversed--Constr)

      IF (.NOT.RevConst) THEN       ! Calculate CTFs (non-reversed constr)

          ! Estimate number of nodes each layer of the construct will require
          ! and calculate the nodal spacing from that

        DO Layer = 1, LayersInConstruct ! Begin loop thru layers ...

          ! The calculation of dxn used here is based on a standard stability
          ! criteria for explicit finite difference solutions.  This criteria
          ! was chosen not because it is viewed to be correct, but rather for
          ! lack of any better criteria at this time.  The use of a Fourier
          ! number based criteria such as this is probably physically correct,
          ! though the coefficient (2.0) may not be.

          ! If this is a "resistive" layer, only need a single node
          IF ( (ResLayer(Layer)) .AND. (Layer>1) .AND. (Layer<LayersInConstruct) ) THEN
            Nodes(Layer) = 1
            dx(Layer)    = dl(Layer)
          ELSE
            dxn = sqrt(2.0d0*(rk(Layer)/rho(Layer)/cp(Layer)) &
                        *Construct(ConstrNum)%CTFTimeStep)

            ipts1 = int(dl(Layer)/dxn)  ! number of nodes=thickness/spacing

          ! Limit the upper and lower bounds of the number of
          ! nodes to MaxCTFTerms and MinNodes respectively.

            IF (ipts1 > MaxCTFTerms) THEN    ! Too many nodes
              Nodes(Layer) = MaxCTFTerms
            ELSE IF (ipts1 < MinNodes) THEN  ! Too few nodes
              Nodes(Layer) = MinNodes
            ELSE                              ! Calculated number of nodes ok
              Nodes(Layer) = ipts1
            END IF

            IF (Construct(ConstrNum)%SolutionDimensions > 1) THEN
              IF (ipts1 > MaxCTFTerms/2) ipts1 = MaxCTFTerms/2
            END IF

            dx(Layer) = dl(Layer)/REAL(Nodes(Layer),r64) ! calc node spacing

          END IF

        END DO      ! . .. end of layers in construction loop (calculating #nodes per layer)

          ! Determine the total number of nodes (rcmax)

        rcmax = 0
        DO Layer = 1, LayersInConstruct
          rcmax = rcmax + Nodes(Layer)
        END DO

          ! Nodes are placed throughout layers and at the interface between
          ! layers.  As a result, the end layers share a node with the adjacent
          ! layer-leaving one less node total for all layers.

        rcmax = rcmax-1
        IF (Construct(ConstrNum)%SolutionDimensions > 1) rcmax = rcmax * NumOfPerpendNodes

! This section no longer needed as rcmax/number of total nodes is allowed to float.
! If reinstated, this node reduction section would have to be modified to account for
! the possibility that a 2-D solution is potentially being performed.
          ! Check to see if the maximum number of nodes for the construct has
          ! been exceeded.  Reduce the nodes per layer if necessary, but only
          ! if the number of nodes in a particular layer is greater than the
          ! minimum node limit.

!        DO WHILE (rcmax > MaxTotNodes)     ! Begin total node reduction loop ...

!          rcmax = 0

!          DO Layer = 1, LayersInConstruct   ! Begin layer node reduction ...

!          ! If more nodes than the minimum limit for a layer, reduce the
!          ! number of nodes.

!            IF (Nodes(Layer) > MinNodes) THEN
!              Nodes(Layer) = Nodes(Layer)-1
!              dx(Layer) = dl(Layer)/dble(float(Nodes(Layer))) ! Recalc node spacing
!            END IF

!            rcmax = rcmax + Nodes(Layer) ! Recalculate total number of nodes

!          END DO        ! ... end of layer loop for node reduction.

!          rcmax = rcmax-1 ! See note above on counting rcmax

!        END DO      ! ... end of total node reduction loop.

          ! For constructions that have sources or sinks present, determine which
          ! node the source/sink is applied at and also where the temperature
          ! calculation has been requested.
        NodeSource   = 0
        NodeUserTemp = 0
        IF (Construct(ConstrNum)%SourceSinkPresent) THEN

          DO Layer = 1, Construct(ConstrNum)%SourceAfterLayer
            NodeSource = NodeSource + Nodes(Layer)
          END DO
          IF ( (NodeSource > 0) .AND. (Construct(ConstrNum)%SolutionDimensions > 1) ) &
            NodeSource = ((NodeSource-1)*NumOfPerpendNodes) + 1

          DO Layer = 1, Construct(ConstrNum)%TempAfterLayer
            NodeUserTemp = NodeUserTemp + Nodes(Layer)
          END DO
          IF ( (NodeUserTemp > 0) .AND. (Construct(ConstrNum)%SolutionDimensions > 1) ) &
            NodeUserTemp = ((NodeUserTemp-1)*NumOfPerpendNodes) + 1

        END IF

          ! "Adjust time step to ensure stability."  If the time step is too
          ! small, it will result in too many history terms which can lead to
          ! solution instability.  The method used here to determine whether or
          ! not the time step will produce a stable solution is based on a pure
          ! Fourier number calculation (Fo = 1) and has not proven to be
          ! completely effective.  If too many history terms are calculated,
          ! the time step is adjusted and the CTFs end up being recalculated
          ! (see later code in this routine).

        dtn = 0.0D0
        Construct(ConstrNum)%CTFTimeStep = 0.0D0
        DO Layer = 1, LayersInConstruct
          IF (Nodes(Layer) >= MaxCTFTerms) THEN
            IF (Construct(ConstrNum)%SolutionDimensions == 1) THEN
              dtn = rho(Layer)*cp(Layer)*dx(Layer)**2/rk(Layer)
            ELSE    ! 2-D solution requested-->this changes length parameter in Fourier number calculation
              dtn = rho(Layer)*cp(Layer)*((dx(Layer)**2)+(dyn**2))/rk(Layer)
            END IF
            IF (dtn > Construct(ConstrNum)%CTFTimeStep) &
                       Construct(ConstrNum)%CTFTimeStep = dtn
          END IF
        END DO

          ! If the user defined time step is significantly different than the
          ! calculated time step for this construct, then CTFTimeStep must be
          ! revised.

        IF (ABS((TimeStepZone-Construct(ConstrNum)%CTFTimeStep)/TimeStepZone) > 0.1d0) THEN

          IF (Construct(ConstrNum)%CTFTimeStep > TimeStepZone) THEN

          ! CTFTimeStep larger than TimeStepZone:  Make sure TimeStepZone
          ! divides evenly into CTFTimeStep
            Construct(ConstrNum)%NumHistories = &
              INT((Construct(ConstrNum)%CTFTimeStep/TimeStepZone)+0.5D0)
            Construct(ConstrNum)%CTFTimeStep = &
              TimeStepZone*REAL(Construct(ConstrNum)%NumHistories,r64)

          ELSE

          ! CTFTimeStep smaller than TimeStepZone:  Set to TimeStepZone
            Construct(ConstrNum)%CTFTimeStep = TimeStepZone
            Construct(ConstrNum)%NumHistories = 1

          END IF

        END IF

          ! Calculate the CTFs using the state space method
          ! outlined in Seem's dissertation.  The main matrices
          ! AMat, BMat, CMat, and DMat must be derived from
          ! applying a finite difference network to the layers of
          ! each bldg element.

          ! This section must continue looping until the CTFs
          ! calculated here will produce a stable solution (less
          ! history terms than MaxCTFTerms).

          ! This first subsection calculates the elements of AMat
          ! which characterizes the heat transfer inside the
          ! building element.

        CTFConvrg = .FALSE.         ! Initialize loop control logical

        ALLOCATE(AExp(rcmax,rcmax))
        AExp=0.0D0
        ALLOCATE(AMat(rcmax,rcmax))
        AMat=0.0D0
        ALLOCATE(AInv(rcmax,rcmax))
        AInv=0.0D0
        ALLOCATE(IdenMatrix(rcmax,rcmax))
        IdenMatrix=0.0D0
        DO ir=1,rcmax
          IdenMatrix(ir,ir)=1.0D0
        ENDDO
        ALLOCATE(e(rcmax))
        e=0.0D0
        ALLOCATE(Gamma1(rcmax,3))
        Gamma1=0.0D0
        ALLOCATE(Gamma2(rcmax,3))
        Gamma2=0.0D0
        ALLOCATE(s(rcmax,4,3))
        s=0.0D0

        DO WHILE (.NOT.CTFConvrg)   ! Begin CTF calculation loop ...

          BMat(3) = 0.0d0

          IF (Construct(ConstrNum)%SolutionDimensions == 1) THEN

          ! Set up intermediate calculations for the first layer.
            cap = rho(1)*cp(1)*dx(1)
            cap = 1.5d0*cap ! For the first node, account for the fact that the
                            ! half-node at the surface results in a "loss" of some
                            ! thermal mass.  Therefore, for simplicity, include it
                            ! at this node.  Same thing done at the last node...
            dxtmp = 1.0D0/dx(1)/cap

            AMat(1,1) = -2.0D0*rk(1)*dxtmp    ! Assign the matrix values for the
            AMat(1,2) = rk(1)*dxtmp           ! first node.
            BMat(1)   = rk(1)*dxtmp           ! Assign non-zero value of BMat.

            Layer = 1   ! Initialize the "layer" counter

            NodeInLayer = 2   ! Initialize the node (in a layer) counter (already
                              ! on the second node for the first layer

            DO Node = 2,rcmax-1 ! Begin nodes loop (includes all nodes except the
                                ! first/last which have special equations) ...

              IF ((NodeInLayer == Nodes(Layer)) .AND. &
                       (LayersInConstruct /= 1)) THEN    ! For a node at
                    ! the interface between two adjacent layers, the
                    ! capacitance of the node must be calculated from the 2
                    ! halves which may be made up of 2 different materials.

                cap = ( rho(Layer)*cp(Layer)*dx(Layer) &
                       +rho(Layer+1)*cp(Layer+1)*dx(Layer+1) ) * 0.5D0

                AMat(Node,Node-1) = rk(Layer)/dx(Layer)/cap           ! Assign matrix
                AMat(Node,Node)   = -1.0D0 * ( rk(Layer)/dx(Layer)+ & ! values for
                                    rk(Layer+1)/dx(Layer+1) ) / cap   ! the current
                AMat(Node,Node+1) = rk(Layer+1)/dx(Layer+1)/cap       ! node.

                NodeInLayer = 0       ! At an interface, reset nodes in layer counter
                Layer       = Layer+1 ! Also increment the layer counter

              ELSE    ! Standard node within any layer

                cap = rho(Layer)*cp(Layer)*dx(Layer)      ! Intermediate
                dxtmp = 1.0D0/dx(Layer)/cap               ! calculations.
                AMat(Node,Node-1) = rk(Layer)*dxtmp       ! Assign matrix
                AMat(Node,Node) = -2.0D0*rk(Layer)*dxtmp  ! values for the
                AMat(Node,Node+1) = rk(Layer)*dxtmp       ! current node.

              END IF

              NodeInLayer = NodeInLayer+1 ! Increment nodes in layer counter
              IF (Node == NodeSource) BMat(3) = 1.0d0/cap

            END DO    ! ... end of nodes loop.

            ! Intermediate calculations for the last node.
            cap = rho(LayersInConstruct)*cp(LayersInConstruct)* dx(LayersInConstruct)
            cap = 1.5d0*cap ! For the last node, account for the fact that the
                            ! half-node at the surface results in a "loss" of some
                            ! thermal mass.  Therefore, for simplicity, include it
                            ! at this node.  Same thing done at the first node...
            dxtmp = 1.0D0/dx(LayersInConstruct)/cap

            AMat(rcmax,rcmax) = -2.0D0*rk(LayersInConstruct)*dxtmp ! Assign matrix
            AMat(rcmax,rcmax-1) = rk(LayersInConstruct)*dxtmp      ! values for the
            BMat(2) = rk(LayersInConstruct)*dxtmp                  ! last node.

            CMat(1) = -rk(1)/dx(1)                ! Compute the necessary elements
            CMat(2) = rk(LayersInConstruct)/dx(LayersInConstruct)   ! of all other
            DMat(1) = rk(1)/dx(1)                         ! matrices for the state
            DMat(2) = -rk(LayersInConstruct)/dx(LayersInConstruct)  ! space method

          ELSE  ! 2-D solution requested (assign matrices appropriately)

            ! As with the 1-D solution, we are accounting for the thermal mass
            ! of the half-node at the surface by adding it to the first row
            ! of interior nodes at both sides of the construction.  This is not
            ! exact, but it does take all of the thermal mass into account.
            amatx = rk(1)/(1.5d0*rho(1)*cp(1)*dx(1)*dx(1))
            amaty = rk(1)/(1.5d0*rho(1)*cp(1)*dyn*dyn)

            ! FIRST ROW OF NODES: This first row within the first material layer
            ! is special in that it is exposed to a boundary condition.  Thus,
            ! the equations are slightly different.
            ! Note also that the first and last nodes in a row are slightly
            ! different from the rest since they are on an adiabatic plane in
            ! the direction perpendicular to the main direction of heat transfer.
            AMat(1,1)                   =-2.0d0*(amatx+amaty)
            AMat(1,2)                   = 2.0d0*amaty
            AMat(1,NumOfPerpendNodes+1) = amatx

            DO Node = 2, NumOfPerpendNodes-1
              AMat(Node,Node-1)                 = amaty
              AMat(Node,Node)                   =-2.0d0*(amatx+amaty)
              AMat(Node,Node+1)                 = amaty
              AMat(Node,Node+NumOfPerpendNodes) = amatx
            END DO

            AMat(NumOfPerpendNodes,NumOfPerpendNodes)                   =-2.0d0*(amatx+amaty)
            AMat(NumOfPerpendNodes,NumOfPerpendNodes-1)                 = 2.0d0*amaty
            AMat(NumOfPerpendNodes,NumOfPerpendNodes+NumOfPerpendNodes) = amatx

            BMat(1) = amatx

            Layer       = 1
            NodeInLayer = 2
            amatx = rk(1)/(rho(1)*cp(1)*dx(1)*dx(1))    ! Reset these to the normal capacitance
            amaty = rk(1)/(rho(1)*cp(1)*dyn*dyn)        ! Reset these to the normal capacitance
            DO Node = NumOfPerpendNodes+1, rcmax+1-2*NumOfPerpendNodes, NumOfPerpendNodes
              ! INTERNAL ROWS OF NODES: This is the majority of nodes which are all within
              ! a solid layer and not exposed to a boundary condition.
              IF ((LayersInConstruct == 1).OR.(NodeInLayer /= Nodes(Layer))) THEN
                ! Single material row: This row of nodes are all contained within a material
                ! and thus there is no special considerations necessary.
                IF (NodeInLayer == 1) THEN
                  ! These intermediate variables only need to be reassigned when a new layer is started.
                  ! When this is simply another row of the same material, these have already been assigned correctly.
                  amatx = rk(Layer)/(rho(Layer)*cp(Layer)*dx(Layer)*dx(Layer))
                  amaty = rk(Layer)/(rho(Layer)*cp(Layer)*dyn*dyn)
                END IF

                ! Note that the first and last layers in a row are slightly different
                ! from the rest since they are on an adiabatic plane in the direction
                ! perpendicular to the main direction of heat transfer.
                AMat(Node,Node)                   =-2.0d0*(amatx+amaty)
                AMat(Node,Node+1)                 = 2.0d0*amaty
                AMat(Node,Node-NumOfPerpendNodes) = amatx
                AMat(Node,Node+NumOfPerpendNodes) = amatx

                DO NodeInRow = 2, NumOfPerpendNodes-1
                  Node2 = Node + NodeInRow - 1
                  AMat(Node2,Node2-1)                 = amaty
                  AMat(Node2,Node2)                   =-2.0d0*(amatx+amaty)
                  AMat(Node2,Node2+1)                 = amaty
                  AMat(Node2,Node2-NumOfPerpendNodes) = amatx
                  AMat(Node2,Node2+NumOfPerpendNodes) = amatx
                END DO

                Node2 = Node - 1 + NumOfPerpendNodes
                AMat(Node2,Node2)                   =-2.0d0*(amatx+amaty)
                AMat(Node2,Node2-1)                 = 2.0d0*amaty
                AMat(Node2,Node2-NumOfPerpendNodes) = amatx
                AMat(Node2,Node2+NumOfPerpendNodes) = amatx

              ELSE  ! Row at a two-layer interface (half of node consists of one layer's materials
                    ! and the other half consist of the next layer's materials)
                capavg = 0.5d0*(rho(Layer)*cp(Layer)*dx(Layer)+rho(Layer+1)*cp(Layer+1)*dx(Layer+1))
                amatx  = rk(Layer)/(capavg*dx(Layer))
                amatxx = rk(Layer+1)/(capavg*dx(Layer+1))
                amaty  = (rk(Layer)*dx(Layer)+rk(Layer+1)*dx(Layer+1))/(capavg*dyn*dyn)

                AMat(Node,Node)                   =-amatx-amatxx-2.0d0*amaty
                AMat(Node,Node+1)                 = 2.0d0*amaty
                AMat(Node,Node-NumOfPerpendNodes) = amatx
                AMat(Node,Node+NumOfPerpendNodes) = amatxx

                DO NodeInRow = 2, NumOfPerpendNodes-1
                  Node2 = Node + NodeInRow - 1
                  AMat(Node2,Node2-1)                 = amaty
                  AMat(Node2,Node2)                   =-amatx-amatxx-2.0d0*amaty
                  AMat(Node2,Node2+1)                 = amaty
                  AMat(Node2,Node2-NumOfPerpendNodes) = amatx
                  AMat(Node2,Node2+NumOfPerpendNodes) = amatxx
                END DO

                Node2 = Node - 1 + NumOfPerpendNodes
                AMat(Node2,Node2)                   =-amatx-amatxx-2.0d0*amaty
                AMat(Node2,Node2-1)                 = 2.0d0*amaty
                AMat(Node2,Node2-NumOfPerpendNodes) = amatx
                AMat(Node2,Node2+NumOfPerpendNodes) = amatxx

                IF (Node == NodeSource) BMat(3) = 2.0d0*REAL(NumOfPerpendNodes-1,r64)/capavg
                NodeInLayer = 0
                Layer       = Layer + 1

              END IF
              NodeInLayer = NodeInLayer + 1

            END DO

            ! LAST ROW OF NODES: Like the first row of nodes, this row is exposed to a boundary
            ! condition and thus has slightly modified nodal equations.

            ! As with the 1-D solution, we are accounting for the thermal mass
            ! of the half-node at the surface by adding it to the first row
            ! of interior nodes at both sides of the construction.  This is not
            ! exact, but it does take all of the thermal mass into account.
            amatx = amatx/1.5d0
            amaty = amaty/1.5d0

            Node = rcmax + 1 - NumOfPerpendNodes
            AMat(Node,Node)                   =-2.0d0*(amatx+amaty)
            AMat(Node,Node+1)                 = 2.0d0*amaty
            AMat(Node,Node-NumOfPerpendNodes) = amatx

            DO Node = rcmax+2-NumOfPerpendNodes, rcmax-1
              AMat(Node,Node-1)                 = amaty
              AMat(Node,Node)                   =-2.0d0*(amatx+amaty)
              AMat(Node,Node+1)                 = amaty
              AMat(Node,Node-NumOfPerpendNodes) = amatx
            END DO

            AMat(rcmax,rcmax)                   =-2.0d0*(amatx+amaty)
            AMat(rcmax,rcmax-1)                 = 2.0d0*amaty
            AMat(rcmax,rcmax-NumOfPerpendNodes) = amatx

            BMat(2) = amatx

            CMat(1) =-rk(1)/dx(1)/REAL(NumOfPerpendNodes-1,r64)
            CMat(2) = rk(LayersInConstruct)/dx(LayersInConstruct)/REAL(NumOfPerpendNodes-1,r64)

            DMat(1) = rk(1)/dx(1)/REAL(NumOfPerpendNodes-1,r64)
            DMat(2) =-rk(LayersInConstruct)/dx(LayersInConstruct)/REAL(NumOfPerpendNodes-1,r64)

          END IF

          ! Calculation of the CTFs based on the state space
          ! method.  This process involves finding the exponential
          ! and inverse of AMat and using these results to
          ! determine the CTFs.  The Gammas are an intermediate
          ! calculations which are necessary before the CTFs can
          ! be computed in TransFuncCoeffs.
          CALL DisplayNumberAndString(ConstrNum,'Calculating CTFs for "'//TRIM(Construct(ConstrNum)%Name)//'", Construction #')

!          CALL DisplayNumberandString(ConstrNum,'Matrix exponential for Construction #')
          CALL CalculateExponentialMatrix(Construct(ConstrNum)%CTFTimeStep)           ! Compute exponential of AMat

!          CALL DisplayNumberandString(ConstrNum,'Invert Matrix for Construction #')
          CALL CalculateInverseMatrix   ! Compute inverse of AMat

!          CALL DisplayNumberandString(ConstrNum,'Gamma calculation for Construction #')
          CALL CalculateGammas(Construct(ConstrNum)%CTFTimeStep,Construct(ConstrNum)%SolutionDimensions)
                              ! Compute "gamma"s from AMat, AExp, and AInv

!          CALL DisplayNumberandString(ConstrNum,'Compute CTFs for Construction #')
          CALL CalculateCTFs(Construct(ConstrNum)%NumCTFTerms,Construct(ConstrNum)%SolutionDimensions)  ! Compute CTFs

          ! Now check to see if the number of transfer functions
          ! is greater than MaxCTFTerms.  If it is, then increase the
          ! time step and the number of history terms and
          ! recalculate.  Whether or not it will be necessary to
          ! recalculate the CTFs is controlled by this DO WHILE
          ! loop and the logical CTFConvrg.

          CTFConvrg = .TRUE.        ! Assume solution convergence

          ! If too many terms, then solution did not converge.  Increase the
          ! number of histories and the time step.  Reset CTFConvrg to continue
          ! the DO loop.
          IF (Construct(ConstrNum)%NumCTFTerms > (MaxCTFTerms-1)) THEN
            Construct(ConstrNum)%NumHistories = Construct(ConstrNum)%NumHistories+1
            Construct(ConstrNum)%CTFTimeStep  = Construct(ConstrNum)%CTFTimeStep &
                                                +TimeStepZone
            CTFConvrg = .FALSE.
          END IF

          ! If the number of terms is okay, then do a further check on the summation of
          ! the various series summations.  In theory, Sum(Xi) = Sum(Yi) = Sum(Zi).  If
          ! this is not the case, then the terms have not reached a valid solution, and
          ! we need to increase the number of histories and the time step as above.
          IF (CTFConvrg) THEN
            SumXi = s0(2,2)
            SumYi = s0(2,1)
            SumZi = s0(1,1)
            DO HistTerm = 1, Construct(ConstrNum)%NumCTFTerms
              SumXi = SumXi + s(HistTerm,2,2)
              SumYi = SumYi + s(HistTerm,2,1)
              SumZi = SumZi + s(HistTerm,1,1)
            END DO
            SumXi = ABS(SumXi)
            SumYi = ABS(SumYi)
            SumZi = ABS(SumZi)
            BiggestSum = MAX(SumXi,SumYi,SumZi)
            IF (BiggestSum > 0.0d0) THEN
              IF ( ((ABS(SumXi-SumYi)/BiggestSum) > MaxAllowedCTFSumError) .OR. &
                   ((ABS(SumZi-SumYi)/BiggestSum) > MaxAllowedCTFSumError) ) THEN
                Construct(ConstrNum)%NumHistories = Construct(ConstrNum)%NumHistories + 1
                Construct(ConstrNum)%CTFTimeStep  = Construct(ConstrNum)%CTFTimeStep + TimeStepZone
                CTFConvrg = .FALSE.
              END IF
            ELSE    ! Something terribly wrong--the surface has no CTFs, not even an R-value
              CALL ShowFatalError('Illegal construction definition, no CTFs calculated for '//TRIM(Construct(ConstrNum)%Name))
            END IF
          END IF

          ! Once the time step has reached a certain point, it is highly likely that
          ! there is either a problem with the input or the solution.  This should
          ! be extremely rare since other checks should flag most bad user input.
          ! Thus, if the time step reaches a certain point, error out and let the
          ! user know that something needs to be checked in the input file.
          IF (Construct(ConstrNum)%CTFTimeStep >= MaxAllowedTimeStep) THEN
            CALL ShowSevereError('CTF calculation convergence problem for Construction="'//TRIM(Construct(ConstrNum)%Name)//'".')
            CALL ShowContinueError('...with Materials (outside layer to inside)')
            CALL ShowContinueError('(outside)="'//trim(Material(Construct(ConstrNum)%LayerPoint(1))%Name)//'"')
            DO Layer=2,Construct(ConstrNum)%TotLayers
              IF (Layer /= Construct(ConstrNum)%TotLayers) THEN
                CALL ShowContinueError('(next)="'//trim(Material(Construct(ConstrNum)%LayerPoint(Layer))%Name)//'"')
              ELSE
                CALL ShowContinueError('(inside)="'//trim(Material(Construct(ConstrNum)%LayerPoint(Layer))%Name)//'"')
              ENDIF
            ENDDO
            CALL ShowContinueError('The Construction report will be produced. This will show more '//  &
                'details on Constructions and their materials.')
            CALL ShowContinueError('Attempts will be made to complete the CTF process but the report may be incomplete.')
            CALL ShowContinueError('Constructs reported after this construction may appear to have all 0 CTFs.')
            CALL ShowContinueError('The potential causes of this problem are related to the input for the construction')
            CALL ShowContinueError('listed in the severe error above.  The CTF calculate routine is unable to come up')
            CALL ShowContinueError('with a series of CTF terms that have a reasonable time step and this indicates an')
            CALL ShowContinueError('error.  Check the definition of this construction and the materials that make up')
            CALL ShowContinueError('the construction.  Very thin, highly conductive materials may cause problems.')
            CALL ShowContinueError('This may be avoided by ignoring the presence of those materials since they probably')
            CALL ShowContinueError('do not effect the heat transfer characteristics of the construction.  Highly')
            CALL ShowContinueError('conductive or highly resistive layers that are alternated with high mass layers')
            CALL ShowContinueError('may also result in problems.  After confirming that the input is correct and')
            CALL ShowContinueError('realistic, the user should contact the EnergyPlus support team.')
            DoCTFErrorReport=.true.
            ErrorsFound=.true.
            EXIT
!            CALL ShowFatalError('Program terminated for reasons listed (InitConductionTransferFunctions) ')
          END IF

        END DO      ! ... end of CTF calculation loop.

      END IF        ! ... end of IF block for non-reversed constructs.

    ELSE            ! Construct has only resistive layers (no thermal mass).
                    ! CTF calculation not necessary, overall resistance
                    ! (R-value) is all that is needed.

          ! Set time step for construct to user time step and the number of
          ! inter-time step interpolations to 1
      Construct(ConstrNum)%CTFTimeStep  = TimeStepZone
      Construct(ConstrNum)%NumHistories = 1
      Construct(ConstrNum)%NumCTFTerms = 1

      s0(1,1) =  cnd  ! CTFs for current time
      s0(1,2) = -cnd  ! step are set to the
      s0(2,1) =  cnd  ! overall conductance
      s0(2,2) = -cnd  ! of the construction.

      ALLOCATE(e(1))
      e=0.0D0
      ALLOCATE(s(1,2,2))
      s=0.0D0
      s(1,1,1) = 0.0D0  ! CTF temperature
      s(1,1,2) = 0.0D0  ! and flux
      s(1,2,1) = 0.0D0  ! history terms
      s(1,2,2) = 0.0D0  ! are all
      e(1) = 0.0D0      ! zero.

      IF (Construct(ConstrNum)%SourceSinkPresent) THEN
        CALL ShowSevereError('Sources/sinks not allowed in purely resistive constructions --> '//Construct(ConstrNum)%Name)
        ErrorsFound = .TRUE.
      END IF

      RevConst = .FALSE.    ! In the code that follows, handle a resistive
                            ! layer as a non-reversed construction.

    END IF          ! ... end of resistive construction IF block.

          ! Transfer the CTFs to the storage arrays for all non-reversed
          ! constructions.  This transfer was done earlier in the routine for
          ! reversed constructions.

    IF (.NOT.RevConst) THEN ! If this is either a new construction or a non-
                            ! reversed construction, the CTFs must be stored
                            ! in the proper arrays.  If this is a reversed
                            ! construction, nothing further needs to be done.

          ! Copy the CTFs into the storage arrays, converting them back to SI
          ! units in the process.  First the "zero" terms and then the history terms...
      Construct(ConstrNum)%CTFOutside(0)   =  s0(1,1)*CFU
      Construct(ConstrNum)%CTFCross(0)     =  s0(2,1)*CFU
      Construct(ConstrNum)%CTFInside(0)    = -s0(2,2)*CFU
      IF (Construct(ConstrNum)%SourceSinkPresent) THEN
          ! QTFs...
        Construct(ConstrNum)%CTFSourceOut(0) = s0(1,3)
        Construct(ConstrNum)%CTFSourceIn(0)  = s0(2,3)
          ! QTFs for temperature calculation at source/sink location
        Construct(ConstrNum)%CTFTSourceOut(0)   = s0(3,1)
        Construct(ConstrNum)%CTFTSourceIn(0)    = s0(3,2)
        Construct(ConstrNum)%CTFTSourceQ(0)     = s0(3,3)/CFU
        IF (Construct(ConstrNum)%TempAfterLayer /= 0) THEN
          ! QTFs for user specified interior temperature calculations...
          Construct(ConstrNum)%CTFTUserOut(0)     = s0(4,1)
          Construct(ConstrNum)%CTFTUserIn(0)      = s0(4,2)
          Construct(ConstrNum)%CTFTUserSource(0)  = s0(4,3)/CFU
        END IF
      END IF

      DO HistTerm = 1, Construct(ConstrNum)%NumCTFTerms
          ! "REGULAR" CTFs...
        Construct(ConstrNum)%CTFOutside(HistTerm)   =  s(HistTerm,1,1)*CFU
        Construct(ConstrNum)%CTFCross(HistTerm)     =  s(HistTerm,2,1)*CFU
        Construct(ConstrNum)%CTFInside(HistTerm)    = -s(HistTerm,2,2)*CFU
        IF (HistTerm /= 0) Construct(ConstrNum)%CTFFlux(HistTerm) = -e(HistTerm)
        IF (Construct(ConstrNum)%SourceSinkPresent) THEN
          ! QTFs...
          Construct(ConstrNum)%CTFSourceOut(HistTerm) = s(HistTerm,1,3)
          Construct(ConstrNum)%CTFSourceIn(HistTerm)  = s(HistTerm,2,3)
          ! QTFs for temperature calculation at source/sink location
          Construct(ConstrNum)%CTFTSourceOut(HistTerm)   = s(HistTerm,3,1)
          Construct(ConstrNum)%CTFTSourceIn(HistTerm)    = s(HistTerm,3,2)
          Construct(ConstrNum)%CTFTSourceQ(HistTerm)     = s(HistTerm,3,3)/CFU
          IF (Construct(ConstrNum)%TempAfterLayer /= 0) THEN
            ! QTFs for user specified interior temperature calculations...
            Construct(ConstrNum)%CTFTUserOut(HistTerm)     = s(HistTerm,4,1)
            Construct(ConstrNum)%CTFTUserIn(HistTerm)      = s(HistTerm,4,2)
            Construct(ConstrNum)%CTFTUserSource(HistTerm)  = s(HistTerm,4,3)/CFU
          END IF
        END IF
      END DO

    END IF          ! ... end of the reversed construction IF block.

    Construct(ConstrNum)%UValue = cnd*CFU

    IF (ALLOCATED(AExp)) DEALLOCATE(AExp)
    IF (ALLOCATED(AMat)) DEALLOCATE(AMat)
    IF (ALLOCATED(AInv)) DEALLOCATE(AInv)
    IF (ALLOCATED(IdenMatrix)) DEALLOCATE(IdenMatrix)
    IF (ALLOCATED(e)) DEALLOCATE(e)
    IF (ALLOCATED(Gamma1)) DEALLOCATE(Gamma1)
    IF (ALLOCATED(Gamma2)) DEALLOCATE(Gamma2)
    IF (ALLOCATED(s)) DEALLOCATE(s)

  END DO            ! ... end of construction loop.

  CALL ReportCTFs(DoCTFErrorReport)

  IF (ErrorsFound) THEN
    CALL ShowFatalError('Program terminated for reasons listed (InitConductionTransferFunctions)')
  ENDIF

  RETURN

END SUBROUTINE InitConductionTransferFunctions


AbortEnergyPlus AbsoluteAirMass ActivateDemandManagers ActivateEMSControls AddBlankKeys addChargesToOperand AddCompSizeTableEntry AddEndUseSubcategory AddError addFootNoteSubTable AddInstruction AddMeter addMonthlyCharge AddMonthlyFieldSetInput AddMonthlyReport AddNeighborInformation AddObjectDefandParse addOperand AddRecordFromSection AddRecordToOutputVariableStructure AddSectionDef AddShadowRelateTableEntry AddSQLiteComponentSizingRecord AddSQLiteComponentSizingRecord AddSQLiteSystemSizingRecord AddSQLiteSystemSizingRecord AddSQLiteZoneSizingRecord AddSQLiteZoneSizingRecord AddTOCEntry AddTOCZoneLoadComponentTable AddToOutputVariableList AddVariablesForMonthlyReport AddVariableSlatBlind AddWindow AdjustAirSetpointsforOpTempCntrl AdjustCBF AdjustCBF AdjustChangeInLoadByEMSControls AdjustChangeInLoadByHowServed AdjustChangeInLoadForLastStageUpperRangeLimit AdjustCoolingSetPointforTempAndHumidityControl adjusthhat AdjustPumpFlowRequestByEMSControls AdjustReportingHourAndMinutes AdjustVBGap AdvanceRootFinder AFECFR AFECOI AFECPD AFECPF AFEDMP AFEDOP AFEDWC AFEELR AFEEXF AFEFAN AFEHEX AFEHOP AFEPLR AFESCR AFESEL AFESOP AFETMU AirflowNetworkVentingControl AirMass AIRMOV AllocateAirflowNetworkData AllocateAirHeatBalArrays AllocateAndInitData AllocateAndSetUpVentReports AllocateCFSStateHourlyData AllocateForCFSRefPointsGeometry AllocateForCFSRefPointsState AllocateHeatBalArrays AllocateLoadComponentArrays AllocateModuleArrays AllocateModuleArrays AllocateSurfaceHeatBalArrays AllocateWeatherData angle_2dvector AnisoSkyViewFactors AnyPlantLoopSidesNeedSim AnyPlantSplitterMixerLacksContinuity AreaPolygon ArgCheck array_to_vector ASHRAETauModel ASHWAT_OffNormalProperties ASHWAT_Solar ASHWAT_Thermal ASSIGNMENT (=) AssignNodeNumber AssignReportNumber AssignResourceTypeNum AssignReverseConstructionNumber AssignVariablePt AttachCustomMeters AttachMeters AuditBranches AUTOTDMA BaseThermalPropertySet_Diffusivity BeginEnvrnInitializeRuntimeLanguage BetweenDates BetweenGlassForcedFlow BetweenGlassShadeForcedFlow BetweenGlassShadeNaturalFlow BisectionMethod BlindBeamBeamTrans BlindOpticsBeam BlindOpticsDiffuse BoreholeResistance BoundValueToNodeMinMaxAvail BoundValueToWithinTwoValues BracketRoot BranchPressureDrop BrentMethod BuildGap BuildKeyVarList Calc4PipeFanCoil Calc_EN673 Calc_ISO15099 CalcActiveTranspiredCollector CalcAggregateLoad CalcAirflowNetworkAirBalance CalcAirflowNetworkCO2Balance CalcAirflowNetworkGCBalance CalcAirflowNetworkHeatBalance CalcAirflowNetworkMoisBalance CalcAirFlowSimple CalcAirLoopSplitter CalcAirMixer CalcAirToAirGenericHeatExch CalcAirToAirPlateHeatExch CalcAirZoneReturnPlenum CalcAirZoneSupplyPlenum CalcAlamdariHammondStableHorizontal CalcAlamdariHammondUnstableHorizontal CalcAlamdariHammondVerticalWall CalcAngleFactorMRT CalcApproximateViewFactors CalcASHRAEDetailedIntConvCoeff CalcASHRAESimpExtConvectCoeff CalcASHRAESimpleIntConvCoeff CalcASHRAEVerticalWall CalcATMixer CalcAwbiHattonHeatedFloor CalcAwbiHattonHeatedWall CalcBasinHeaterPower CalcBasinHeaterPowerForMultiModeDXCoil CalcBeamSolarOnWinRevealSurface CalcBeamSolDiffuseReflFactors CalcBeamSolSpecularReflFactors CalcBeausoleilMorrisonMixedAssistedWall CalcBeausoleilMorrisonMixedOpposingWall CalcBeausoleilMorrisonMixedStableCeiling CalcBeausoleilMorrisonMixedStableFloor CalcBeausoleilMorrisonMixedUnstableCeiling CalcBeausoleilMorrisonMixedUnstableFloor CalcBLASTAbsorberModel CalcBlockenWindward CalcBoilerModel CalcBoilerModel CalcBottomFluxCoefficents CalcBottomSurfTemp CalcBuriedPipeSoil CalcCBF CalcCBF CalcCBVAV CalcCeilingDiffuserInletCorr CalcCeilingDiffuserIntConvCoeff CalcChillerHeaterModel CalcChillerIPLV CalcChillerModel CalcClearRoof CalcCoilUAbyEffectNTU CalcColdestSetPoint CalcComplexWindowOverlap CalcComplexWindowThermal CalcCompSuctionTempResidual CalcCondEntSetPoint CalcConnectionsDrainTemp CalcConnectionsFlowRates CalcConnectionsHeatRecovery CalcConstCOPChillerModel CalcConvCoeffAbsPlateAndWater CalcConvCoeffBetweenPlates CalcCoolBeam CalcCoolTower CalcCoordinateTransformation CalcCoPlanarNess CalcCostEstimate CalcCTGeneratorModel CalcDayltgCoefficients CalcDayltgCoeffsMapPoints CalcDayltgCoeffsRefMapPoints CalcDayltgCoeffsRefPoints CalcDesiccantBalancedHeatExch CalcDesignSpecificationOutdoorAir CalcDesuperheaterHeatingCoil CalcDesuperheaterWaterHeater CalcDetailedHcInForDVModel CalcDetailedSystem CalcDetailedTransSystem CalcDetailFlatFinCoolingCoil CalcDetIceStorLMTDstar CalcDiffTSysAvailMgr CalcDirectAir CalcDirectEvapCooler CalcDirectResearchSpecialEvapCooler CalcDoe2DXCoil CalcDOE2Leeward CalcDOE2Windward CalcDryFinEffCoef CalcDryIndirectEvapCooler CalcDuct CalcDXCoilStandardRating CalcDXHeatingCoil CalcEarthTube CalcEcoRoof CalcEffectiveness CalcEffectiveSHR CalcEffectiveSHR CalcEffectiveSHR CalcEffectiveSHR CalcElecSteamHumidifier CalcElectricBaseboard CalcElectricChillerHeatRecovery CalcElectricChillerModel CalcElectricEIRChillerModel CalcElectricHeatingCoil CalcEmmelRoof CalcEmmelVertical CalcEngineChillerHeatRec CalcEngineDrivenChillerModel CalcEQLOpticalProperty CalcEQLWindowOpticalProperty CalcEQLWindowSHGCAndTransNormal CalcEQLWindowStandardRatings CalcEQLWindowUvalue CalcEquipmentDrainTemp CalcEquipmentFlowRates CalcExhaustAbsorberChillerModel CalcExhaustAbsorberHeaterModel CalcExteriorVentedCavity CalcFisherPedersenCeilDiffuserCeiling CalcFisherPedersenCeilDiffuserFloor CalcFisherPedersenCeilDiffuserWalls CalcFluidHeatExchanger CalcFohannoPolidoriVerticalWall CalcFollowOATempSetPoint CalcFollowSysNodeTempSetPoint CalcFourPipeIndUnit CalcFrameDividerShadow CalcFuelCellAuxHeater CalcFuelCellGeneratorModel CalcFuelCellGenHeatRecovery CalcFurnaceOutput CalcFurnaceResidual CalcGasAbsorberChillerModel CalcGasAbsorberHeaterModel CalcGasCooler CalcGasHeatingCoil CalcGenericDesiccantDehumidifier CalcGoldsteinNovoselacCeilingDiffuserFloor CalcGoldsteinNovoselacCeilingDiffuserWall CalcGoldsteinNovoselacCeilingDiffuserWindow CalcGroundTempSetPoint CalcGroundwaterWell CalcGshpModel CalcGshpModel CalcGTChillerModel CalcHeatBalanceAir CalcHeatBalanceInsideSurf CalcHeatBalanceInsideSurf CalcHeatBalanceOutsideSurf CalcHeatBalanceOutsideSurf CalcHeatBalFiniteDiff CalcHeatBalHAMT CalcHeatPumpWaterHeater CalcHeatTransCoeffAndCoverTemp CalcHfExteriorSparrow CalcHighTempRadiantSystem CalcHighTempRadiantSystemSP CalcHiTurnOffSysAvailMgr CalcHiTurnOnSysAvailMgr CalcHnASHRAETARPExterior CalcHPCoolingSimple CalcHPHeatingSimple CalcHPWHDXCoil CalcHWBaseboard CalcHXAssistedCoolingCoil CalcHXEffectTerm CalcHybridVentSysAvailMgr CalcIBesselFunc CalcICEngineGeneratorModel CalcICEngineGenHeatRecovery CalcIceStorageCapacity CalcIceStorageCharge CalcIceStorageDischarge CalcIceStorageDormant CalcICSSolarCollector CalcIdealCondEntSetPoint CalcIfSetpointMet CalcIndirectAbsorberModel CalcIndirectResearchSpecialEvapCooler CalcInteriorRadExchange CalcInteriorSolarDistribution CalcInteriorSolarOverlaps CalcInteriorWinTransDifSolInitialDistribution CalcISO15099WindowIntConvCoeff CalcKaradagChilledCeiling CalcKBesselFunc CalcKhalifaEq3WallAwayFromHeat CalcKhalifaEq4CeilingAwayFromHeat CalcKhalifaEq5WallsNearHeat CalcKhalifaEq6NonHeatedWalls CalcKhalifaEq7Ceiling CalcLoadCenterThermalLoad CalcLoTurnOffSysAvailMgr CalcLoTurnOnSysAvailMgr CalcLowTempCFloRadiantSystem CalcLowTempCFloRadSysComps CalcLowTempElecRadiantSystem CalcLowTempHydrRadiantSystem CalcLowTempHydrRadSysComps CalcMatrixInverse CalcMcAdams CalcMerkelVariableSpeedTower CalcMicroCHPNoNormalizeGeneratorModel CalcMinIntWinSolidAngs CalcMitchell CalcMixedAirSetPoint CalcMoistureBalanceEMPD CalcMoreNodeInfo CalcMoWITTLeeward CalcMoWITTWindward CalcMSHeatPump CalcMTGeneratorModel CalcMultiSpeedDXCoil CalcMultiSpeedDXCoilCooling CalcMultiSpeedDXCoilHeating CalcMultiStageElectricHeatingCoil CalcMultiStageGasHeatingCoil CalcMultiZoneAverageCoolingSetPoint CalcMultiZoneAverageHeatingSetPoint CalcMultiZoneAverageMaxHumSetPoint CalcMultiZoneAverageMinHumSetPoint CalcMultiZoneMaxHumSetPoint CalcMultiZoneMinHumSetPoint CalcMundtModel CalcNCycSysAvailMgr CalcNewZoneHeatCoolFlowRates CalcNewZoneHeatOnlyFlowRates CalcNodeMassFlows CalcNominalWindowCond CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNonDXHeatingCoils CalcNusselt CalcNusseltJurges CalcNVentSysAvailMgr CalcOAController CalcOAMassFlow CalcOAMassFlow CalcOAMixer CalcOAOnlyMassFlow CalcOAPretreatSetPoint CalcOAUnitCoilComps CalcObstrMultiplier CalcOptStartSysAvailMgr CalcOtherSideDemand CalcOutdoorAirUnit CalcOutsideAirSetPoint CalcOutsideSurfTemp CalcParallelPIU CalcPassiveExteriorBaffleGap CalcPassiveSystem CalcPassiveTranspiredCollector CalcPerSolarBeam CalcPipeHeatTransCoef CalcPipesHeatTransfer CalcPipeTransBeam CalcPlantValves CalcPollution CalcPolyhedronVolume CalcPolynomCoef CalcPondGroundHeatExchanger CalcPredictedHumidityRatio CalcPredictedSystemLoad CalcPTUnit CalcPumps CalcPurchAirLoads CalcPurchAirMinOAMassFlow CalcPurchAirMixedAir CalcPVTcollectors CalcQiceChargeMaxByChiller CalcQiceChargeMaxByITS CalcQiceDischageMax CalcRABFlowSetPoint CalcRackSystem CalcRadSysHXEffectTerm CalcRadTemp CalcRainCollector CalcReformEIRChillerModel CalcResearchSpecialPartLoad CalcReturnAirPath CalcRfFlrCoordinateTransformation CalcSandiaPV CalcSatVapPressFromTemp CalcSchedOffSysAvailMgr CalcSchedOnSysAvailMgr CalcSchedSysAvailMgr CalcScheduledDualSetPoint CalcScheduledSetPoint CalcScreenTransmittance CalcScriptF CalcSeriesPIU CalcSetpointTempTarget CalcSHRUserDefinedCurves CalcSimpleController CalcSimpleHeatingCoil CalcSimplePV CalcSingleSpeedEvapFluidCooler CalcSingleSpeedTower CalcSingZoneClSetPoint CalcSingZoneHtSetPoint CalcSingZoneMaxHumSetPoint CalcSingZoneMinHumSetPoint CalcSingZoneRhSetPoint CalcSkySolDiffuseReflFactors CalcSolarCollector CalcSolarFlux CalcSolidDesiccantDehumidifier CalcSourceFlux CalcSourceTempCoefficents CalcSparrowLeeward CalcSparrowWindward CalcSpecialDayTypes CalcStandAloneERV CalcStandardRatings CalcStaticProperties CalcSteamAirCoil CalcSteamBaseboard CalcSurfaceCentroid CalcSurfaceGroundHeatExchanger CalcSystemEnergyUse CalcSZOneStageCoolingSetPt CalcSZOneStageHeatingSetPt CalcTankTemp CalcTDDTransSolAniso CalcTDDTransSolHorizon CalcTDDTransSolIso CalcTempDistModel CalcTempIntegral CalcTESCoilChargeOnlyMode CalcTESCoilCoolingAndChargeMode CalcTESCoilCoolingAndDischargeMode CalcTESCoilCoolingOnlyMode CalcTESCoilDischargeOnlyMode CalcTESCoilOffMode CalcTESIceStorageTank CalcTESWaterStorageTank CalcThermalChimney CalcThermalComfortAdaptiveASH55 CalcThermalComfortAdaptiveCEN15251 CalcThermalComfortFanger CalcThermalComfortKSU CalcThermalComfortPierce CalcThermalComfortSimpleASH55 CalcTimeNeeded CalcTopFluxCoefficents CalcTopSurfTemp CalcTotalFLux CalcTotCapSHR CalcTotCapSHR_VSWSHP CalcTransAbsorProduct CalcTransRefAbsOfCover CalcTRNSYSPV CalcTrombeWallIntConvCoeff CalcTwoSpeedDXCoilIEERResidual CalcTwoSpeedDXCoilStandardRating CalcTwoSpeedEvapFluidCooler CalcTwoSpeedTower CalcUAIce CalcUCSDCV CalcUCSDDV CalcUCSDUE CalcUCSDUI CalculateAirChillerSets CalculateBasisLength CalculateCase CalculateCoil CalculateCompressors CalculateCondensers CalculateCTFs CalculateDailySolarCoeffs CalculateDayOfWeek CalculateEpsFromNTUandZ CalculateExponentialMatrix CalculateFuncResults CalculateGammas CalculateInverseMatrix CalculateMoodyFrictionFactor CalculateNTUfromEpsAndZ CalculatePollution CalculateSecondary CalculateSubcoolers CalculateSunDirectionCosines CalculateTransCompressors CalculateWalkIn CalculateWaterUseage CalculateWaterUseage CalculateWindowBeamProperties CalculateZoneMRT CalculateZoneVolume CalcUnitaryCoolingSystem CalcUnitaryHeatingSystem CalcUnitarySuppHeatingSystem CalcUnitarySuppSystemtoSP CalcUnitarySystemLoadResidual CalcUnitarySystemToLoad CalcUnitHeater CalcUnitHeaterComponents CalcUnitVentilator CalcUnitVentilatorComponents CalcUnmetPlantDemand CalcUpdateHeatRecovery CalcUpdateHeatRecovery CalcUserDefinedInsideHcModel CalcUserDefinedOutsideHcModel CalcVariableSpeedTower CalcVarSpeedCoilCooling CalcVarSpeedCoilHeating CalcVarSpeedHeatPump CalcVarSpeedHeatPump CalcVAVVS CalcVentilatedSlab CalcVentilatedSlabComps CalcVentilatedSlabRadComps CalcVentSlabHXEffectTerm CalcVerticalGroundHeatExchanger CalcViewFactorToShelf CalcVRF CalcVRFCondenser CalcVRFCoolingCoil CalcVSTowerApproach CalcWallCoordinateTransformation CalcWaltonStableHorizontalOrTilt CalcWaltonUnstableHorizontalOrTilt CalcWarmestSetPoint CalcWarmestSetPointTempFlow CalcWaterMainsTemp CalcWaterSource CalcWaterStorageTank CalcWaterThermalTankMixed CalcWaterThermalTankStratified CalcWaterThermalTankZoneGains CalcWaterToAirHeatpump CalcWatertoAirHPCooling CalcWatertoAirHPHeating CalcWaterToAirResidual CalcWatertoWaterHPCooling CalcWatertoWaterHPHeating CalcWaterUseZoneGains CalcWetIndirectEvapCooler CalcWindowACOutput CalcWindowBlindProperties CalcWindowHeatBalance CalcWindowProfileAngles CalcWindowScreenProperties CalcWindowStaticProperties CalcWindPressure CalcWindPressureCoeffs CalcWindTurbine CalcWinFrameAndDividerTemps CalcWinTransDifSolInitialDistribution CalcWrapperModel CalcZoneAirComfortSetpoints CalcZoneAirTempSetpoints CalcZoneComponentLoadSums CalcZoneDehumidifier CalcZoneEvaporativeCoolerUnit CalcZoneLeavingConditions CalcZoneMassBalance CalcZonePipesHeatGain CalcZoneSums CartesianPipeCellInformation_ctor CellType_IsFieldCell CFSHasControlledShade CFSNGlz CFSRefPointPosFactor CFSRefPointSolidAngle CFSShadeAndBeamInitialization CFSUFactor cGetCoilAirOutletNode cGetCoilSteamInletNode cGetCoilSteamOutletNode CharPreDefTableEntry CheckActuatorNode CheckAndAddAirNodeNumber CheckAndFixCFSLayer CheckAndReadCustomSprectrumData CheckAndReadFaults CheckAndSetConstructionProperties CheckBracketRoundOff CheckBranchForOASys CheckCachedIPErrors CheckCFSStates CheckCoilWaterInletNode CheckControllerListOrder CheckControllerLists CheckConvexity CheckCostEstimateInput CheckCreatedZoneItemName CheckCurveLimitsForIPLV CheckCurveLimitsForStandardRatings CheckDayScheduleValueMinMax CheckDXCoolingCoilInOASysExists CheckFDSurfaceTempLimits CheckFFSchedule CheckFluidPropertyName CheckForActualFileName CheckForBalancedFlow CheckForControllerWaterCoil CheckForGeometricTransform CheckForGeometricTransform CheckForMisMatchedEnvironmentSpecifications CheckForOutOfRangeTempResult CheckForOutOfRangeTemps CheckForRequestedReporting CheckForRunawayPlantTemps CheckForSensorAndSetpointNode CheckGasCoefs CheckHeatingCoilSchedule CheckHXAssistedCoolingCoilSchedule CheckIFAnyEMS CheckIFAnyIdealCondEntSetPoint CheckIfAnyPlant CheckIfNodeSetpointManagedByEMS CheckIncrementRoundOff CheckInternalConsistency CheckLightsReplaceableMinMaxForZone CheckLocationValidity CheckLoopExitNode CheckLowerUpperBracket CheckMarkedNodes CheckMaxActiveController CheckMaxConstraint CheckMicroCHPThermalBalance CheckMinActiveController CheckMinConstraint checkMinimumMonthlyCharge CheckMinMaxCurveBoundaries CheckMinMaxRange CheckModelBoundOutput_HumRat CheckModelBoundOutput_Temp CheckModelBounds CheckModelBoundsHumRatEq CheckModelBoundsRH_HumRatEq CheckModelBoundsRH_TempEq CheckModelBoundsTempEq CheckNodeConnections CheckNodeSetPoint CheckNonSingularity CheckOAControllerName CheckOutAirNodeNumber CheckPlantConvergence CheckPlantMixerSplitterConsistency CheckPlantOnAbort CheckPollutionMeterReporting CheckRefrigerationInput CheckReportVariable CheckRootFinderCandidate CheckRootFinderConvergence CheckScheduledSurfaceGains CheckScheduleValue CheckScheduleValueMinMax Checksetpoints CheckSimpleController CheckSlope CheckSteamCoilSchedule CheckSubSurfaceMiscellaneous CheckSysSizing CheckSystemBranchFlow CheckTDDsAndLightShelvesInDaylitZones CheckThisAirSystemForSizing CheckThisZoneForSizing CheckThreading CheckUniqueNodes CheckUnitarySysCoilInOASysExists CheckUsedConstructions CheckValidSimulationObjects CheckWarmupConvergence CheckWaterCoilSchedule CheckWeatherFileValidity CheckWindowShadingControlFrameDivider CheckZoneEquipmentList CheckZoneSizing CHKBKS CHKGSS CHKSBS CLIP CLIPPOLY CloseDFSFile CloseMiscOpenFiles CloseMoistureBalanceEMPD CloseOutOpenFiles CloseOutputFiles CloseOutputTabularFile CloseReportIllumMaps CloseSocket CloseWeatherFile CoilAreaFracIter CoilCompletelyDry CoilCompletelyWet CoilOutletStreamCondition CoilPartWetPartDry COMMAND_ARGUMENT_COUNT CompactObjectsCheck CompareTwoVectors ComplexFenestrationLuminances ComputeDelayedComponents ComputeDifSolExcZonesWIZWindows ComputeIntSolarAbsorpFactors ComputeIntSWAbsorpFactors ComputeIntThermalAbsorpFactors ComputeLifeCycleCostAndReport ComputeLoadComponentDecayCurve ComputeNominalUwithConvCoeffs ComputePresentValue ComputeTariff ComputeTaxAndDepreciation ComputeWinShadeAbsorpFactors CondOutTempResidual ConstructBasis ControlCBVAVOutput ControlCompOutput ControlCompOutput ControlCoolBeam ControlCoolingSystem ControlCycWindACOutput ControlDesiccantDehumidifier ControlDXHeatingSystem ControlDXSystem ControlFluidHeatExchanger ControlHeatingSystem ControlHumidifier ControlMSHPOutput ControlPTUnitOutput ControlPVTcollector ControlReformEIRChillerModel ControlSuppHeatSystem ControlUnitarySystemOutput ControlUnitarySystemtoLoad ControlUnitarySystemtoSP ControlVRF ControlVSEvapUnitToMeetLoad ControlVSHPOutput ControlVSHPOutput ConvectionFactor ConvertCasetoLower ConvertCasetoUpper ConvertIP ConvertIPdelta ConvertToElementTag ConvertToEscaped CoolBeamResidual CoolingCoil CoolWaterHumRatResidual CoolWaterTempResidual CoolWatertoAirHPHumRatResidual CoolWatertoAirHPTempResidual CorrectZoneAirTemp CorrectZoneContaminants CorrectZoneHumRat CostInfoOut CPCW CPHW CreateBoundaryList CreateBoundaryListCount CreateCategoryNativeVariables CreateCellArray CreateCurrentDateTimeString CreateDefaultComputation CreateEnergyReportStructure CreateFCfactorConstructions CreateHVACStepFullString CreateHVACTimeIntervalString CreateHVACTimeString CreateNewellAreaVector CreateNewellSurfaceNormalVector CreatePartitionCenterList CreatePartitionRegionList CreatePredefinedMonthlyReports CreateRegionList CreateRegionListCount CreateShadedWindowConstruction CreateSQLiteConstructionsTable CreateSQLiteConstructionsTable CreateSQLiteDatabase CreateSQLiteDatabase CreateSQLiteDaylightMap CreateSQLiteDaylightMap CreateSQLiteDaylightMapTitle CreateSQLiteDaylightMapTitle CreateSQLiteEnvironmentPeriodRecord CreateSQLiteEnvironmentPeriodRecord CreateSQLiteErrorRecord CreateSQLiteErrorRecord CreateSQLiteInfiltrationTable CreateSQLiteInfiltrationTable CreateSQLiteMaterialsTable CreateSQLiteMaterialsTable CreateSQLiteMeterDictionaryRecord CreateSQLiteMeterDictionaryRecord CreateSQLiteMeterRecord CreateSQLiteMeterRecord CreateSQLiteNominalBaseboardHeatTable CreateSQLiteNominalBaseboardHeatTable CreateSQLiteNominalElectricEquipmentTable CreateSQLiteNominalElectricEquipmentTable CreateSQLiteNominalGasEquipmentTable CreateSQLiteNominalGasEquipmentTable CreateSQLiteNominalHotWaterEquipmentTable CreateSQLiteNominalHotWaterEquipmentTable CreateSQLiteNominalLightingTable CreateSQLiteNominalLightingTable CreateSQLiteNominalOtherEquipmentTable CreateSQLiteNominalOtherEquipmentTable CreateSQLiteNominalPeopleTable CreateSQLiteNominalPeopleTable CreateSQLiteNominalSteamEquipmentTable CreateSQLiteNominalSteamEquipmentTable CreateSQLiteReportVariableDataRecord CreateSQLiteReportVariableDataRecord CreateSQLiteReportVariableDictionaryRecord CreateSQLiteReportVariableDictionaryRecord CreateSQLiteRoomAirModelTable CreateSQLiteRoomAirModelTable CreateSQLiteSchedulesTable CreateSQLiteSimulationsRecord CreateSQLiteSimulationsRecord CreateSQLiteStringTableRecord CreateSQLiteSurfacesTable CreateSQLiteSurfacesTable CreateSQLiteTabularDataRecords CreateSQLiteTabularDataRecords CreateSQLiteTimeIndexRecord CreateSQLiteTimeIndexRecord CreateSQLiteVentilationTable CreateSQLiteVentilationTable CreateSQLiteZoneGroupTable CreateSQLiteZoneGroupTable CreateSQLiteZoneListTable CreateSQLiteZoneListTable CreateSQLiteZoneTable CreateSQLiteZoneTable CreateStormWindowConstructions CreateSysTimeIntervalString CreateTCConstructions CreateTimeIntervalString CreateTimeString CreatExtBooundCondName CreateZoneExtendedOutput CreateZoneExtendedOutput CrossProduct CrossProduct cSurfaceClass CTRANS CurveValue DateToString DateToStringWithMonth DaylghtAltAndAzimuth DayltgAveInteriorReflectance DayltgClosestObstruction DayltgCrossProduct DayltgCurrentExtHorizIllum DayltgDirectIllumComplexFenestration DayltgDirectSunDiskComplexFenestration DayltgElecLightingControl DayltgExtHorizIllum DayltgGlare DayltgGlarePositionFactor DayltgGlareWithIntWins DayltgHitBetWinObstruction DayltgHitInteriorObstruction DayltgHitObstruction DayltgInteriorIllum DayltgInteriorMapIllum DayltgInteriorTDDIllum DayltgInterReflectedIllum DayltgInterReflectedIllumComplexFenestration DayltgInterReflIllFrIntWins DayltgLuminousEfficacy DayltgPierceSurface DayltgSetupAdjZoneListsAndPointers DayltgSkyLuminance DayltgSurfaceLumFromSun dCheckScheduleValueMinMax1 dCheckScheduleValueMinMax2 DeallocateLoadComponentArrays DebugRootFinder DecodeHHMMField DecodeMonDayHrMin DeflectionTemperatures DeflectionWidths DegradF DElightDaylightCoefficients DElightDaylightCoefficients DElightElecLtgCtrl DElightElecLtgCtrl DElightFreeMemory DElightFreeMemory DElightInputGenerator DElightInputGenerator DElightOutputGenerator DElightOutputGenerator DensityCFSFillGas Depth DERIV DetailsForSurfaces DetectOscillatingZoneTemp DetermineAzimuthAndTilt DetermineBranchFlowRequest DetermineBuildingFloorArea DetermineDateTokens DetermineFrequency DetermineIndexGroupFromMeterGroup DetermineIndexGroupKeyFromMeterName DetermineMaxBackSurfaces DetermineMeterIPUnits DetermineMinuteForReporting DeterminePolygonOverlap DetermineShadowingCombinations DetermineSunUpDown DevelopMesh DiffuseAverage DiffuseAverageProfAngGnd DiffuseAverageProfAngSky DisplayMaterialRoughness DisplayNumberandString DisplaySimDaysProgress DisplayString distance DistributeBBElecRadGains DistributeBBRadGains DistributeBBSteamRadGains DistributeHTRadGains DistributePlantLoad DistributePressureOnBranch DistributeTDDAbsorbedSolar DistributeUserDefinedPlantLoad DL_RES_r2 DLAG DOE2DXCoilHumRatResidual DOE2DXCoilHumRatResidual DOE2DXCoilResidual DOE2DXCoilResidual DOE2DXCoilResidual DoEndOfIterationOperations DomainRectangle_Contains DOMakeUPPERCase DoOneTimeInitializations DOSameString DoShadeControl DoStartOfTimeStepInitializations DownInterpolate4HistoryValues DumpAirLoopStatistics DumpCurrentLineBuffer DUMPVD DUMPVR DXCoilCyclingHumRatResidual DXCoilCyclingHumRatResidual DXCoilCyclingResidual DXCoilCyclingResidual DXCoilVarSpeedHumRatResidual DXCoilVarSpeedHumRatResidual DXCoilVarSpeedResidual DXCoilVarSpeedResidual DXFOut DXFOutLines DXFOutWireFrame DXHeatingCoilResidual DXHeatingCoilResidual DXHeatingCoilResidual DynamicClothingModel DynamicExtConvSurfaceClassification DynamicIntConvSurfaceClassification EchoOutActuatorKeyChoices EchoOutInternalVariableChoices EffectiveEPSLB EffectiveEPSLF EIRChillerHeatRecovery EN673ISO10292 EncodeMonDayHrMin EndEnergyPlus EndUniqueNodeCheck EnthalpyResidual epElapsedTime epGetTimeUsed epGetTimeUsedperCall epStartTime epStopTime epSummaryTimes eptime EQLWindowInsideEffectiveEmiss EQLWindowOutsideEffectiveEmiss EQLWindowSurfaceHeatBalance EquationsSolver ERF EstimateHEXSurfaceArea EvalInsideMovableInsulation EvalOutsideMovableInsulation EvaluateAdiabaticSurfaceTemperature EvaluateBasementCellTemperature EvaluateCellNeighborDirections evaluateChargeBlock evaluateChargeSimple EvaluateExpression EvaluateExtHcModels EvaluateFarfieldBoundaryTemperature EvaluateFarfieldCharacteristics EvaluateFieldCellTemperature EvaluateGroundSurfaceTemperature EvaluateIntHcModels EvaluateLoopSetPointLoad EvaluateNeighborCharacteristics evaluateQualify evaluateRatchet EvaluateSoilRhoCp EvaluateStack EvolveParaUCSDCV ExitCalcController ExpandComplexState ExpressAsCashFlows ExtendObjectDefinition ExteriorBCEqns ExternalInterfaceExchangeVariables ExternalInterfaceInitializeErlVariable ExternalInterfaceSetErlVariable ExternalInterfaceSetSchedule ExtOrIntShadeNaturalFlow Fabric_EstimateDiffuseProps FACSKY FalsePositionMethod FEQX FI FigureACAncillaries FigureAirEnthalpy FigureAirHeatCap FigureAuxilHeatGasHeatCap FigureBeamSolDiffuseReflFactors FigureBeamSolSpecularReflFactors FigureConstGradPattern FigureDayltgCoeffsAtPointsForSunPosition FigureDayltgCoeffsAtPointsForWindowElements FigureDayltgCoeffsAtPointsSetupForWindow FigureElectricalStorageZoneGains FigureFuelCellZoneGains FigureFuelEnthalpy FigureFuelHeatCap FigureGaseousWaterEnthalpy FigureHeightPattern FigureHXleavingGasHeatCap FigureInverterZoneGains FigureLHVofFuel FigureLiquidWaterEnthalpy FigureLiquidWaterHeatCap FigureMapPointDayltgFactorsToAddIllums FigureMicroCHPZoneGains FigureNDheightInZone FigurePowerConditioningLosses FigureProductGasesEnthalpy FigureProductGasHeatCap FigureRefPointDayltgFactorsToAddIllums FigureRefrigerationZoneGains FigureSolarBeamAtTimestep FigureSunCosines FigureSurfMapPattern FigureTDDZoneGains FigureTransformerZoneGains FigureTransientConstraints FigureTwoGradInterpPattern FILJAC FillBasisElement FillDefaultsSWP FillRemainingPredefinedEntries FillWeatherPredefinedEntries film filmg filmi filmPillar FILSKY FinalizeCFS FinalizeCFSLAYER FinalRateCoils FindAirLoopBranchConnection FindAirPlantCondenserLoopFromBranchList FindAllNumbersinList FindArrayIndex FindCompSPInput FindCompSPLoad FindCondenserLoopBranchConnection FindControlledZoneIndexFromSystemNodeNumberForZone FindDeltaTempRangeInput FindDemandSideMatch FindEMSVariable FindFirstLastPtr FindFirstRecord FindGlycol FindHXDemandSideLoopFlow FindInBasis FindItem FindIteminList FindIteminSortedList FindItemInVariableList FindLoopSideInCallingOrder FindNextRecord FindNonSpace FindNumberinList FindOAMixerMatchForOASystem FindPlantLoopBranchConnection FindRangeBasedOrUncontrolledInput FindRangeVariable FindRefrigerant FindRootSimpleController FindStratifiedTankSensedTemp FindTariffIndex FindTDDPipe FindUnitNumber FinishDebugOutputFiles FixViewFactors FluidCellInformation_ctor FM_BEAM FM_DIFF FM_F FNU forcedventilation FourPipeInductionUnitHasMixer FourPipeIUCoolingResidual FourPipeIUHeatingResidual FRA FrostControl FrostControlSetPointLimit FrostControlSetPointLimit FuelCellProductGasEnthResidual FUN FuncDetermineCoolantWaterExitTemp FuncDetermineCWMdotForInternalFlowControl FuncDetermineEngineTemp FV GasElecHeatingCoilResidual GASSES90 GassesLow GatherBEPSResultsForTimestep GatherBinResultsForTimestep GatherComponentLoadsHVAC GatherComponentLoadsIntGain GatherComponentLoadsSurfAbsFact GatherComponentLoadsSurface GatherForEconomics GatherForPredefinedReport GatherHeatGainReport GatherMonthlyResultsForTimestep GatherPeakDemandForTimestep GatherSourceEnergyEndUseResultsForTimestep GaussElimination generate_ears GenerateDElightDaylightCoefficients GenerateDElightDaylightCoefficients GeneratorPowerOutput GenericCrack GenOutputVariablesAuditReport Get2DMatrix Get2DMatrixDimensions GET_COMMAND GET_COMMAND_ARGUMENT Get_Environment_Variable GetActualDXCoilIndex GetAirBranchIndex GetAirFlowFlag GetAirflowNetworkInput GetAirHeatBalanceInput GetAirLoopAvailabilityManager GetAirModelDatas GetAirNodeData GetAirPathData GetAngleFactorList GetATMixer GetATMixerOutNode GetATMixerPriNode GetATMixers GetATMixerSecNode GetAttShdSurfaceData GetAverageTempByType GetBaseboardInput GetBaseboardInput GetBasementFloorHeatFlux GetBasementWallHeatFlux GetBLASTAbsorberInput GetBoilerInput GetBoilerInput GetBranchData GetBranchFanTypeName GetBranchFlow GetBranchInput GetBranchList GetBranchListInput GetBuildingData GetCBVAV GetCellWidths GetCellWidthsCount GetChildrenData GetChillerheaterInput GetCoilAirFlowRate GetCoilAirFlowRateVariableSpeed GetCoilAirInletNode GetCoilAirOutletNode GetCoilAvailScheduleIndex GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacity GetCoilCapacityByIndexType GetCoilCapacityVariableSpeed GetCoilCondenserInletNode GetCoilControlNodeNum GetCoilGroupTypeNum GetCoilIndex GetCoilIndex GetCoilIndex GetCoilIndexVariableSpeed GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNode GetCoilInletNodeVariableSpeed GetCoilMaxSteamFlowRate GetCoilMaxWaterFlowRate GetCoilMaxWaterFlowRate GetCoilMaxWaterFlowRate GetCoilObjectTypeNum GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNode GetCoilOutletNodeVariableSpeed GetCoilSteamInletNode GetCoilSteamOutletNode GetCoilTypeNum GetCoilWaterInletNode GetCoilWaterInletNode GetCoilWaterOutletNode GetColumnUsingTabs GetComfortSetpoints GetComponentData GetCondFDInput GetConductivityGlycol GetConnectorList GetConnectorListInput GetConstCOPChillerInput GetConstructData GetControlledZoneIndex GetControllerActuatorNodeNum GetControllerInput GetCoolBeams GetCoolingCoilTypeNameAndIndex GetCooltower GetCostEstimateInput GetCrossVentData GetCTGeneratorInput GetCTGeneratorResults GetCurrentHVACTime GetCurrentMeterValue GetCurrentScheduleValue GetCurveCheck GetCurveIndex GetCurveInput GetCurveMinMaxValues GetCurveName GetCurveObjectTypeNum GetCurveType GetCustomMeterInput GetDaylightingParametersDetaild GetDaylightingParametersInput GetDayScheduleIndex GetDemandManagerInput GetDemandManagerListInput GetDensityGlycol GetDesiccantDehumidifierInput GetDesignDayData GetDesignLightingLevelForZone GetDetShdSurfaceData GetDirectAirInput GetDisplacementVentData GetDSTData GetDualDuctInput GetDualDuctOutdoorAirRecircUse GetDuctInput GetDXCoilAirFlow GetDXCoilAvailSchPtr GetDXCoilBypassedFlowFrac GetDXCoilCapFTCurveIndex GetDXCoilIndex GetDXCoilNumberOfSpeeds GetDXCoils GetDXCoolingSystemInput GetDXHeatPumpSystemInput GetEarthTube GetElecReformEIRChillerInput GetElectricBaseboardInput GetElectricChillerInput GetElectricEIRChillerInput GetEMSInput GetEngineDrivenChillerInput GetEnvironmentalImpactFactorInfo GetEvapFluidCoolerInput GetEvapInput GetExhaustAbsorberInput GetExhaustAirInletNode GetExteriorEnergyUseInput GetExtVentedCavityIndex GetExtVentedCavityIndex GetExtVentedCavityTsColl GetExtVentedCavityTsColl GetFanAvailSchPtr GetFanCoilIndex GetFanCoilInletAirNode GetFanCoilMixedAirNode GetFanCoilOutAirNode GetFanCoilReturnAirNode GetFanCoilUnits GetFanCoilZoneInletAirNode GetFanDesignVolumeFlowRate GetFanIndex GetFanIndexForTwoSpeedCoil GetFanInletNode GetFanInput GetFanOutletNode GetFanPower GetFanSpeedRatioCurveIndex GetFanType GetFanVolFlow GetFarfieldTemp GetFirstBranchInletNodeName GetFluidCoolerInput GetFluidDensityTemperatureLimits GetFluidHeatExchangerInput GetFluidPropertiesData GetFluidSpecificHeatTemperatureLimits GetFrameAndDividerData GetFuelCellGeneratorInput GetFuelCellGeneratorResults GetFuelFactorInfo GetFurnaceInput GetGasAbsorberInput GetGeneratorFuelSupplyInput GetGeometryParameters GetGlycolNameByIndex GetGroundheatExchangerInput GetGroundReflectances GetGroundTemps GetGshpInput GetGshpInput GetGTChillerInput GetHeatBalanceInput GetHeatBalHAMTInput GetHeatExchangerObjectTypeNum GetHeatingCoilIndex GetHeatingCoilInput GetHeatingCoilNumberOfStages GetHeatingCoilPLFCurveIndex GetHeatingCoilTypeNum GetHeatReclaimSourceIndex GetHeatRecoveryInput GetHighTempRadiantSystem GetHPCoolingCoilIndex GetHTSubSurfaceData GetHTSurfaceData GetHTSurfExtVentedCavityData GetHumidifierInput GetHVACSingleDuctSysIndex GetHWBaseboardInput GetHXAssistedCoolingCoilInput GetHXCoilAirFlowRate GetHXCoilType GetHXCoilTypeAndName GetHXDXCoilIndex GetHXDXCoilName GetHybridVentilationControlStatus GetHybridVentilationInputs GetICEGeneratorResults GetICEngineGeneratorInput GetIceStorageInput GetIDFRecordsStats GetIndirectAbsorberInput GetIndUnits GetInputEconomicsChargeBlock GetInputEconomicsChargeSimple GetInputEconomicsComputation GetInputEconomicsCurrencyType GetInputEconomicsQualify GetInputEconomicsRatchet GetInputEconomicsTariff GetInputEconomicsVariable GetInputForLifeCycleCost GetInputFuelAndPollutionFactors GetInputLifeCycleCostNonrecurringCost GetInputLifeCycleCostParameters GetInputLifeCycleCostRecurringCosts GetInputLifeCycleCostUseAdjustment GetInputLifeCycleCostUsePriceEscalation GetInputTabularMonthly GetInputTabularPredefined GetInputTabularStyle GetInputTabularTimeBins GetInputViewFactors GetInputViewFactorsbyName GetInputZoneEvaporativeCoolerUnit GetInstantMeterValue GetInternalBranchData GetInternalHeatGainsInput GetInternalVariableValue GetInternalVariableValue GetInternalVariableValueExternalInterface GetInternalVariableValueExternalInterface GetInterpolatedSatProp GetInterpValue GetIntMassSurfaceData GetLastBranchOutletNodeName GetLastWord GetLightWellData GetListOfObjectsInIDD GetListofSectionsinInput GetLocationInfo GetLoopMixer GetLoopSidePumpIndex GetLoopSplitter GetLowTempRadiantSystem GetMaterialData GetMatrixInput getMaxAndSum GetMeteredVariables GetMeterIndex GetMeterResourceType GetMicroCHPGeneratorInput GetMicroCHPGeneratorResults GetMinOATCompressor GetMixerInput GetMixerInput GetMoistureBalanceEMPDInput GetMonthlyCostForResource GetMovableInsulationData GetMSHeatPumpInput GetMTGeneratorExhaustNode GetMTGeneratorInput GetMTGeneratorResults GetMundtData GetNewUnitNumber GetNextEnvironment GetNodeConnectionType GetNodeList GetNodeListsInput GetNodeNums GetNTUforCrossFlowBothUnmixed GetNumberOfSchedules GetNumberOfSurfaceLists GetNumberOfSurfListVentSlab GetNumChildren GetNumMeteredVariables GetNumOAControllers GetNumOAMixers GetNumOASystems GetNumObjectsFound GetNumObjectsInIDD GetNumRangeCheckErrorsFound GetNumSectionsFound GetNumSectionsinInput GetNumSegmentsForHorizontalTrenches GetNumSplitterMixerInConntrList GetOACompListNumber GetOACompName GetOACompType GetOACompTypeNum GetOAControllerInputs GetOAMixerIndex GetOAMixerInletNodeNumber GetOAMixerInputs GetOAMixerMixedNodeNumber GetOAMixerNodeNumbers GetOAMixerReliefNodeNumber GetOAMixerReturnNodeNumber GetOARequirements GetOASysControllerListIndex GetOASysNumCoolingCoils GetOASysNumHeatingCoils GetOASysNumSimpControllers GetOASystemNumber GetObjectDefInIDD GetObjectDefMaxArgs GetObjectItem GetObjectItemfromFile GetObjectItemNum GetOnlySingleNode GetOperationSchemeInput GetOSCData GetOSCMData GetOutAirNodesInput GetOutdoorAirUnitInputs GetOutdoorAirUnitOutAirNode GetOutdoorAirUnitReturnAirNode GetOutdoorAirUnitZoneInletNode GetOutsideAirSysInputs GetOutsideEnergySourcesInput GetParentData GetPipeInput GetPipesHeatTransfer GetPipingSystemsInput GetPIUs GetPlantAvailabilityManager GetPlantInput GetPlantLoopData GetPlantOperationInput GetPlantProfileInput GetPlantSizingInput GetPlantValvesInput GetPollutionFactorInput GetPondGroundHeatExchanger GetPowerManagerInput GetPressureCurveTypeAndIndex GetPressureSystemInput GetPreviousHVACTime GetProjectControlData GetProjectData GetPTUnit GetPTUnitMixedAirNode GetPTUnitOutAirNode GetPTUnitReturnAirNode GetPTUnitZoneInletAirNode GetPumpInput GetPurchasedAir GetPurchasedAirMixedAirHumRat GetPurchasedAirMixedAirTemp GetPurchasedAirOutAirMassFlow GetPurchasedAirReturnAirNode GetPurchasedAirZoneInletAirNode GetPVGeneratorResults GetPVInput GetPVTcollectorsInput GetPVTThermalPowerProduction GetQualityRefrig GetRecordLocations GetRectDetShdSurfaceData GetRectSubSurfaces GetRectSurfaces GetRefrigeratedRackIndex GetRefrigerationInput GetReportVariableInput GetRequiredMassFlowRate GetResidCrossFlowBothUnmixed GetResourceTypeChar GetReturnAirNodeForZone GetReturnAirPathInput GetRoomAirModelParameters GetRunPeriodData GetRunPeriodDesignData GetRuntimeLanguageUserInput GetSatDensityRefrig GetSatEnthalpyRefrig GetSatPressureRefrig GetSatSpecificHeatRefrig GetSatTemperatureRefrig GetScheduledSurfaceGains GetScheduleIndex GetScheduleMaxValue GetScheduleMinValue GetScheduleName GetScheduleType GetScheduleValuesForDay GetSecondaryInletNode GetSecondaryOutletNode GetSetPointManagerInputs GetShadingSurfReflectanceData GetShadowingInput GetShelfInput GetSimpleAirModelInputs GetSimpleShdSurfaceData GetSimpleWatertoAirHPInput GetSingleDayScheduleValues GetSiteAtmosphereData GetSizingParams GetSnowGroundRefModifiers GetSolarCollectorInput GetSpecialDayPeriodData GetSpecificHeatGlycol getSpecificUnitDivider getSpecificUnitIndex getSpecificUnitMultiplier GetSplitterInput GetSplitterInput GetSplitterNodeNumbers GetSplitterOutletNumber GetStandAloneERV GetStandAloneERVNodes GetStandAloneERVOutAirNode GetStandAloneERVReturnAirNode GetStandAloneERVZoneInletAirNode GetStandardMeterResourceType GetSteamBaseboardInput GetSteamCoilAvailScheduleIndex GetSteamCoilControlNodeNum GetSteamCoilIndex GetSteamCoilInput GetSTM GetStormWindowData GetSupHeatDensityRefrig GetSupHeatEnthalpyRefrig GetSupHeatPressureRefrig GetSupplyAirFlowRate GetSupplyAirFlowRate GetSupplyAirInletNode GetSupplyInletNode GetSupplyOutletNode GetSurfaceCountForOSCM GetSurfaceData GetSurfaceGroundHeatExchanger GetSurfaceHeatTransferAlgorithmOverrides GetSurfaceIndecesForOSCM GetSurfaceListsInputs GetSurfHBDataForMundtModel GetSurfHBDataForTempDistModel GetSysAvailManagerInputs GetSysAvailManagerListInputs GetSysInput GetSystemNodeNumberForZone GetSystemSizingInput GetTDDInput GetTESCoilIndex GetTESCoilInput GetThermalChimney GetTowerInput GetTranspiredCollectorIndex GetTranspiredCollectorInput GetTypeOfCoil GetUFADZoneData GetUnitarySystemDXCoolingCoilIndex GetUnitarySystemInput GetUnitarySystemOAHeatCoolCoil GetUnitConversion GetUnitHeaterInput GetUnitsString GetUnitSubString GetUnitVentilatorInput GetUnitVentilatorMixedAirNode GetUnitVentilatorOutAirNode GetUnitVentilatorReturnAirNode GetUnitVentilatorZoneInletAirNode GetUserConvectionCoefficients GetUserDefinedComponents GetUserDefinedOpSchemeInput GetUserDefinedPatternData GetUTSCTsColl GetVariableKeyCountandType GetVariableKeyCountandType GetVariableKeys GetVariableKeys GetVariableTypeAndIndex GetVariableUnitsString GetVarSpeedCoilInput GetVentilatedSlabInput GetVertices GetViscosityGlycol GetVRFInput GetVSCoilCondenserInletNode GetVSCoilMinOATCompressor GetVSCoilNumOfSpeeds GetWaterCoilAvailScheduleIndex GetWaterCoilCapacity GetWaterCoilIndex GetWaterCoilInput GetWaterMainsTemperatures GetWaterManagerInput GetWaterSource GetWaterThermalTankInput GetWatertoAirHPInput GetWatertoWaterHPInput GetWaterUseInput GetWeatherProperties GetWeatherStation GetWindowAC GetWindowACMixedAirNode GetWindowACOutAirNode GetWindowACReturnAirNode GetWindowACZoneInletAirNode GetWindowGapAirflowControlData GetWindowGlassSpectralData GetWindowShadingControlData GetWindTurbineInput GetWrapperInput GetWTGeneratorResults GetZoneAirDistribution GetZoneAirLoopEquipment GetZoneAirSetpoints GetZoneAndZoneListNames GetZoneContaminanInputs GetZoneContaminanSetpoints GetZoneData GetZoneDehumidifierInput GetZoneDehumidifierNodeNumber GetZoneEqAvailabilityManager GetZoneEquipment GetZoneEquipmentData GetZoneEquipmentData1 GetZoneInfilAirChangeRate GetZoneLoads GetZonePlenumInput GetZoneSizingInput GLtoAMB GoAhead guess HasFractionalScheduleValue hatter HCInWindowStandardRatings HConvGap HcUCSDCV HcUCSDDV HcUCSDUF HeatingCoilVarSpeedCycResidual HeatingCoilVarSpeedResidual HeatPumpRunFrac HeatPumpRunFrac HeatPumpRunFrac HeatWatertoAirHPTempResidual Height HEMINT HIC_ASHRAE HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterCoilResidual HotWaterHeatingCoilResidual HRadPar HTRANS HTRANS0 HTRANS1 HWBaseboardUAResidual HXAssistDXCoilResidual HXAssistedCoolCoilHRResidual HXAssistedCoolCoilHRResidual HXAssistedCoolCoilTempResidual HXAssistedCoolCoilTempResidual HXDemandSideLoopFlowResidual HybridVentilationControl IAM iCheckScheduleValue ICSCollectorAnalyticalSoluton iGetCoilAirOutletNode iGetCoilSteamInletNode iGetCoilSteamOutletNode INCLOS incrementEconVar IncrementInstMeterCache incrementSteps incrementTableEntry InitAirflowNetwork InitAirflowNetworkData InitAirHeatBalance InitAirLoops InitAirLoopSplitter InitAirMixer InitAirTerminalUserDefined InitAirZoneReturnPlenum InitAirZoneSupplyPlenum InitATMixer InitBaseboard InitBaseboard InitBLASTAbsorberModel InitBoiler InitBoiler InitBoreholeHXSimVars InitBSDFWindows InitCBVAV InitCoilUserDefined InitComplexWindows InitComponentNodes InitConductionTransferFunctions InitConnections InitConstCOPChiller InitController InitCoolBeam InitCTGenerators InitCurveReporting InitDaylightingDevices InitDemandManagers InitDesiccantDehumidifier InitDetailedIceStorage InitDirectAir InitDualDuct InitDuct InitDXCoil InitDXCoolingSystem InitDXHeatPumpSystem InitElecReformEIRChiller InitElectricBaseboard InitElectricChiller InitElectricEIRChiller InitEMS InitEMSControlledConstructions InitEMSControlledSurfaceProperties InitEnergyReports InitEngineDrivenChiller InitEquivalentLayerWindowCalculations InitEvapCooler InitEvapFluidCooler InitExhaustAbsorber InitExteriorConvectionCoeff InitFan InitFanCoilUnits InitFluidCooler InitFluidHeatExchanger InitFuelCellGenerators InitFurnace InitGasAbsorber InitGlassOpticalCalculations InitGshp InitGshp InitGTChiller InitHeatBalance InitHeatBalFiniteDiff InitHeatBalHAMT InitHeatingCoil InitHeatRecovery InitHighTempRadiantSystem InitHumidifier InitHWBaseboard InitHXAssistedCoolingCoil InitHybridVentSysAvailMgr InitialInitHeatBalFiniteDiff InitializeCFSDaylighting InitializeCFSStateData InitializeComponentSizingTable InitializeConstructionsTables InitializeDaylightMapTables InitializeEnvironmentPeriodsTable InitializeErrorsTable InitializeGlycolTempLimits InitializeHeatTransferPipes InitializeIndexes InitializeIndexes InitializeLoops InitializeMaterialsTable InitializeMeters initializeMonetaryUnit InitializeNominalBaseboardHeatTable InitializeNominalElectricEquipmentTable InitializeNominalGasEquipmentTable InitializeNominalHotWaterEquipmentTable InitializeNominalInfiltrationTable InitializeNominalLightingTable InitializeNominalOtherEquipmentTable InitializeNominalPeopleTable InitializeNominalSteamEquipmentTable InitializeNominalVentilationTable InitializeOperatingMode InitializeOutput InitializePipes InitializePredefinedMonthlyTitles InitializePsychRoutines InitializePumps InitializeRefrigerantLimits InitializeReportMeterDataDictionaryTable InitializeReportMeterDataTables InitializeReportVariableDataDictionaryTable InitializeReportVariableDataTables InitializeRoomAirModelTable InitializeRootFinder InitializeRuntimeLanguage InitializeSchedulesTable InitializeSimulationsTable InitializeSQLiteTables InitializeSurfacesTable InitializeSystemSizingTable InitializeTabularDataTable InitializeTabularDataTable InitializeTabularDataView InitializeTabularDataView InitializeTabularMonthly InitializeTimeIndicesTable InitializeViews InitializeWeather InitializeZoneGroupTable InitializeZoneInfoTable InitializeZoneListTable InitializeZoneSizingTable InitICEngineGenerators InitIndirectAbsorpChiller InitIndUnit InitInteriorConvectionCoeffs InitInteriorRadExchange InitInternalHeatGains InitIntSolarDistribution InitLoadBasedControl InitLoadDistribution InitLowTempRadiantSystem InitMicroCHPNoNormalizeGenerators InitMoistureBalanceEMPD InitMSHeatPump InitMTGenerators InitMundtModel InitOAController InitOAMixer InitOneTimePlantSizingInfo InitOutAirNodes InitOutdoorAirUnit InitOutsideAirSys InitPipesHeatTransfer InitPipingSystems InitPIU InitPlantProfile InitPlantUserComponent InitPlantValves InitPollutionMeterReporting InitPondGroundHeatExchanger InitPressureDrop InitPTUnit InitPurchasedAir InitPVTcollectors InitRefrigeration InitRefrigerationPlantConnections InitReturnAirPath InitSecretObjects InitSetPointManagers InitSimpleIceStorage InitSimpleMixingConvectiveHeatGains InitSimpleWatertoAirHP InitSimVars InitSimVars InitSimVars InitSimVars InitSolarCalculations InitSolarCollector InitSolarHeatGains InitSolReflRecSurf InitStandAloneERV InitSteamBaseboard InitSteamCoil InitSurfaceGroundHeatExchanger InitSurfaceHeatBalance InitSys InitSysAvailManagers InitSystemOutputRequired InitTempDistModel InitTESCoil InitThermalAndFluxHistories InitThermalComfort InitTower InitTranspiredCollector InitTRNSYSPV InitUCSDCV InitUCSDDV InitUCSDUF InitUniqueNodeCheck InitUnitarySystems InitUnitHeater InitUnitVentilator InitVarSpeedCoil InitVentilatedSlab InitVRF InitWaterCoil InitWaterSource InitWaterThermalTank InitWatertoAirHP InitWatertoWaterHP InitWindowAC InitWindTurbine InitWrapper InitZoneAirLoopEquipment InitZoneAirSetpoints InitZoneAirUserDefined InitZoneContSetpoints InitZoneDehumidifier InitZoneEquipment InitZoneEvaporativeCoolerUnit InPolygon InsertCurrencySymbol int_times_vector INTCPT Integer_IsInRange IntegerIsWithinTwoValues IntegerToString InterConnectTwoPlantLoopSides InteriorBCEqns InteriorNodeEqns InternalRangeCheck InternalSetupTankDemandComponent InternalSetupTankSupplyComponent interp INTERP InterpBlind InterpDefValuesForGlycolConc Interpolate Interpolate_Lagrange InterpolateBetweenFourValues InterpolateBetweenTwoValues InterpolatePipeTransBeam InterpProfAng InterpProfSlatAng InterpretWeatherDataLine InterpSlatAng InterpSw InterpValuesForGlycolConc IntInterfaceNodeEqns IntPreDefTableEntry IntToStr Invert3By3Matrix InvertMatrix InvJulianDay IPTrimSigDigits iRoundSigDigits IS_BEAM IS_DIFF IS_DSRATIO IS_F IS_LWP IS_OPENNESS IS_SWP isCompLoadRepReq IsControlledShade IsConverged_CurrentToPrevIteration IsConverged_PipeCurrentToPrevIteration IsCurveInputTypeValid IsCurveOutputTypeValid isExternalInterfaceErlVariable IsGlazeLayerX IsGZSLayer isInQuadrilateral IsInRange isInTriangle IsLeapYear IsNodeOnSetPtManager IsParentObject IsParentObjectCompSet IsShadingLayer IssueSevereAlphaInputFieldError IssueSevereInputFieldError IssueSevereRealInputFieldError IsValidConnectionType IsVBLayer isWithinRange ITERATE IterateRootFinder iTrimSigDigits JGDate JulianDay LClimb LDSumMax LDSumMean LEEDtariffReporting LimitCoilCapacity LimitController LimitTUCapacity LinesOut linint LoadEquipList LoadInterface LogicalToInteger LogicalToInteger LogPlantConvergencePoints lookupOperator LookUpScheduleValue LookUpSeason LookupSItoIP lubksb LUBKSB ludcmp LUDCMP LUdecomposition LUsolution MakeAnchorName MakeHVACTimeIntervalString MakeMirrorSurface MakeRectangularVertices MakeRelativeRectangularVertices MakeTransition MakeUPPERCase ManageAirflowNetworkBalance ManageAirHeatBalance ManageAirLoops ManageAirModel ManageBranchInput ManageControllers ManageCoolTower ManageDemand ManageEarthTube ManageElectCenterStorageInteractions ManageElectricLoadCenters ManageElectStorInteractions ManageEMS ManageExteriorEnergyUse ManageGeneratorControlState ManageGeneratorFuelFlow ManageHeatBalance ManageHeatBalFiniteDiff ManageHeatBalHAMT ManageHVAC ManageHybridVentilation ManageInsideAdaptiveConvectionAlgo ManageInternalHeatGains ManageInverter ManageMundtModel ManageNonZoneEquipment ManageOutsideAdaptiveConvectionAlgo ManageOutsideAirSystem ManagePlantLoadDistribution ManagePlantLoops ManageRefrigeratedCaseRacks ManageSetPoints ManageSimulation ManageSingleCommonPipe ManageSizing ManageSurfaceHeatBalance ManageSystemAvailability ManageThermalChimney ManageThermalComfort ManageTransformers ManageTwoWayCommonPipe ManageUCSDCVModel ManageUCSDDVModel ManageUCSDUFModels ManageUserDefinedPatterns ManageWater ManageWaterInits ManageWeather ManageZoneAirLoopEquipment ManageZoneAirUpdates ManageZoneContaminanUpdates ManageZoneEquipment MapExtConvClassificationToHcModels MapIntConvClassificationToHcModels MarkNode MatchAndSetColorTextString MatchPlantSys MatrixIndex matrixQBalance MeshPartition_CompareByDimension MeshPartition_SelectionSort MeshPartitionArray_Contains MinePlantStructForInfo MixedAirControlTempResidual ModifyWindow Modulus MonthToMonthNumber MovingAvg MRXINV MSHPCyclingResidual MSHPHeatRecovery MSHPVarSpeedResidual MultiModeDXCoilHumRatResidual MultiModeDXCoilHumRatResidual MultiModeDXCoilResidual MultiModeDXCoilResidual MultiModeDXCoilResidual MultiSpeedDXCoolingCoilStandardRatings MultiSpeedDXHeatingCoilStandardRatings MULTOL MyPlantSizingIndex NeighborInformationArray_Value NETRAD NewEMSVariable NewExpression newPreDefColumn newPreDefReport newPreDefSubTable NEWTON NodeHasSPMCtrlVarType NormalArea NumBranchesInBranchList NumCompsInBranch nusselt NusseltNumber OpenEPlusWeatherFile OPENNESS_LW OpenOutputFiles OpenOutputTabularFile OpenWeatherFile OPERATOR (*) OPERATOR (+) OPERATOR (-) OPERATOR (.dot.) OPERATOR (.twodcross.) OPERATOR (.twoddot.) OPERATOR (/) ORDER OutBaroPressAt OutDewPointTempAt OutDryBulbTempAt OutsidePipeHeatTransCoef OutWetBulbTempAt P01 PanesDeflection ParametricObjectsCheck parseComputeLine ParseExpression ParseStack ParseTime PartLoadFactor PassiveGapNusseltNumber PassPressureAcrossInterface PassPressureAcrossMixer PassPressureAcrossSplitter PD_BEAM PD_BEAM_CASE_I PD_BEAM_CASE_II PD_BEAM_CASE_III PD_BEAM_CASE_IV PD_BEAM_CASE_V PD_BEAM_CASE_VI PD_DIFF PD_LW PD_LWP PD_SWP PerformanceCurveObject PerformanceTableObject PerformIterationLoop PerformPipeCellSimulation PerformPipeCircuitSimulation PerformSolarCalculations PerformTemperatureFieldUpdate PierceSurface PierceSurfaceVector PipeCircuitInfo_InitInOutCells PipeSegmentInfo_InitPipeCells PIUInducesPlenumAir PIUnitHasMixer PlaneEquation PlantHalfLoopSolver PlantMassFlowRatesFunc PLRResidual PLRResidual PLRResidualMixedTank PLRResidualStratifiedTank PMVResidual POLY1F POLY2F POLYF polygon_contains_point_2d popStack pos PostIPProcessing POWER PreDefTableEntry PredictSystemLoads PredictZoneContaminants PreparePipeCircuitSimulation PrepDebugFilesAndVariables PreProcessorCheck PrepVariablesISO15099 PreScanReportingVariables PresProfile PressureCurveValue ProcessDataDicFile ProcessDateString ProcessEMSInput ProcessEPWHeader ProcessForDayTypes ProcessInput ProcessInputDataFile ProcessIntervalFields ProcessMinMaxDefLine ProcessNumber ProcessScheduleInput ProcessSurfaceVertices ProcessTokens ProduceMinMaxString ProduceMinMaxStringWStartMinute ProduceRDDMDD ProfileAngle PropagateResolvedFlow PStack PsyCpAirFnWTdb PsyHfgAirFnWTdb PsyHFnTdbRhPb PsyHFnTdbW PsyHgAirFnWTdb PsyPsatFnTemp PsyPsatFnTemp_raw PsyRhFnTdbRhov PsyRhFnTdbRhovLBnd0C PsyRhFnTdbWPb PsyRhoAirFnPbTdbW PsyRhovFnTdbRh PsyRhovFnTdbRhLBnd0C PsyRhovFnTdbWPb PsyTdbFnHW PsyTdpFnTdbTwbPb PsyTdpFnWPb PsyTsatFnHPb PsyTsatFnPb PsyTwbFnTdbWPb PsyTwbFnTdbWPb_raw PsyVFnTdbWPb PsyWFnTdbH PsyWFnTdbRhPb PsyWFnTdbTwbPb PsyWFnTdpPb psz Pt2Plane PullCompInterconnectTrigger PumpDataForTable PushBranchFlowCharacteristics PushInnerTimeStepArrays pushStack PushSystemTimestepHistories PushSystemTimestepHistories PushZoneTimestepHistories PushZoneTimestepHistories QsortC QsortPartition RadialCellInfo_XY_CrossSectArea RadialCellInformation_ctor RadialSizing_Thickness Rainflow RangeCheck RB_BEAM RB_DIFF RB_F RB_LWP RB_SWP rCheckDayScheduleValueMinMax rCheckScheduleValue rCheckScheduleValueMinMax1 rCheckScheduleValueMinMax2 ReadEnergyMeters ReadEPlusWeatherForDay ReadGeneralDomainInputs ReadHorizontalTrenchInputs ReadINIFile ReadInputLine ReadPipeCircuitInputs ReadPipeSegmentInputs ReadTableData ReadUserWeatherInput ReadWeatherForDay Real_ConstrainTo Real_IsInRange real_times_vector ReAllocateAndPreserveOutputVariablesForSimulation ReallocateIntegerArray ReallocateIVar ReallocateRealArray ReallocateRVar RealPreDefTableEntry RealToStr RecKeepHeatBalance RecordOutput RectangleF_Contains ReformEIRChillerCondInletTempResidual ReformEIRChillerHeatRecovery RegisterNodeConnection RegisterPlantCompDesignFlow RegulateCondenserCompFlowReqOp ReInitPlantLoopsAtFirstHVACIteration RemoveSpaces RemoveTrailingZeros reorder ReplaceBlanksWithUnderscores ReplaceBlanksWithUnderscores ReportAirflowNetwork ReportAirHeatBalance ReportAirLoopConnections ReportAirTerminalUserDefined ReportAndTestGlycols ReportAndTestRefrigerants ReportBaseboard ReportBaseboard ReportCBVAV ReportChillerIPLV ReportCoilUserDefined ReportCompSetMeterVariables ReportController ReportCoolBeam ReportCoolTower ReportCTFs ReportCWTankInits ReportDemandManagerList ReportDesiccantDehumidifier ReportDetailedIceStorage ReportDirectAir ReportDualDuct ReportDualDuctConnections ReportDuct ReportDXCoil ReportDXCoilRating ReportDYMeters ReportEarthTube ReportEconomicVariable ReportElectricBaseboard ReportEMS ReportEvapCooler ReportEvapFluidCooler ReportExteriorEnergyUse ReportFan ReportFanCoilUnit ReportFatalGlycolErrors ReportFatalRefrigerantErrors ReportFiniteDiffInits ReportFluidCooler ReportFluidHeatExchanger ReportForTabularReports ReportFurnace ReportGlass ReportHeatBalance ReportHeatingCoil ReportHeatRecovery ReportHighTempRadiantSystem ReportHRMeters ReportHumidifier ReportHWBaseboard ReportIllumMap ReportingFreqName ReportingThisVariable ReportInternalHeatGains ReportLoopConnections ReportLowTempRadiantSystem ReportMaxVentilationLoads ReportMeterDetails ReportMissing_RangeData ReportMixer ReportMNMeters ReportMoistureBalanceEMPD ReportMSHeatPump ReportNodeConnections ReportOAController ReportOAMixer ReportOrphanFluids ReportOrphanRecordObjects ReportOrphanSchedules ReportOutdoorAirUnit ReportOutputFileHeaders ReportParentChildren ReportPipesHeatTransfer ReportPIU ReportPlantProfile ReportPlantUserComponent ReportPlantValves ReportPondGroundHeatExchanger ReportPTUnit ReportPumps ReportPurchasedAir ReportPV ReportRackSystem ReportRefrigerationComponents ReportReturnAirPath ReportRuntimeLanguage ReportScheduleDetails ReportScheduleValues ReportSizingOutput ReportSMMeters ReportSolarCollector ReportSplitter ReportStandAloneERV ReportStandAloneWaterUse ReportSteamBaseboard ReportSteamCoil ReportSurfaceErrors ReportSurfaceGroundHeatExchngr ReportSurfaceHeatBalance ReportSurfaces ReportSurfaceShading ReportSys ReportSysSizing ReportSystemEnergyUse ReportThermalChimney ReportTowers ReportTSMeters ReportUnitarySystem ReportUnitHeater ReportUnitVentilator ReportVentilatedSlab ReportVRFCondenser ReportVRFTerminalUnit ReportWarmupConvergence ReportWaterCoil ReportWaterManager ReportWaterThermalTank ReportWaterUse ReportWeatherAndTimeInformation ReportWindowAC ReportWindTurbine ReportZoneAirLoopEquipment ReportZoneAirUserDefined ReportZoneDehumidifier ReportZoneEquipment ReportZoneEvaporativeCoolerUnit ReportZoneMeanAirTemp ReportZoneReturnPlenum ReportZoneSizing ReportZoneSupplyPlenum ResetAllPlantInterConnectFlags ResetController ResetEnvironmentCounter ResetHVACControl ResetNodeData ResetPerformanceCurveOutput ResetRootFinder ResetTerminalUnitFlowLimits ResetWeekDaysByMonth Resimulate resist ReSolveAirLoopControllers ResolveAirLoopFlowLimits ResolveLocationInformation ResolveLockoutFlags ResolveLoopFlowVsPressure ResolveParallelFlows ResolveSysFlow ReverseAndRecalculate RevertZoneTimestepHistories RevertZoneTimestepHistories RevisePlantCallingOrder RezeroZoneSizingArrays RhoH2O RHtoVP RKG RoundSigDigits rRoundSigDigits rTrimSigDigits SafeCopyPlantNode SafeDiv SafeDivide SameString SandiaCellTemperature SandiaEffectiveIrradiance SandiaF1 SandiaF2 SandiaImp SandiaIsc SandiaIx SandiaIxx SandiaModuleTemperature SandiaTcellFromTmodule SandiaVmp SandiaVoc SaveSimpleController ScanForReports ScanPlantLoopsForNodeNum ScanPlantLoopsForObject sCheckDayScheduleValueMinMax ScheduleAverageHoursPerWeek SEARCH SearchAscTable SearchWindow5DataFile SecantFormula SecantMethod selectTariff SetActuatedBranchFlowRate SetAdditionalNeighborData SetAllFlowLocks SetAllPlantSimFlagsToValue SetATMixerPriFlow SetATMixerPriFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetAverageAirFlow SetCoilDesFlow SetCoilSystemCoolingData SetCoilSystemHeatingDXFlag SetCompFlowRate SetComponentFlowRate SetCurrentWeather SetCurveOutputMinMaxValues SetDSTDateRanges SetDXCoilTypeData SetDXCoolingCoilData SetEquivalentLayerWindowProperties SetErlValueNumber SetExtConvectionCoeff SetFanData SetHeatExchangerData SetHeatToReturnAirFlag SetInitialMeterReportingAndOutputNames SetIntConvectionCoeff SetInternalVariableValue SetMinMax setNativeVariables SetNodeResult SetOAControllerData SetOnOffMassFlowRate SetOnOffMassFlowRate SetOnOffMassFlowRate SetOnOffMassFlowRateVSCoil SetOnOffMassFlowRateVSCoil SetOutAirNodes SetOutBulbTempAt SetPredefinedTables SetSimpleWSHPData SETSKY SetSpecialDayDates SetSpeedVariables SetStormWindowControl SetSurfHBDataForMundtModel SetSurfHBDataForTempDistModel SetSurfTmeanAir SETUP4x4_A SetupAdaptiveConvectionRadiantSurfaceData SetupAdaptiveConvectionStaticMetaData SetupAirLoopControllersTracer SetupAllOutputVariables SetUpAndSort SetupBranchControlTypes SetupCellNeighbors SetupCommonPipes SetupComplexFenestrationMaterialInput SetupComplexFenestrationStateInput SetupComplexWindowStateGeometry SetUpCompSets SetupDElightOutput4EPlus SetupDElightOutput4EPlus SetUpDesignDay SetupEMSActuator SetupEMSIntegerActuator SetupEMSIntegerInternalVariable SetupEMSInternalVariable SetupEMSLogicalActuator SetupEMSRealActuator SetupEMSRealInternalVariable SetupEnvironmentTypes SetupFuelConstituentData SetupGeneratorControlStateManager SetupIndividualControllerTracer SetupInitialPlantCallingOrder SetupIntegerOutputVariable SetupInterpolationValues SetupLoopFlowRequest SetupMeteredVarsForSetPt SetupMundtModel SetupNodeSetpointsAsActuators SetupNodeVarsForReporting SetupOutputVariable SetupPipeCircuitInOutCells SetupPlantEMSActuators SetupPollutionCalculations SetupPollutionMeterReporting SetupPossibleOperators SetupPrimaryAirSystemAvailMgrAsActuators SetupPumpMinMaxFlows SetupRealOutputVariable SetupRealOutputVariable_IntKey SetupReportInput SetupReports SetupRootFinder SetUpSchemeColors SetupShadeSurfacesForSolarCalcs SetupSimpleWindowGlazingSystem SetupSimulation SetupStratifiedNodes SetupSurfaceConstructionActuators SetupSurfaceConvectionActuators SetupSurfaceOutdoorBoundaryConditionActuators SetUpSysSizingArrays SetupTankDemandComponent SetupTankSupplyComponent SetupThermostatActuators SetupTimePointers SetupUnitConversions SetupWeekDaysByMonth SetupWindowShadingControlActuators SetupZoneEquipmentForConvectionFlowRegime SetupZoneGeometry SetupZoneInfoAsInternalDataAvail SetupZoneInternalGain SetupZoneInternalGain SetupZoneSizing SetUpZoneSizingArrays SetUTSCQdotSource SetVarSpeedCoilData SetVentedModuleQdotSource SetVSHPAirFlow SetVSHPAirFlow SetWindSpeedAt SetZoneEquipSimOrder shading shadingedge shadingin SHADOW SharedDVCVUFDataInit SHDBKS SHDGSS SHDRVL SHDSBS shift ShiftPipeTemperaturesForNewIteration ShiftPlantLoopSideCallingOrder ShiftTemperaturesForNewIteration ShiftTemperaturesForNewTimeStep ShowAuditErrorMessage ShowBranchesOnLoop ShowContinueError ShowContinueError ShowContinueErrorTimeStamp ShowContinueErrorTimeStamp ShowErrorMessage ShowErrorMessage ShowFatalError ShowFatalError ShowMessage ShowMessage ShowPsychrometricSummary ShowRecurringContinueErrorAtEnd ShowRecurringContinueErrorAtEnd ShowRecurringErrors ShowRecurringSevereErrorAtEnd ShowRecurringSevereErrorAtEnd ShowRecurringWarningErrorAtEnd ShowRecurringWarningErrorAtEnd ShowSevereError ShowSevereError ShowSevereMessage ShowSevereMessage ShowWarningError ShowWarningError ShowWarningMessage ShowWarningMessage showWarningsBasedOnTotal Sim4PipeFanCoil SimAirChillerSet SimAirLoop SimAirLoopComponent SimAirLoopComponents SimAirLoops SimAirLoopSplitter SimAirMixer SimAirTerminalUserDefined SimAirZonePlenum SimATMixer SimBaseboard SimBLASTAbsorber SimBoiler SimCBVAV SimCBVAV SimCentralGroundSourceHeatPump SimChiller SimCoilUserDefined SimComponentModelFan SimConstVol SimCoolBeam SimCostEstimate SimCTGenerator SimCTPlantHeatRecovery SimCyclingWindowAC SimDesiccantDehumidifier SimDetailedIceStorage SimDirectAir SimDistrictEnergy SimDualDuctConstVol SimDualDuctVarVol SimDualDuctVAVOutdoorAir SimDuct SimDXCoil SimDXCoilMultiMode SimDXCoilMultiSpeed SimDXCoolingSystem SimDXHeatPumpSystem SimElecBaseBoard SimElectricBaseBoard SimElectricConvective SimElectricEIRChiller SimEvapCooler SimEvapFluidCoolers SimExhaustAbsorber SimFanCoilUnit SimFluidCoolers SimFluidHeatExchanger SimFourPipeIndUnit SimFuelCellGenerator SimFuelCellPlantHeatRecovery SimFurnace SimGasAbsorber SimGroundHeatExchangers SimHeatPumpWaterHeater SimHeatRecovery SimHighTempRadiantSystem SimHPWatertoWaterCOOLING SimHPWatertoWaterHEATING SimHPWatertoWaterSimple SimHumidifier SimHVAC SimHWBaseboard SimHWConvective SimHXAssistedCoolingCoil SimICEngineGenerator SimICEPlantHeatRecovery SimIceStorage SimIndirectAbsorber SimIndUnit SimLowTempRadiantSystem SimMicroCHPGenerator SimMicroCHPPlantHeatRecovery SimMSHeatPump SimMSHP SimMTGenerator SimMTPlantHeatRecovery SimMultiSpeedCoils SimOAComponent SimOAController SimOAMixer SimOnOffFan SimOutdoorAirEquipComps SimOutdoorAirUnit SimOutsideAirSys SimOutsideEnergy SimPackagedTerminalUnit SimPipes SimPipesHeatTransfer SimPipingSystemCircuit SimPIU SimPlantEquip SimPlantValves SimpleCoolingCoilUAResidual SimpleEvapFluidCoolerUAResidual SimpleFluidCoolerUAResidual SimpleHeatingCoilUAResidual SimpleTowerApproachResidual SimpleTowerTrResidual SimpleTowerUAResidual SimPondGroundHeatExchanger SimPressureDropSystem SimPTUnit SimPumps SimPurchasedAir SimPVGenerator SimPVTcollectors SimReformulatedEIRChiller SimRefrigCondenser SimReturnAirPath SimSelectedEquipment SimSetPointManagers SimSimpleEvapFluidCooler SimSimpleFan SimSimpleFluidCooler SimSimpleTower SimSolarCollector SimStandAloneERV SimSteamBaseboard SimSteamBoiler SimSteamCoils SimSurfaceGroundHeatExchanger SimSysAvailManager SimTESCoil SimTowers SimTranspiredCollector SimulateAllInteriorRadialSoilSlices SimulateAllLoopSideBranches SimulateAllLoopSidePumps SimulateDemandManagerList SimulateDetailedRefrigerationSystems SimulateDetailedTransRefrigSystems SimulateDualDuct SimulateFanComponents SimulateFluidCell SimulateHeatingCoilComponents SimulateInnerMostRadialSoilSlice SimulateLoopSideBranchGroup SimulateOuterMostRadialSoilSlice SimulatePlantProfile SimulateRadialInsulationCell SimulateRadialPipeCell SimulateRadialToCartesianInterface SimulateSingleDuct SimulateSteamCoilComponents SimulateVRF SimulateWaterCoilComponents SimulateWaterHeaterStandAlone SimulateWaterUse SimulateWaterUseConnection SimUnitaryBypassVAV SimUnitarySystem SimUnitHeater SimUnitVentilator SimUnitVentOAMixer SimUserDefinedPlantComponent SimVariableSpeedCoils SimVariableSpeedHP SimVariableSpeedHP SimVariableTower SimVariableVolumeFan SimVAV SimVAVVS SimVentilatedSlab SimVentSlabOAMixer SimVRF SimVRFCondenserPlant SimWaterCoils SimWaterSource SimWaterThermalTank SimWatertoAirHP SimWatertoAirHPSimple SimWindowAC SimWindTurbine SimZoneAirLoopEquipment SimZoneAirUserDefined SimZoneDehumidifier SimZoneEquipment SimZoneEvaporativeCoolerUnit SimZoneExhaustFan SimZoneOutAirUnitComps SingelSpeedDXCoolingCoilStandardRatings SingleSpeedDXHeatingCoilStandardRatings SingleSpeedFluidCooler SizeAbsorpChiller SizeAirLoopBranches SizeAirLoops SizeBaseboard SizeBoiler SizeBoiler SizeCBVAV SizeConstCOPChiller SizeController SizeCoolBeam SizeDemandSidePlantConnections SizeDirectAir SizeDualDuct SizeDXCoil SizeElecReformEIRChiller SizeElectricBaseboard SizeElectricBaseboard SizeElectricChiller SizeElectricEIRChiller SizeEngineDrivenChiller SizeEvapCooler SizeEvapFluidCooler SizeExhaustAbsorber SizeFan SizeFanCoilUnit SizeFluidCooler SizeFluidHeatExchanger SizeFurnace SizeGasAbsorber SizeGTChiller SizeHeatingCoil SizeHeatRecovery SizeHighTempRadiantSystem SizeHumidifier SizeHVACWaterToAir SizeHWBaseboard SizeIndirectAbsorpChiller SizeIndUnit SizeLowTempRadiantSystem SizeMSHeatPump SizeOAController SizeOutdoorAirUnit SizePIU SizePlantLoop SizePTUnit SizePump SizePurchasedAir SizePVT SizeStandAloneERV SizeStandAloneWaterHeater SizeSteamBaseboard SizeSteamCoil SizeSupplySidePlantConnections SizeSys SizeTankForDemandSide SizeTankForSupplySide SizeTESCoil SizeTower SizeUCSDUF SizeUnitarySystem SizeUnitHeater SizeUnitVentilator SizeVarSpeedCoil SizeVentilatedSlab SizeVRF SizeVRFCondenser SizeVSMerkelTower SizeWaterCoil SizeWaterManager SizeWaterSource SizeWindowAC SizeWrapper SizeZoneDehumidifier SizeZoneEquipment SizeZoneEvaporativeCoolerUnit SkipEPlusWFHeader SkyDifSolarShading SkyGndWeight SkyWeight SLtoAMB SLtoGL SLVSKY solar_EN673 solarISO15099 SolarSprectrumAverage SOLMATS SolveAirLoopControllers SolveForWindowTemperatures SolveRegression SolveRegulaFalsi SolverMoistureBalanceEMPD SOLVZP SortHistory Specular_Adjust Specular_EstimateDiffuseProps Specular_F Specular_OffNormal Specular_RATDiff Specular_SWP SQLiteBegin SQLiteBegin SQLiteBindDouble SQLiteBindInteger SQLiteBindLogicalMacro SQLiteBindNULL SQLiteBindText SQLiteBindTextMacro SQLiteClearBindings SQLiteCloseDatabase SQLiteColumnInt SQLiteColumnIntMacro SQLiteCommit SQLiteCommit SQLiteExecuteCommand SQLiteExecuteCommandMacro SQLiteFinalizeCommand SQLiteOpenDatabase SQLiteOpenDatabaseMacro SQLitePrepareStatement SQLitePrepareStatementMacro SQLiteResetCommand SQLiteStepCommand SQLiteWriteMessage SQLiteWriteMessageMacro SQLiteWriteMessageMacro StandardIndexTypeKey StandardVariableTypeKey StartingWindowTemps StartingWinTempsForNominalCond SteamHeatingCoilResidual StorageType StoreAPumpOnCurrentTempLoop storeIterationResults StoreRecurringErrorMessage StringValue StrToReal SumAllInternalCO2Gains SumAllInternalConvectionGains SumAllInternalGenericContamGains SumAllInternalLatentGains SumAllInternalRadiationGains SumAllReturnAirConvectionGains SumAllReturnAirLatentGains SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumHATsurf SumInternalCO2GainsByTypes SumInternalConvectionGainsByTypes SumInternalLatentGainsByTypes SumInternalRadiationGainsByTypes SummarizeErrors SumReturnAirConvectionGainsByTypes SumZoneImpacts SUN3 SUN4 SupSATResidual SurfaceScheduledSolarInc SurveyDemandManagers SystemPropertiesAtLambdaAndPhi SystemSpectralPropertiesAtPhi TableLookupObject TARCOG90 TBND TdbFnHRhPb TDMA TDMA_R TellMeHowManyObjectItemArgs TemperaturesFromEnergy TempIPtoSI TempSItoIP terpld TESCoilHumRatResidual TESCoilResidual TestAirPathIntegrity TestBranchIntegrity TestCompSet TestCompSetInletOutletNodes TestInletOutletNodes TestReturnAirPathIntegrity TestSupplyAirPathIntegrity therm1d TightenNodeMinMaxAvails TimestepInitComplexFenestration TimestepTypeName TraceAirLoopController TraceAirLoopControllers TraceIndividualController TraceIterationStamp TrackAirLoopController TrackAirLoopControllers TRadC TransAndReflAtPhi TransformVertsByAspect TransTDD Triangulate TrimSigDigits TurnOffLoopEquipment TurnOffLoopSideEquipment TurnOffReportRangeCheckErrors TurnOnPlantLoopPipes TurnOnReportRangeCheckErrors TwoSpeedFluidCooler UnitarySystemHeatRecovery UpdateAbsorberChillerComponentGeneratorSide UpdateAirflowNetwork UpdateAirMixer UpdateAirSysCompPtrArray UpdateAirSysSubCompPtrArray UpdateAirSysSubSubCompPtrArray UpdateAirZoneReturnPlenum UpdateAirZoneSupplyPlenum UpdateAnyLoopDemandAlterations UpdateATMixer UpdateBaseboard UpdateBaseboardPlantConnection UpdateBasementSurfaceTemperatures UpdateBBElecRadSourceValAvg UpdateBBRadSourceValAvg UpdateBBSteamRadSourceValAvg UpdateBLASTAbsorberRecords UpdateBoilerRecords UpdateBoilerRecords UpdateBracket UpdateBranchConnections UpdateChillerComponentCondenserSide UpdateChillerheaterRecords UpdateChillerRecords UpdateColdWeatherProtection UpdateCommonPipe UpdateComplexWindows UpdateComponentHeatRecoverySide UpdateConstCOPChillerRecords UpdateController UpdateCoolBeam UpdateCoolTower UpdateCTGeneratorRecords UpdateDataandReport UpdateDemandManagers UpdateDesiccantDehumidifier UpdateDetailedIceStorage UpdateDualDuct UpdateDuct UpdateDXCoil UpdateElectricBaseboard UpdateElectricChillerRecords UpdateElectricEIRChillerRecords UpdateEMSTrendVariables UpdateEngineDrivenChiller UpdateEvapCooler UpdateEvapFluidCooler UpdateEvaporativeCondenserBasinHeater UpdateEvaporativeCondenserWaterUse UpdateExhaustAbsorberCoolRecords UpdateExhaustAbsorberHeatRecords UpdateExhaustAirFlows UpdateFan UpdateFinalSurfaceHeatBalance UpdateFluidCooler UpdateFluidHeatExchanger UpdateFuelCellGeneratorRecords UpdateGasAbsorberCoolRecords UpdateGasAbsorberHeatRecords UpdateGSHPRecords UpdateGSHPRecords UpdateGSHPRecords UpdateGTChillerRecords UpdateHalfLoopInletTemp UpdateHeatBalHAMT UpdateHeatingCoil UpdateHeatRecovery UpdateHighTempRadiantSystem UpdateHistories UpdateHistory UpdateHTRadSourceValAvg UpdateHumidifier UpdateHVACInterface UpdateHWBaseboard UpdateHWBaseboardPlantConnection UpdateIceFractions UpdateICEngineGeneratorRecords UpdateIndirectAbsorberRecords UpdateInternalGainValues UpdateIrrigation UpdateLoadCenterRecords UpdateLoopSideReportVars UpdateLowTempRadiantSystem UpdateMeterReporting UpdateMeters UpdateMeterValues UpdateMicroCHPGeneratorRecords UpdateMinMax UpdateMixedAirSetPoints UpdateMoistureBalanceEMPD UpdateMoistureBalanceFD UpdateMSHeatPump UpdateMTGeneratorRecords UpdateNode UpdateNodeThermalHistory UpdateOAController UpdateOAMixer UpdateOAPretreatSetPoints UpdatePipesHeatTransfer UpdatePipingSystems UpdatePlantLoopInterface UpdatePlantMixer UpdatePlantProfile UpdatePlantSplitter UpdatePlantValves UpdatePondGroundHeatExchanger UpdatePrecipitation UpdatePressureDrop UpdatePurchasedAir UpdatePVTcollectors UpdateRadSysSourceValAvg UpdateRecords UpdateReformEIRChillerRecords UpdateRefrigCondenser UpdateReportWaterSystem UpdateRootFinder UpdateScheduleValues UpdateSetPointManagers UpdateSimpleWatertoAirHP UpdateSoilProps UpdateSolarCollector UpdateSplitter UpdateSQLiteErrorRecord UpdateSQLiteErrorRecord UpdateSQLiteSimulationRecord UpdateSQLiteSimulationRecord UpdateSteamBaseboard UpdateSteamBaseboardPlantConnection UpdateSteamCoil UpdateSurfaceGroundHeatExchngr UpdateSys UpdateSysSizing UpdateSystemOutputRequired UpdateTabularReports UpdateTEStorage UpdateThermalHistories UpdateTowers UpdateTranspiredCollector UpdateUnitarySystemControl UpdateUtilityBills UpdateVarSpeedCoil UpdateVentilatedSlab UpdateVerticalGroundHeatExchanger UpdateVRFCondenser UpdateWaterCoil UpdateWaterConnections UpdateWaterManager UpdateWaterSource UpdateWaterThermalTank UpdateWaterToAirCoilPlantConnection UpdateWatertoAirHP UpdateWeatherData UpdateWholeBuildingRecords UpdateZoneAirLoopEquipment UpdateZoneCompPtrArray UpdateZoneDehumidifier UpdateZoneEquipment UpdateZoneInletConvergenceLog UpdateZoneListAndGroupLoads UpdateZoneSizing UpdateZoneSubCompPtrArray UpdateZoneSubSubCompPtrArray ValidateAndSetSysAvailabilityManagerType ValidateComponent ValidateDistributionSystem ValidateEMSProgramName ValidateEMSVariableName ValidateExhaustFanInput ValidateFlowControlPaths ValidateFuelType ValidateIndexType ValidateMaterialRoughness ValidateMonthDay ValidateNStandardizeMeterTitles ValidateObjectandParse ValidatePipeConstruction ValidatePLFCurve ValidateSection ValidateSectionsInput ValidateVariableType value_to_vector ValueToString VAVVSCoolingResidual VAVVSHCFanOnResidual VAVVSHWFanOnResidual VAVVSHWNoFanResidual VB_CriticalSlatAngle VB_DIFF VB_LWP VB_ShadeControl VB_SLAT_RADIUS_RATIO VB_SOL4 VB_SOL46_CURVE VB_SOL6 VB_SWP vec2d_cross_product vec2d_dot_product vec_cross_product vec_dot_product VecLength VecNegate VecNormalize VecRound VecSquaredLength vector_add vector_div_int vector_div_real vector_subtract vector_times_int vector_times_real vector_to_array VerifyControlledZoneForThermostat VerifyCustomMetersElecPowerMgr VerifyHeatExchangerParent VerifyName VerifySetPointManagers VerifyThermostatInZone VerifyUniqueBaseboardName VerifyUniqueBoilerName VerifyUniqueChillerName VerifyUniqueCoilName ViewFac VisibleSprectrumAverage Volume VRMLOut VSCoilCyclingHumResidual VSCoilCyclingResidual VSCoilCyclingResidual VSCoilSpeedHumResidual VSCoilSpeedResidual VSCoilSpeedResidual VSEvapUnitLoadResidual VSHPCyclingResidual VSHPCyclingResidual VSHPSpeedResidual VSHPSpeedResidual VSMerkelResidual W5InitGlassParameters W5LsqFit W5LsqFit2 W6CoordsFromWorldVect warnIfNativeVarname WetCoilOutletCondition WhichCompSet WhichParentCompSet WhichParentSet Width WindowGapAirflowControl WindowGasConductance WindowGasPropertiesAtTemp WindowHeatBalanceEquations WindowScheduledSolarAbs WindowShadingManager WindowTempsForNominalCond WindSpeedAt Windward WorldVectFromW6 WriteAdaptiveComfortTable WriteAirLoopStatistics WriteBEPSTable WriteCompCostTable WriteComponentSizing WriteCumulativeReportMeterData WriteDaylightMapTitle WriteDemandEndUseSummary WriteInputArguments WriteIntegerData WriteIntegerVariableOutput WriteMeterDictionaryItem WriteModifiedArguments WriteMonthlyTables WriteOutputArguments WriteOutputEN673 WritePoint WritePredefinedTables WriteRealData WriteRealVariableOutput WriteReportHeaders WriteReportIntegerData WriteReportMeterData WriteReportRealData WriteReportVariableDictionaryItem WriteRootFinderStatus WriteRootFinderTrace WriteRootFinderTraceHeader WriteSourceEnergyEndUseSummary writeSubtitle WriteSurfaceShadowing WriteTable WriteTableOfContents WriteTabularLifeCycleCostReport WriteTabularReports WriteTabularTariffReports WriteTARCOGInputFile writeTextLine WriteTimeBinTables WriteTimeStampFormatData WriteTrace WriteVeriSumTable WriteZoneLoadComponentTable WVDC XNormalArea XYRectangle XZRectangle YNormalArea YZRectangle ZeroHVACValues ZNormalArea