HVACControllers Module

module~~hvaccontrollers~~UsesGraph module~hvaccontrollers HVACControllers module~dataglobals DataGlobals module~dataglobals->module~hvaccontrollers module~datahvacglobals DataHVACGlobals module~dataglobals->module~datahvacglobals module~dataloopnode DataLoopNode module~dataglobals->module~dataloopnode module~datarootfinder DataRootFinder module~datarootfinder->module~hvaccontrollers module~datahvacglobals->module~hvaccontrollers module~datahvaccontrollers DataHVACControllers module~datahvaccontrollers->module~hvaccontrollers module~dataloopnode->module~hvaccontrollers module~datainterfaces DataInterfaces module~datainterfaces->module~hvaccontrollers module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~hvaccontrollers module~dataprecisionglobals->module~dataglobals module~dataprecisionglobals->module~datarootfinder module~dataprecisionglobals->module~datahvacglobals module~dataprecisionglobals->module~dataloopnode module~dataprecisionglobals->module~datainterfaces
Help

Used By

module~~hvaccontrollers~~UsedByGraph module~hvaccontrollers HVACControllers proc~managesimulation ManageSimulation module~hvaccontrollers->proc~managesimulation proc~resolveairloopcontrollers ReSolveAirLoopControllers module~hvaccontrollers->proc~resolveairloopcontrollers proc~getairpathdata GetAirPathData module~hvaccontrollers->proc~getairpathdata proc~getfurnaceinput GetFurnaceInput module~hvaccontrollers->proc~getfurnaceinput proc~solveairloopcontrollers SolveAirLoopControllers module~hvaccontrollers->proc~solveairloopcontrollers proc~simairloop SimAirLoop module~hvaccontrollers->proc~simairloop
Help


Variables

TypeVisibility AttributesNameInitial
real(kind=r64), private, parameter:: SomeFloatingPoint =1.0d0
integer, private, parameter:: NumSigDigits =PRECISION(SomeFloatingPoint)
integer, private, parameter:: iNoControlVariable =0
integer, public, parameter:: iTemperature =1
integer, public, parameter:: iHumidityRatio =2
integer, public, parameter:: iTemperatureAndHumidityRatio =3
integer, private, parameter:: iFlow =4
integer, private, parameter:: CoilType_Cooling =1
integer, private, parameter:: CoilType_Heating =2
character(len=*), private, parameter, DIMENSION(0:4):: ControlVariableTypes =(/'No control variable           ', 'Temperature                   ', 'Humidity ratio                ', 'Temperature and humidity ratio', 'Flow rate                     '/)
integer, private :: NumControllers =0
type(ControllerPropsType), private, ALLOCATABLE, DIMENSION(:):: ControllerProps
type(RootFinderDataType), private, ALLOCATABLE, DIMENSION(:):: RootFinders
integer, private :: NumAirLoopStats =0
type(AirLoopStatsType), private, ALLOCATABLE, DIMENSION(:):: AirLoopStats
logical, private, ALLOCATABLE, DIMENSION(:):: CheckEquipName
logical, private :: GetControllerInputFlag =.TRUE.

Derived Types

type, private :: SolutionTrackerType

Components

TypeVisibility AttributesNameInitial
logical, public :: DefinedFlag =.TRUE.
real(kind=r64), public :: ActuatedValue =0.0d0
integer, public :: Mode =iModeNone

