ThermalComfort Module

module~~thermalcomfort~~UsesGraph module~thermalcomfort ThermalComfort module~dataroomairmodel DataRoomAirModel module~dataroomairmodel->module~thermalcomfort module~dataglobals DataGlobals module~dataglobals->module~thermalcomfort module~dataglobals->module~dataroomairmodel module~schedulemanager ScheduleManager module~dataglobals->module~schedulemanager module~dataenvironment DataEnvironment module~dataglobals->module~dataenvironment module~dataheatbalance DataHeatBalance module~dataglobals->module~dataheatbalance module~psychrometrics Psychrometrics module~dataglobals->module~psychrometrics module~datawindowequivalentlayer DataWindowEquivalentLayer module~dataglobals->module~datawindowequivalentlayer module~databsdfwindow DataBSDFWindow module~dataglobals->module~databsdfwindow module~datacomplexfenestration DataComplexFenestration module~dataglobals->module~datacomplexfenestration module~datasurfaces DataSurfaces module~dataglobals->module~datasurfaces module~schedulemanager->module~thermalcomfort module~dataenvironment->module~thermalcomfort module~dataenvironment->module~schedulemanager module~dataenvironment->module~psychrometrics module~dataheatbalfansys DataHeatBalFanSys module~dataheatbalfansys->module~thermalcomfort module~dataheatbalance->module~thermalcomfort module~psychrometrics->module~thermalcomfort module~datainterfaces DataInterfaces module~datainterfaces->module~thermalcomfort module~datainterfaces->module~schedulemanager module~datainterfaces->module~psychrometrics module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~thermalcomfort module~dataprecisionglobals->module~dataroomairmodel module~dataprecisionglobals->module~dataglobals module~dataprecisionglobals->module~schedulemanager module~dataprecisionglobals->module~dataenvironment module~dataprecisionglobals->module~dataheatbalfansys module~dataprecisionglobals->module~dataheatbalance module~dataprecisionglobals->module~psychrometrics module~dataprecisionglobals->module~datainterfaces module~dataprecisionglobals->module~datawindowequivalentlayer module~dataprecisionglobals->module~databsdfwindow module~dataprecisionglobals->module~datacomplexfenestration module~datavectortypes DataVectorTypes module~dataprecisionglobals->module~datavectortypes module~dataprecisionglobals->module~datasurfaces module~general General module~dataprecisionglobals->module~general module~datawindowequivalentlayer->module~dataheatbalance module~databsdfwindow->module~dataheatbalance module~databsdfwindow->module~datasurfaces module~datacomplexfenestration->module~dataheatbalance module~datavectortypes->module~dataheatbalance module~datavectortypes->module~databsdfwindow module~datavectortypes->module~datasurfaces module~datasurfaces->module~dataheatbalance module~general->module~psychrometrics
Help

Used By

module~~thermalcomfort~~UsedByGraph module~thermalcomfort ThermalComfort proc~airflownetworkventingcontrol AirflowNetworkVentingControl module~thermalcomfort->proc~airflownetworkventingcontrol proc~calczoneaircomfortsetpoints CalcZoneAirComfortSetpoints module~thermalcomfort->proc~calczoneaircomfortsetpoints proc~getairflownetworkinput GetAirflowNetworkInput module~thermalcomfort->proc~getairflownetworkinput proc~getnextenvironment GetNextEnvironment module~thermalcomfort->proc~getnextenvironment proc~pmvresidual PMVResidual module~thermalcomfort->proc~pmvresidual proc~managesurfaceheatbalance ManageSurfaceHeatBalance module~thermalcomfort->proc~managesurfaceheatbalance proc~getcomfortsetpoints GetComfortSetpoints module~thermalcomfort->proc~getcomfortsetpoints
Help


Variables

