SolarCollectors Module

module~~solarcollectors~~UsesGraph module~solarcollectors SolarCollectors module~plantutilities PlantUtilities module~plantutilities->module~solarcollectors module~dataglobals DataGlobals module~dataglobals->module~solarcollectors module~datasurfaces DataSurfaces module~dataglobals->module~datasurfaces module~databsdfwindow DataBSDFWindow module~dataglobals->module~databsdfwindow module~datainterfaces DataInterfaces module~datainterfaces->module~solarcollectors module~datainterfaces->module~plantutilities module~datasurfaces->module~solarcollectors module~dataprecisionglobals DataPrecisionGlobals module~dataprecisionglobals->module~solarcollectors module~dataprecisionglobals->module~plantutilities module~dataprecisionglobals->module~dataglobals module~dataprecisionglobals->module~datainterfaces module~dataprecisionglobals->module~datasurfaces module~dataprecisionglobals->module~databsdfwindow module~datavectortypes DataVectorTypes module~dataprecisionglobals->module~datavectortypes module~databsdfwindow->module~datasurfaces module~datavectortypes->module~datasurfaces module~datavectortypes->module~databsdfwindow
Help

Used By

module~~solarcollectors~~UsedByGraph module~solarcollectors SolarCollectors proc~simplantequip SimPlantEquip module~solarcollectors->proc~simplantequip proc~sizetankfordemandside SizeTankForDemandSide module~solarcollectors->proc~sizetankfordemandside proc~sizetankforsupplyside SizeTankForSupplySide module~solarcollectors->proc~sizetankforsupplyside proc~sizestandalonewaterheater SizeStandAloneWaterHeater module~solarcollectors->proc~sizestandalonewaterheater proc~calcpassiveexteriorbafflegap CalcPassiveExteriorBaffleGap module~solarcollectors->proc~calcpassiveexteriorbafflegap
Help


Variables

TypeVisibility AttributesNameInitial
integer, private, parameter:: WATER =1
integer, private, parameter:: AIR =2
integer, private, parameter:: INLET =1
integer, private, parameter:: AVERAGE =2
integer, private, parameter:: OUTLET =3
integer, private, parameter:: ICSRectangularTank =1
type(ParametersData), private, ALLOCATABLE, DIMENSION(:):: Parameters
type(CollectorData), public, ALLOCATABLE, DIMENSION(:):: Collector
logical, private, ALLOCATABLE, DIMENSION(:):: CheckEquipName
integer, private :: NumOfParameters =0
integer, public :: NumOfCollectors =0
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: TransSysSkyDiff
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: TransSysGrnDiff
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: RefSysSkyDiff
real(kind=r64), private, ALLOCATABLE, DIMENSION(:):: RefSysGrnDiff

Derived Types

type, private :: ParametersData

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: Name =''
real(kind=r64), public :: Area =0.0d0
integer, public :: TestFluid =WATER
real(kind=r64), public :: TestMassFlowRate =0.0d0
integer, public :: TestType =INLET
real(kind=r64), public :: eff0
real(kind=r64), public :: eff1
real(kind=r64), public :: eff2
real(kind=r64), public :: iam1
real(kind=r64), public :: iam2
integer, public :: ICSType_Num =0
real(kind=r64), public :: Volume =0.0d0
real(kind=r64), public :: SideHeight =0.0d0
real(kind=r64), public :: ThermalMass =0.0d0
real(kind=r64), public :: ULossSide =0.0d0
real(kind=r64), public :: ULossBottom =0.0d0
real(kind=r64), public :: AspectRatio =0.0d0
integer, public :: NumOfCovers =0
real(kind=r64), public :: CoverSpacing =0.0d0
real(kind=r64), public :: RefractiveIndex(2) =0.0d0
real(kind=r64), public :: ExtCoefTimesThickness(2) =0.0d0
real(kind=r64), public :: EmissOfCover(2) =0.0d0
real(kind=r64), public :: EmissOfAbsPlate =0.0d0
real(kind=r64), public :: AbsorOfAbsPlate =0.0d0

