SurfaceGeometry Module

module~~surfacegeometry~~UsesGraph module~surfacegeometry SurfaceGeometry module~datawindowequivalentlayer DataWindowEquivalentLayer module~datawindowequivalentlayer->module~surfacegeometry module~dataheatbalance DataHeatBalance module~datawindowequivalentlayer->module~dataheatbalance module~dataglobals DataGlobals module~dataglobals->module~surfacegeometry module~dataglobals->module~datawindowequivalentlayer module~dataenvironment DataEnvironment module~dataglobals->module~dataenvironment module~dataglobals->module~dataheatbalance module~datasurfaces DataSurfaces module~dataglobals->module~datasurfaces module~databsdfwindow DataBSDFWindow module~dataglobals->module~databsdfwindow module~datacomplexfenestration DataComplexFenestration module~dataglobals->module~datacomplexfenestration module~dataenvironment->module~surfacegeometry module~dataheatbalance->module~surfacegeometry module~datainterfaces DataInterfaces module~datainterfaces->module~surfacegeometry module~datasurfaces->module~surfacegeometry module~datasurfaces->module~dataheatbalance module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~surfacegeometry module~dataprecisionglobals->module~datawindowequivalentlayer module~dataprecisionglobals->module~dataglobals module~dataprecisionglobals->module~dataenvironment module~dataprecisionglobals->module~dataheatbalance module~dataprecisionglobals->module~datainterfaces module~dataprecisionglobals->module~datasurfaces module~dataprecisionglobals->module~databsdfwindow module~dataprecisionglobals->module~datacomplexfenestration module~datavectortypes DataVectorTypes module~dataprecisionglobals->module~datavectortypes module~databsdfwindow->module~dataheatbalance module~databsdfwindow->module~datasurfaces module~datacomplexfenestration->module~dataheatbalance module~datavectortypes->module~dataheatbalance module~datavectortypes->module~datasurfaces module~datavectortypes->module~databsdfwindow
Help

Used By

module~~surfacegeometry~~UsedByGraph module~surfacegeometry SurfaceGeometry proc~getbuildingdata GetBuildingData module~surfacegeometry->proc~getbuildingdata
Help


Variables

TypeVisibility AttributesNameInitial
character(len=*), private, parameter:: Blank =' '
character(len=*), private, parameter, DIMENSION(3):: BaseSurfCls =(/'WALL ', 'FLOOR', 'ROOF '/)
character(len=*), private, parameter, DIMENSION(6):: SubSurfCls =(/'WINDOW                 ', 'DOOR                   ', 'GLASSDOOR              ', 'SHADING                ', 'TUBULARDAYLIGHTDOME    ', 'TUBULARDAYLIGHTDIFFUSER'/)
integer, private, parameter, DIMENSION(3):: BaseSurfIDs =(/SurfaceClass_Wall, SurfaceClass_Floor, SurfaceClass_Roof/)
integer, private, parameter, DIMENSION(6):: SubSurfIDs =(/SurfaceClass_Window, SurfaceClass_Door, SurfaceClass_GlassDoor, SurfaceClass_Shading, SurfaceClass_TDD_Dome, SurfaceClass_TDD_Diffuser/)
integer, private, parameter:: UnenteredAdjacentZoneSurface =-998
integer, private, parameter:: UnreconciledZoneSurface =-999
character(len=*), private, parameter:: fmt3 ="(A,3(1x,f18.13))"
real(kind=r64), private :: CosBldgRelNorth =0.0d0
real(kind=r64), private :: SinBldgRelNorth =0.0d0
real(kind=r64), private :: CosBldgRotAppGonly =0.0d0
real(kind=r64), private :: SinBldgRotAppGonly =0.0d0
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: CosZoneRelNorth
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: SinZoneRelNorth
type(SurfaceData), private, ALLOCATABLE, DIMENSION(:):: SurfaceTmp
type(SurfaceData), private, ALLOCATABLE, DIMENSION(:):: SurfaceTmpSave
logical, private :: NoGroundTempObjWarning =.true.
logical, private :: NoFCGroundTempObjWarning =.true.
logical, private :: RectSurfRefWorldCoordSystem =.false.
integer, private :: Warning1Count =0
integer, private :: Warning2Count =0
integer, private :: Warning3Count =0