TypeVisibility AttributesNameInitial
real(kind=r64), private, parameter:: TAbsConv =KelvinConv
real(kind=r64), private, parameter:: ActLevelConv =58.2d0
real(kind=r64), private, parameter:: BodySurfArea =1.8d0
real(kind=r64), private, parameter:: RadSurfEff =0.72d0
real(kind=r64), private, parameter:: StefanBoltz =5.67d-8
type(ThermalComfortInASH55Type), private, DIMENSION(:), ALLOCATABLE:: ThermalComfortInASH55
type(ThermalComfortSetpointType), private, DIMENSION(:), ALLOCATABLE:: ThermalComfortSetpoint
type(ThermalComfortDataType), public, DIMENSION(:), ALLOCATABLE:: ThermalComfortData
type(AngleFactorData), private, DIMENSION(:), ALLOCATABLE:: AngleFactorList
real(kind=r64), private :: AbsAirTemp =0.0d0
real(kind=r64), private :: AbsCloSurfTemp =0.0d0
real(kind=r64), private :: AbsRadTemp =0.0d0
real(kind=r64), private :: AcclPattern =0.0d0
real(kind=r64), private :: ActLevel =0.0d0
real(kind=r64), private :: AirVel =0.0d0
real(kind=r64), private :: AirTemp =0.0d0
real(kind=r64), private :: CloBodyRat =0.0d0
real(kind=r64), private :: CloInsul =0.0d0
real(kind=r64), private :: CloPermeatEff =0.0d0
real(kind=r64), private :: CloSurfTemp =0.0d0
real(kind=r64), private :: CloThermEff =0.0d0
real(kind=r64), private :: CloUnit =0.0d0
real(kind=r64), private :: ConvHeatLoss =0.0d0
real(kind=r64), private :: CoreTempChange =0.0d0
real(kind=r64), private :: CoreTemp =0.0d0
real(kind=r64), private :: CoreTempNeut =0.0d0
real(kind=r64), private :: CoreThermCap =0.0d0
real(kind=r64), private :: DryHeatLoss =0.0d0
real(kind=r64), private :: DryRespHeatLoss =0.0d0
real(kind=r64), private :: EvapHeatLoss =0.0d0
real(kind=r64), private :: EvapHeatLossDiff =0.0d0
real(kind=r64), private :: EvapHeatLossMax =0.0d0
real(kind=r64), private :: EvapHeatLossRegComf =0.0d0
real(kind=r64), private :: EvapHeatLossRegSweat =0.0d0
real(kind=r64), private :: EvapHeatLossSweat =0.0d0
real(kind=r64), private :: EvapHeatLossSweatPrev =0.0d0
real(kind=r64), private :: H =0.0d0
real(kind=r64), private :: Hc =0.0d0
real(kind=r64), private :: HcFor =0.0d0
real(kind=r64), private :: HcNat =0.0d0
real(kind=r64), private :: HeatFlow =0.0d0
real(kind=r64), private :: Hr =0.0d0
real(kind=r64), private :: IntHeatProd =0.0d0
integer, private :: IterNum =0
real(kind=r64), private :: LatRespHeatLoss =0.0d0
integer, private :: MaxZoneNum =0
integer, private :: MRTCalcType =0
real(kind=r64), private :: OpTemp =0.0d0
integer, private :: PeopleNum =0
real(kind=r64), private :: RadHeatLoss =0.0d0
real(kind=r64), private :: RadTemp =0.0d0
real(kind=r64), private :: RelHum =0.0d0
real(kind=r64), private :: RespHeatLoss =0.0d0
real(kind=r64), private :: SatSkinVapPress =0.0d0
real(kind=r64), private :: ShivResponse =0.0d0
real(kind=r64), private :: SkinComfTemp =0.0d0
real(kind=r64), private :: SkinComfVPress =0.0d0
real(kind=r64), private :: SkinTemp =0.0d0
real(kind=r64), private :: SkinTempChange =0.0d0
real(kind=r64), private :: SkinTempNeut =0.0d0
real(kind=r64), private :: SkinThermCap =0.0d0
real(kind=r64), private :: SkinWetDiff =0.0d0
real(kind=r64), private :: SkinWetSweat =0.0d0
real(kind=r64), private :: SkinWetTot =0.0d0
real(kind=r64), private :: SkinVapPress =0.0d0
real(kind=r64), private :: SurfaceTemp =0.0d0
real(kind=r64), private :: ThermCndct =0.0d0
real(kind=r64), private :: ThermSensTransCoef =0.0d0
real(kind=r64), private :: Time =0.0d0
real(kind=r64), private :: TimeChange =0.0d0
real(kind=r64), private :: VapPress =0.0d0
real(kind=r64), private :: VasoconstrictFac =0.0d0
real(kind=r64), private :: VasodilationFac =0.0d0
real(kind=r64), private :: WorkEff =0.0d0
integer, private :: ZoneNum =0
real(kind=r64), private :: TemporarySixAMTemperature =0.0d0
real(kind=r64), private :: AnyZoneTimeNotSimpleASH55Summer =0.0d0
real(kind=r64), private :: AnyZoneTimeNotSimpleASH55Winter =0.0d0
real(kind=r64), private :: AnyZoneTimeNotSimpleASH55Either =0.0d0
real(kind=r64), private :: AnyZoneNotMetHeating =0.0d0
real(kind=r64), private :: AnyZoneNotMetCooling =0.0d0
real(kind=r64), private :: AnyZoneNotMetHeatingOccupied =0.0d0
real(kind=r64), private :: AnyZoneNotMetCoolingOccupied =0.0d0
real(kind=r64), private :: AnyZoneNotMetOccupied =0.0d0
real(kind=r64), private :: TotalAnyZoneTimeNotSimpleASH55Summer =0.0d0
real(kind=r64), private :: TotalAnyZoneTimeNotSimpleASH55Winter =0.0d0
real(kind=r64), private :: TotalAnyZoneTimeNotSimpleASH55Either =0.0d0
real(kind=r64), private :: TotalAnyZoneNotMetHeating =0.0d0
real(kind=r64), private :: TotalAnyZoneNotMetCooling =0.0d0
real(kind=r64), private :: TotalAnyZoneNotMetHeatingOccupied =0.0d0
real(kind=r64), private :: TotalAnyZoneNotMetCoolingOccupied =0.0d0
real(kind=r64), private :: TotalAnyZoneNotMetOccupied =0.0d0
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: ZoneOccHrs