type, public :: CollectorData

Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: Name =''
character(len=MaxNameLength), public :: BCType =' '
character(len=MaxNameLength), public :: BCName =' '
character(len=MaxNameLength), public :: OSCMName =' '
integer, public :: VentCavIndex =0
integer, public :: ICSType_Num =0
integer, public :: TypeNum
integer, public :: WLoopNum =0
integer, public :: WLoopSideNum =0
integer, public :: WLoopBranchNum =0
integer, public :: WLoopCompNum =0
logical, public :: Init =.TRUE.
logical, public :: InitSizing =.TRUE.
integer, public :: Parameters =0
integer, public :: Surface =0
integer, public :: InletNode =0
real(kind=r64), public :: InletTemp =0.0d0
integer, public :: OutletNode =0
real(kind=r64), public :: OutletTemp =0.0d0
real(kind=r64), public :: MassFlowRate =0.0d0
real(kind=r64), public :: MassFlowRateMax =0.0d0
real(kind=r64), public :: VolFlowRateMax =0.0d0
integer, public :: ErrIndex =0
integer, public :: IterErrIndex =0
real(kind=r64), public :: IncidentAngleModifier =0.0d0
real(kind=r64), public :: Efficiency =0.0d0
real(kind=r64), public :: Power =0.0d0
real(kind=r64), public :: HeatGain =0.0d0
real(kind=r64), public :: HeatLoss =0.0d0
real(kind=r64), public :: Energy =0.0d0
real(kind=r64), public :: HeatRate =0.0d0
real(kind=r64), public :: HeatEnergy =0.0d0
real(kind=r64), public :: StoredHeatRate =0.0d0
real(kind=r64), public :: StoredHeatEnergy =0.0d0
real(kind=r64), public :: HeatGainRate =0.0d0
real(kind=r64), public :: HeatGainEnergy =0.0d0
real(kind=r64), public :: HeatLossRate =0.0d0
real(kind=r64), public :: HeatLossEnergy =0.0d0
real(kind=r64), public :: SkinHeatLossRate =0.0d0
real(kind=r64), public :: CollHeatLossEnergy =0.0d0
real(kind=r64), public :: TauAlpha =0.0d0
real(kind=r64), public :: UTopLoss =0.0d0
real(kind=r64), public :: TempOfWater =0.0d0
real(kind=r64), public :: TempOfAbsPlate =0.0d0
real(kind=r64), public :: TempOfInnerCover =0.0d0
real(kind=r64), public :: TempOfOuterCover =0.0d0
real(kind=r64), public :: TauAlphaNormal =0.0d0
real(kind=r64), public :: TauAlphaSkyDiffuse =0.0d0
real(kind=r64), public :: TauAlphaGndDiffuse =0.0d0
real(kind=r64), public :: TauAlphaBeam =0.0d0
real(kind=r64), public :: CoversAbsSkyDiffuse(2) =0.0d0
real(kind=r64), public :: CoversAbsGndDiffuse(2) =0.0d0
real(kind=r64), public :: CoverAbs(2) =0.0d0
real(kind=r64), public :: TimeElapsed =0.0d0
real(kind=r64), public :: UbLoss =0.0d0
real(kind=r64), public :: UsLoss =0.0d0
real(kind=r64), public :: AreaRatio =0.0d0
real(kind=r64), public :: RefSkyDiffInnerCover =0.0d0
real(kind=r64), public :: RefGrnDiffInnerCover =0.0d0
real(kind=r64), public :: RefDiffInnerCover =0.0d0
real(kind=r64), public :: SavedTempOfWater =0.0d0
real(kind=r64), public :: SavedTempOfAbsPlate =0.0d0
real(kind=r64), public :: SavedTempOfInnerCover =0.0d0
real(kind=r64), public :: SavedTempOfOuterCover =0.0d0
real(kind=r64), public :: SavedTempCollectorOSCM =0.0d0
real(kind=r64), public :: Length =1.0d0
real(kind=r64), public :: TiltR2V =0.0d0
real(kind=r64), public :: Tilt =0.0d0
real(kind=r64), public :: CosTilt =0.0d0
real(kind=r64), public :: SinTilt =0.0d0
real(kind=r64), public :: SideArea =0.0d0
real(kind=r64), public :: Area =0.0d0
real(kind=r64), public :: Volume =0.0d0
logical, public :: OSCM_ON =.FALSE.
logical, public :: InitICS =.FALSE.