type, private :: ControllerPropsType

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: ControllerName =' '
character(len=MaxNameLength), public :: ControllerType =' '
integer, public :: ControllerType_Num =ControllerSimple_Type
integer, public :: ControlVar =iNoControlVariable
integer, public :: ActuatorVar =0
integer, public :: Action =iNoAction
logical, public :: InitFirstPass =.TRUE.
integer, public :: NumCalcCalls =0
integer, public :: Mode =iModeNone
logical, public :: DoWarmRestartFlag =.FALSE.
logical, public :: ReuseIntermediateSolutionFlag =.FALSE.
logical, public :: ReusePreviousSolutionFlag =.FALSE.
type(SolutionTrackerType), public, DIMENSION(2):: SolutionTrackers
real(kind=r64), public :: MaxAvailActuated =0.0d0
real(kind=r64), public :: MaxAvailSensed =0.0d0
real(kind=r64), public :: MinAvailActuated =0.0d0
real(kind=r64), public :: MinAvailSensed =0.0d0
real(kind=r64), public :: MaxVolFlowActuated =0.0d0
real(kind=r64), public :: MinVolFlowActuated =0.0d0
real(kind=r64), public :: MaxActuated =0.0d0
real(kind=r64), public :: MinActuated =0.0d0
integer, public :: ActuatedNode =0
real(kind=r64), public :: ActuatedValue =0.0d0
real(kind=r64), public :: NextActuatedValue =0.0d0
integer, public :: ActuatedNodePlantLoopNum =0
integer, public :: ActuatedNodePlantLoopSide =0
integer, public :: ActuatedNodePlantLoopBranchNum =0
integer, public :: SensedNode =0
logical, public :: IsSetPointDefinedFlag =.FALSE.
real(kind=r64), public :: SetPointValue =0.0d0
real(kind=r64), public :: SensedValue =0.0d0
real(kind=r64), public :: DeltaSensed =0.0d0
real(kind=r64), public :: Offset =0.0d0
character(len=MaxNameLength), public :: LimitType =' '
real(kind=r64), public :: Range =0.0d0
real(kind=r64), public :: Limit =0.0d0
integer, public :: TraceFileUnit =0
logical, public :: FirstTraceFlag =.TRUE.
integer, public :: BadActionErrCount =0
integer, public :: BadActionErrIndex =0

type, private :: ControllerStatsType

Components

TypeVisibility AttributesNameInitial
integer, public, DIMENSION(iFirstMode:iLastMode):: NumCalls =0
integer, public, DIMENSION(iFirstMode:iLastMode):: TotIterations =0
integer, public, DIMENSION(iFirstMode:iLastMode):: MaxIterations =0

type, private :: AirLoopStatsType

Components

TypeVisibility AttributesNameInitial
integer, public :: TraceFileUnit
logical, public :: FirstTraceFlag =.TRUE.
integer, public :: NumCalls =0
integer, public :: NumFailedWarmRestarts =0
integer, public :: NumSuccessfulWarmRestarts =0
integer, public :: TotSimAirLoopComponents =0
integer, public :: MaxSimAirLoopComponents =0
integer, public :: TotIterations =0
integer, public :: MaxIterations =0
type(ControllerStatsType), public, DIMENSION(:), ALLOCATABLE:: ControllerStats

Functions