Derived Types

type, public :: ThermalComfortDataType

Components

TypeVisibility AttributesNameInitial
real(kind=r64), public :: FangerPMV =0.0d0
real(kind=r64), public :: FangerPPD =0.0d0
real(kind=r64), public :: CloSurfTemp =0.0d0
real(kind=r64), public :: PiercePMVET =0.0d0
real(kind=r64), public :: PiercePMVSET =0.0d0
real(kind=r64), public :: PierceDISC =0.0d0
real(kind=r64), public :: PierceTSENS =0.0d0
real(kind=r64), public :: KsuTSV =0.0d0
real(kind=r64), public :: ThermalComfortMRT =0.0d0
real(kind=r64), public :: ThermalComfortOpTemp =0.0d0
real(kind=r64), public :: ClothingValue =0.0d0
integer, public :: ThermalComfortAdaptiveASH5590 =0
integer, public :: ThermalComfortAdaptiveASH5580 =0
integer, public :: ThermalComfortAdaptiveCEN15251CatI =0
integer, public :: ThermalComfortAdaptiveCEN15251CatII =0
integer, public :: ThermalComfortAdaptiveCEN15251CatIII =0
real(kind=r64), public :: TComfASH55 =0.0d0
real(kind=r64), public :: TComfCEN15251 =0.0d0
real(kind=r64), public :: ASHRAE55RunningMeanOutdoorTemp =0.0d0
real(kind=r64), public :: CEN15251RunningMeanOutdoorTemp =0.0d0

type, private :: ThermalComfortInASH55Type

Components