Subroutines

public subroutine SetupZoneGeometry(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine AllocateModuleArrays()

Arguments

None

private subroutine GetSurfaceData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetGeometryParameters(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetDetShdSurfaceData(ErrorsFound, SurfNum, TotDetachedFixed, TotDetachedBldg)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotDetachedFixed
integer, intent(in) :: TotDetachedBldg

private subroutine GetRectDetShdSurfaceData(ErrorsFound, SurfNum, TotRectDetachedFixed, TotRectDetachedBldg)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotRectDetachedFixed
integer, intent(in) :: TotRectDetachedBldg

private subroutine GetHTSurfaceData(ErrorsFound, SurfNum, TotHTSurfs, TotDetailedWalls, TotDetailedRoofs, TotDetailedFloors, BaseSurfCls, BaseSurfIDs, NeedToAddSurfaces)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotHTSurfs
integer, intent(in) :: TotDetailedWalls
integer, intent(in) :: TotDetailedRoofs
integer, intent(in) :: TotDetailedFloors
character(len=*), intent(in), DIMENSION(:):: BaseSurfCls
integer, intent(in), DIMENSION(:):: BaseSurfIDs
integer, intent(out) :: NeedToAddSurfaces

private subroutine GetRectSurfaces(ErrorsFound, SurfNum, TotRectExtWalls, TotRectIntWalls, TotRectIZWalls, TotRectUGWalls, TotRectRoofs, TotRectCeilings, TotRectIZCeilings, TotRectGCFloors, TotRectIntFloors, TotRectIZFloors, BaseSurfIDs, NeedToAddSurfaces)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotRectExtWalls
integer, intent(in) :: TotRectIntWalls
integer, intent(in) :: TotRectIZWalls
integer, intent(in) :: TotRectUGWalls
integer, intent(in) :: TotRectRoofs
integer, intent(in) :: TotRectCeilings
integer, intent(in) :: TotRectIZCeilings
integer, intent(in) :: TotRectGCFloors
integer, intent(in) :: TotRectIntFloors
integer, intent(in) :: TotRectIZFloors
integer, intent(in), DIMENSION(:):: BaseSurfIDs
integer, intent(inout) :: NeedToAddSurfaces

private subroutine MakeRectangularVertices(SurfNum, XCoord, YCoord, ZCoord, Length, Height, SurfWorldCoordSystem)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
real(kind=r64), intent(in) :: XCoord
real(kind=r64), intent(in) :: YCoord
real(kind=r64), intent(in) :: ZCoord
real(kind=r64), intent(in) :: Length
real(kind=r64), intent(in) :: Height
logical, intent(in) :: SurfWorldCoordSystem

private subroutine GetHTSubSurfaceData(ErrorsFound, SurfNum, TotHTSubs, SubSurfCls, SubSurfIDs, AddedSubSurfaces, NeedToAddSurfaces)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotHTSubs
character(len=*), intent(in), DIMENSION(:):: SubSurfCls
integer, intent(in), DIMENSION(:):: SubSurfIDs
integer, intent(inout) :: AddedSubSurfaces
integer, intent(out) :: NeedToAddSurfaces

private subroutine GetRectSubSurfaces(ErrorsFound, SurfNum, TotWindows, TotDoors, TotGlazedDoors, TotIZWindows, TotIZDoors, TotIZGlazedDoors, SubSurfIDs, AddedSubSurfaces, NeedToAddSubSurfaces)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotWindows
integer, intent(in) :: TotDoors
integer, intent(in) :: TotGlazedDoors
integer, intent(in) :: TotIZWindows
integer, intent(in) :: TotIZDoors
integer, intent(in) :: TotIZGlazedDoors
integer, intent(in), DIMENSION(:):: SubSurfIDs
integer, intent(inout) :: AddedSubSurfaces
integer, intent(inout) :: NeedToAddSubSurfaces

private subroutine CheckWindowShadingControlFrameDivider(cRoutineName, ErrorsFound, SurfNum, FrameField)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: cRoutineName
logical, intent(inout) :: ErrorsFound
integer, intent(in) :: SurfNum
integer, intent(in) :: FrameField

private subroutine CheckSubSurfaceMiscellaneous(cRoutineName, ErrorsFound, SurfNum, SubSurfaceName, SubSurfaceConstruction, AddedSubSurfaces)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: cRoutineName
logical, intent(inout) :: ErrorsFound
integer, intent(in) :: SurfNum
character(len=*), intent(in) :: SubSurfaceName
character(len=*), intent(in) :: SubSurfaceConstruction
integer, intent(inout) :: AddedSubSurfaces

private subroutine MakeRelativeRectangularVertices(BaseSurfNum, SurfNum, XCoord, ZCoord, Length, Height)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: BaseSurfNum
integer, intent(in) :: SurfNum
real(kind=r64), intent(in) :: XCoord
real(kind=r64), intent(in) :: ZCoord
real(kind=r64), intent(in) :: Length
real(kind=r64), intent(in) :: Height

private subroutine GetAttShdSurfaceData(ErrorsFound, SurfNum, TotShdSubs)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotShdSubs

private subroutine GetSimpleShdSurfaceData(ErrorsFound, SurfNum, TotOverhangs, TotOverhangsProjection, TotFins, TotFinsProjection)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotOverhangs
integer, intent(in) :: TotOverhangsProjection
integer, intent(in) :: TotFins
integer, intent(in) :: TotFinsProjection

private subroutine GetIntMassSurfaceData(ErrorsFound, SurfNum, TotIntMass)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: SurfNum
integer, intent(in) :: TotIntMass

private subroutine GetShadingSurfReflectanceData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetHTSurfExtVentedCavityData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetSurfaceHeatTransferAlgorithmOverrides(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetVertices(SurfNum, NSides, Vertices)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
integer, intent(in) :: NSides
real(kind=r64), intent(in), DIMENSION(1:NSides*3):: Vertices

private subroutine ReverseAndRecalculate(SurfNum, NSides, SurfAzimuth, SurfTilt)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
integer, intent(in) :: NSides
real(kind=r64), intent(inout) :: SurfAzimuth
real(kind=r64), intent(inout) :: SurfTilt

private subroutine MakeMirrorSurface(SurfNum)

Arguments

Type IntentOptional AttributesName
integer, intent(inout) :: SurfNum

private subroutine GetWindowShadingControlData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetStormWindowData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetWindowGapAirflowControlData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetOSCData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetOSCMData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine GetMovableInsulationData(ErrorsFound)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound

private subroutine CalculateZoneVolume(ErrorsFound, CeilingHeightEntered)

Arguments

Type IntentOptional AttributesName
logical, intent(inout) :: ErrorsFound
logical, intent(in), DIMENSION(:):: CeilingHeightEntered

private subroutine ProcessSurfaceVertices(ThisSurf, ErrorsFound)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ThisSurf
logical, intent(inout) :: ErrorsFound

private subroutine CalcCoordinateTransformation(SurfNum, CompCoordTranslVector)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
type(vector) :: CompCoordTranslVector

private subroutine CreateShadedWindowConstruction(SurfNum, WSCptr, ShDevNum)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
integer, intent(in) :: WSCptr
integer, intent(in) :: ShDevNum

private subroutine CreateStormWindowConstructions()

Arguments

None

private subroutine ModifyWindow(SurfNum, ErrorsFound, AddedSubSurfaces)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: AddedSubSurfaces

private subroutine AddWindow(SurfNum, ErrorsFound, AddedSubSurfaces)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
logical, intent(inout) :: ErrorsFound
integer, intent(inout) :: AddedSubSurfaces

private subroutine TransformVertsByAspect(SurfNum, NSides)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
integer, intent(in) :: NSides

private subroutine CalcSurfaceCentroid()

Arguments

None

private subroutine SetupShadeSurfacesForSolarCalcs()

Arguments

None

private subroutine CheckConvexity(SurfNum, NSides)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfNum
integer, intent(in) :: NSides


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