private function CheckMinActiveController(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

Return Value logical

private function CheckMaxActiveController(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

Return Value logical

public function CreateHVACTimeString() result(OutputString)

Arguments

None

Return Value character(len=32)

public function CreateHVACStepFullString() result(OutputString)

Arguments

None

Return Value character(len=200)

public function MakeHVACTimeIntervalString() result(OutputString)

Arguments

None

Return Value character(len=52)


Subroutines

public subroutine ManageControllers(ControllerName, ControllerIndex, FirstHVACIteration, AirLoopNum, AirLoopPass, Operation, IsConvergedFlag, IsUpToDateFlag, AllowWarmRestartFlag)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: ControllerName
integer, intent(inout) :: ControllerIndex
logical, intent(in) :: FirstHVACIteration
integer, intent(in) :: AirLoopNum
integer, intent(in) :: AirLoopPass
integer, intent(in) :: Operation
logical, intent(out) :: IsConvergedFlag
logical, intent(inout) :: IsUpToDateFlag
logical, intent(out), optional :: AllowWarmRestartFlag

private subroutine GetControllerInput()

Arguments

None

private subroutine ResetController(ControlNum, FirstHVACIteration, DoWarmRestartFlag, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
logical, intent(in) :: DoWarmRestartFlag
logical, intent(out) :: IsConvergedFlag

private subroutine InitController(ControlNum, FirstHVACIteration, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
logical, intent(inout) :: IsConvergedFlag

private subroutine SizeController(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

private subroutine CalcSimpleController(ControlNum, FirstHVACIteration, IsConvergedFlag, IsUpToDateFlag, ControllerName)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
logical, intent(out) :: IsConvergedFlag
logical, intent(inout) :: IsUpToDateFlag
character(len=*), intent(in) :: ControllerName

private subroutine FindRootSimpleController(ControlNum, FirstHVACIteration, IsConvergedFlag, IsUpToDateFlag, ControllerName)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
logical, intent(out) :: IsConvergedFlag
logical, intent(out) :: IsUpToDateFlag
character(len=*), intent(in) :: ControllerName

private subroutine CheckSimpleController(ControlNum, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(out) :: IsConvergedFlag

private subroutine SaveSimpleController(ControlNum, FirstHVACIteration, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
logical, intent(in) :: IsConvergedFlag

private subroutine LimitController(ControlNum, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer :: ControlNum
logical :: IsConvergedFlag

private subroutine UpdateController(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

private subroutine ReportController(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

private subroutine ExitCalcController(ControlNum, NextActuatedValue, Mode, IsConvergedFlag, IsUpToDateFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
real(kind=r64), intent(in) :: NextActuatedValue
integer, intent(in) :: Mode
logical, intent(out) :: IsConvergedFlag
logical, intent(out) :: IsUpToDateFlag

public subroutine TrackAirLoopControllers(AirLoopNum, WarmRestartStatus, AirLoopIterMax, AirLoopIterTot, AirLoopNumCalls)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: AirLoopNum
integer, intent(in) :: WarmRestartStatus
integer, intent(in) :: AirLoopIterMax
integer, intent(in) :: AirLoopIterTot
integer, intent(in) :: AirLoopNumCalls

private subroutine TrackAirLoopController(AirLoopNum, AirLoopControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: AirLoopNum
integer, intent(in) :: AirLoopControlNum

public subroutine DumpAirLoopStatistics()

Arguments

None

private subroutine WriteAirLoopStatistics(FileUnit, ThisPrimaryAirSystem, ThisAirLoopStats)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: FileUnit
type(DefinePrimaryAirSystem), intent(in) :: ThisPrimaryAirSystem
type(AirLoopStatsType), intent(in) :: ThisAirLoopStats

private subroutine SetupAirLoopControllersTracer(AirLoopNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: AirLoopNum

public subroutine TraceAirLoopControllers(FirstHVACIteration, AirLoopNum, AirLoopPass, AirLoopConverged, AirLoopNumCalls)

Arguments

Type IntentOptional AttributesName
logical, intent(in) :: FirstHVACIteration
integer, intent(in) :: AirLoopNum
integer, intent(in) :: AirLoopPass
logical, intent(in) :: AirLoopConverged
integer, intent(in) :: AirLoopNumCalls

private subroutine TraceIterationStamp(TraceFileUnit, FirstHVACIteration, AirLoopPass, AirLoopConverged, AirLoopNumCalls)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: TraceFileUnit
logical, intent(in) :: FirstHVACIteration
integer, intent(in) :: AirLoopPass
logical, intent(in) :: AirLoopConverged
integer, intent(in) :: AirLoopNumCalls

private subroutine TraceAirLoopController(TraceFileUnit, ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: TraceFileUnit
integer, intent(in) :: ControlNum

private subroutine SetupIndividualControllerTracer(ControlNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum

private subroutine TraceIndividualController(ControlNum, FirstHVACIteration, AirLoopPass, Operation, IsConvergedFlag)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ControlNum
logical, intent(in) :: FirstHVACIteration
integer, intent(in) :: AirLoopPass
integer, intent(in) :: Operation
logical, intent(in) :: IsConvergedFlag

private subroutine CheckControllerListOrder()

Arguments

None

public subroutine CheckCoilWaterInletNode(WaterInletNodeNum, NodeNotFound)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: WaterInletNodeNum
logical, intent(out) :: NodeNotFound

public subroutine GetControllerActuatorNodeNum(ControllerName, WaterInletNodeNum, NodeNotFound)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: ControllerName
integer, intent(out) :: WaterInletNodeNum
logical, intent(out) :: NodeNotFound


AirflowNetworkBalanceManager AirflowNetworkSolver BaseboardElectric BaseboardRadiator Boilers BoilerSteam BranchInputManager BranchNodeConnections ChillerAbsorption ChillerElectricEIR ChillerExhaustAbsorption ChillerGasAbsorption ChillerIndirectAbsorption ChillerReformulatedEIR CondenserLoopTowers ConductionTransferFunctionCalc ConvectionCoefficients CoolTower CostEstimateManager CrossVentMgr CTElectricGenerator CurveManager DataAirflowNetwork DataAirLoop DataAirSystems DataBranchAirLoopPlant DataBranchNodeConnections DataBSDFWindow DataComplexFenestration DataContaminantBalance DataConvergParams DataConversions DataCostEstimate DataDaylighting DataDaylightingDevices DataDefineEquip DataDElight DataEnvironment DataErrorTracking DataGenerators DataGlobalConstants DataGlobals DataHeatBalance DataHeatBalFanSys DataHeatBalSurface DataHVACControllers DataHVACGlobals DataInterfaces DataIPShortCuts DataLoopNode DataMoistureBalance DataMoistureBalanceEMPD DataOutputs DataPhotovoltaics DataPlant DataPlantPipingSystems DataPrecisionGlobals DataReportingFlags DataRoomAirModel DataRootFinder DataRuntimeLanguage DataShadowingCombinations DataSizing DataStringGlobals DataSurfaceColors DataSurfaceLists DataSurfaces DataSystemVariables DataTimings DataUCSDSharedData DataVectorTypes DataViewFactorInformation DataWater DataWindowEquivalentLayer DataZoneControls DataZoneEnergyDemands DataZoneEquipment DaylightingDevices DaylightingManager DELIGHTMANAGERF DELIGHTMANAGERF DemandManager DesiccantDehumidifiers DirectAirManager DisplacementVentMgr DualDuct DXCoils DXFEarClipping EarthTube EconomicLifeCycleCost EconomicTariff EcoRoofManager ElectricBaseboardRadiator EMSManager EvaporativeCoolers EvaporativeFluidCoolers ExteriorEnergyUse ExternalInterface FanCoilUnits Fans FaultsManager FluidCoolers FluidProperties FuelCellElectricGenerator Furnaces General GeneratorDynamicsManager GeneratorFuelSupply GlobalNames GroundHeatExchangers HeatBalanceAirManager HeatBalanceHAMTManager HeatBalanceIntRadExchange HeatBalanceManager HeatBalanceMovableInsulation HeatBalanceSurfaceManager HeatBalFiniteDiffManager HeatingCoils HeatPumpWaterToWaterCOOLING HeatPumpWaterToWaterHEATING HeatPumpWaterToWaterSimple HeatRecovery HighTempRadiantSystem Humidifiers HVACControllers HVACCooledBeam HVACDuct HVACDXHeatPumpSystem HVACDXSystem HVACHXAssistedCoolingCoil HVACInterfaceManager HVACManager HVACMultiSpeedHeatPump HVACSingleDuctInduc HVACStandAloneERV HVACUnitaryBypassVAV HVACUnitarySystem HVACVariableRefrigerantFlow HWBaseboardRadiator ICEngineElectricGenerator IceThermalStorage InputProcessor InternalHeatGains ISO_C_FUNCTION_BINDING ISO_C_FUNCTION_BINDING LowTempRadiantSystem ManageElectricPower MatrixDataManager MicroCHPElectricGenerator MicroturbineElectricGenerator MixedAir MixerComponent MoistureBalanceEMPDManager MundtSimMgr NodeInputManager NonZoneEquipmentManager OutAirNodeManager OutdoorAirUnit OutputProcessor OutputReportPredefined OutputReportTabular OutsideEnergySources PackagedTerminalHeatPump PackagedThermalStorageCoil Photovoltaics PhotovoltaicThermalCollectors PipeHeatTransfer Pipes PlantCentralGSHP PlantChillers PlantComponentTemperatureSources PlantCondLoopOperation PlantHeatExchangerFluidToFluid PlantLoadProfile PlantLoopEquip PlantLoopSolver PlantManager PlantPipingSystemsManager PlantPressureSystem PlantUtilities PlantValves PollutionModule PondGroundHeatExchanger PoweredInductionUnits Psychrometrics Pumps PurchasedAirManager RefrigeratedCase ReportSizingManager ReturnAirPathManager RoomAirModelManager RoomAirModelUserTempPattern RootFinder RuntimeLanguageProcessor ScheduleManager SetPointManager SimAirServingZones SimulationManager SingleDuct SizingManager SolarCollectors SolarReflectionManager SolarShading SortAndStringUtilities SplitterComponent SQLiteProcedures SQLiteProcedures StandardRatings SteamBaseboardRadiator SteamCoils SurfaceGeometry SurfaceGroundHeatExchanger SystemAvailabilityManager SystemReports TARCOGArgs TARCOGCommon TARCOGDeflection TARCOGGasses90 TARCOGGassesParams TARCOGMain TARCOGOutput TARCOGParams TarcogShading ThermalChimney ThermalComfort ThermalEN673Calc ThermalISO15099Calc TranspiredCollector UFADManager UnitHeater UnitVentilator UserDefinedComponents VariableSpeedCoils vectors VentilatedSlab WaterCoils WaterManager WaterThermalTanks WatertoAirHeatPump WatertoAirHeatPumpSimple WaterUse WeatherManager WindowAC WindowComplexManager WindowEquivalentLayer WindowManager WindTurbine ZoneAirLoopEquipmentManager ZoneContaminantPredictorCorrector ZoneDehumidifier ZoneEquipmentManager ZonePlenum ZoneTempPredictorCorrector