TypeVisibility AttributesNameInitial
real(kind=r64), public :: timeNotSummer =0.0d0
real(kind=r64), public :: timeNotWinter =0.0d0
real(kind=r64), public :: timeNotEither =0.0d0
real(kind=r64), public :: totalTimeNotSummer =0.0d0
real(kind=r64), public :: totalTimeNotWinter =0.0d0
real(kind=r64), public :: totalTimeNotEither =0.0d0
logical, public :: ZoneIsOccupied =.false.
integer, public :: warningIndex =0
integer, public :: warningIndex2 =0
logical, public :: Enable55Warning =.false.

type, private :: ThermalComfortSetpointType

Components

TypeVisibility AttributesNameInitial
real(kind=r64), public :: notMetHeating =0.0d0
real(kind=r64), public :: notMetCooling =0.0d0
real(kind=r64), public :: notMetHeatingOccupied =0.0d0
real(kind=r64), public :: notMetCoolingOccupied =0.0d0
real(kind=r64), public :: totalNotMetHeating =0.0d0
real(kind=r64), public :: totalNotMetCooling =0.0d0
real(kind=r64), public :: totalNotMetHeatingOccupied =0.0d0
real(kind=r64), public :: totalNotMetCoolingOccupied =0.0d0

type, private :: AngleFactorData

Components

TypeVisibility AttributesNameInitial
real(kind=r64), public, ALLOCATABLE, DIMENSION(:):: AngleFactor
character(len=MaxNameLength), public :: Name =' '
character(len=MaxNameLength), public, ALLOCATABLE, DIMENSION(:):: SurfaceName
integer, public, ALLOCATABLE, DIMENSION(:):: SurfacePtr
integer, public :: TotAngleFacSurfaces =0
character(len=MaxNameLength), public :: ZoneName =' '
integer, public :: ZonePtr =0

Functions

private function CalcAngleFactorMRT(AngleFacNum)

Arguments

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

Return Value real(kind=r64)

private function CalcSatVapPressFromTemp(Temp)

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(in) :: Temp

Return Value real(kind=r64)

private function CalcRadTemp(PeopleListNum)

Arguments

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

Return Value real(kind=r64)


Subroutines

public subroutine ManageThermalComfort(InitializeOnly)

Arguments

Type IntentOptional AttributesName
logical, intent(in) :: InitializeOnly

private subroutine InitThermalComfort()

Arguments

None

public subroutine CalcThermalComfortFanger(PNum, Tset, PMVResult)

Arguments

Type IntentOptional AttributesName
integer, intent(in), optional :: PNum
real(kind=r64), intent(in), optional :: Tset
real(kind=r64), intent(out), optional :: PMVResult

private subroutine CalcThermalComfortPierce()

Arguments

None

private subroutine CalcThermalComfortKSU()

Arguments

None

private subroutine DERIV(TempIndiceNum, Temp, TempChange)

Arguments

Type IntentOptional AttributesName
integer :: TempIndiceNum
real(kind=r64), DIMENSION(2):: Temp
real(kind=r64), DIMENSION(2):: TempChange

private subroutine RKG(NEQ, H, X, Y, DY, C)

Arguments

Type IntentOptional AttributesName
integer :: NEQ
real(kind=r64) :: H
real(kind=r64) :: X
real(kind=r64), DIMENSION(NEQ):: Y
real(kind=r64), DIMENSION(NEQ):: DY
real(kind=r64), DIMENSION(NEQ):: C

private subroutine GetAngleFactorList()

Arguments

None

private subroutine CalcThermalComfortSimpleASH55()

Arguments

None

private subroutine CalcIfSetpointMet()

Arguments

None

public subroutine CalcThermalComfortAdaptiveASH55(initiate, wthrsim, avgdrybulb)

Arguments

Type IntentOptional AttributesName
logical, intent(in) :: initiate
logical, intent(in), optional :: wthrsim
real(kind=r64), intent(in), optional :: avgdrybulb

public subroutine CalcThermalComfortAdaptiveCEN15251(initiate, wthrsim, avgdrybulb)

Arguments

Type IntentOptional AttributesName
logical, intent(in) :: initiate
logical, intent(in), optional :: wthrsim
real(kind=r64), intent(in), optional :: avgdrybulb

private subroutine DynamicClothingModel()

Arguments

None


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