Functions

private function IAM(ParamNum, IncidentAngle)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ParamNum
real(kind=r64), intent(in) :: IncidentAngle

Return Value real(kind=r64)

private function CalcConvCoeffBetweenPlates(TempSurf1, TempSurf2, AirGap, CosTilt, SinTilt) result(hConvCoef)

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(in) :: TempSurf1
real(kind=r64), intent(in) :: TempSurf2
real(kind=r64), intent(in) :: AirGap
real(kind=r64), intent(in) :: CosTilt
real(kind=r64), intent(in) :: SinTilt

Return Value real(kind=r64)

private function CalcConvCoeffAbsPlateAndWater(TAbsorber, TWater, Lc, TiltR2V) result(hConvA2W)

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(in) :: TAbsorber
real(kind=r64), intent(in) :: TWater
real(kind=r64), intent(in) :: Lc
real(kind=r64), intent(in) :: TiltR2V

Return Value real(kind=r64)


Subroutines

public subroutine SimSolarCollector(EquipTypeNum, CompName, CompIndex, InitLoopEquip, FirstHVACIteration)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: EquipTypeNum
character(len=*), intent(in) :: CompName
integer, intent(inout) :: CompIndex
logical, intent(in) :: InitLoopEquip
logical, intent(in) :: FirstHVACIteration

private subroutine GetSolarCollectorInput()

Arguments

None

private subroutine InitSolarCollector(CollectorNum)

Arguments

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

private subroutine CalcSolarCollector(CollectorNum)

Arguments

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

private subroutine CalcICSSolarCollector(ColleNum)

Arguments

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

private subroutine ICSCollectorAnalyticalSoluton(ColleNum, SecInTimeStep, a1, a2, a3, b1, b2, b3, TempAbsPlateOld, TempWaterOld, TempAbsPlate, TempWater, AbsorberPlateHasMass)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ColleNum
real(kind=r64), intent(in) :: SecInTimeStep
real(kind=r64), intent(in) :: a1
real(kind=r64), intent(in) :: a2
real(kind=r64), intent(in) :: a3
real(kind=r64), intent(in) :: b1
real(kind=r64), intent(in) :: b2
real(kind=r64), intent(in) :: b3
real(kind=r64), intent(in) :: TempAbsPlateOld
real(kind=r64), intent(in) :: TempWaterOld
real(kind=r64), intent(out) :: TempAbsPlate
real(kind=r64), intent(out) :: TempWater
logical, intent(in) :: AbsorberPlateHasMass

private subroutine CalcTransAbsorProduct(ColleNum, IncidAngle)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ColleNum
real(kind=r64), intent(in) :: IncidAngle

private subroutine CalcTransRefAbsOfCover(ColleNum, IncidentAngle, TransSys, ReflSys, AbsCover1, AbsCover2, InOUTFlag, RefSysDiffuse)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ColleNum
real(kind=r64), intent(in) :: IncidentAngle
real(kind=r64), intent(out) :: TransSys
real(kind=r64), intent(out) :: ReflSys
real(kind=r64), intent(out) :: AbsCover1
real(kind=r64), intent(out) :: AbsCover2
logical, intent(in), optional :: InOUTFlag
real(kind=r64), intent(out), optional :: RefSysDiffuse

private subroutine CalcHeatTransCoeffAndCoverTemp(ColleNum)

Arguments

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

private subroutine UpdateSolarCollector(CollectorNum)

Arguments

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

private subroutine ReportSolarCollector(CollectorNum)

Arguments

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

private subroutine GetExtVentedCavityIndex(SurfacePtr, VentCavIndex)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: SurfacePtr
integer, intent(out) :: VentCavIndex

private subroutine GetExtVentedCavityTsColl(VentModNum, TsColl)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: VentModNum
real(kind=r64), intent(out) :: TsColl


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