Buildings.BoundaryConditions.SolarIrradiation

Package with models to compute solar irradition

Information

This package contains models that compute the solar irradiation with different sky models.

Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).

Package Content

Name Description
Buildings.BoundaryConditions.SolarIrradiation.DiffuseIsotropic DiffuseIsotropic Diffuse solar irradiation on a tilted surface with an isotropic sky model
Buildings.BoundaryConditions.SolarIrradiation.DiffusePerez DiffusePerez Hemispherical diffuse irradiation on a tilted surface using Perez's anisotropic sky model
Buildings.BoundaryConditions.SolarIrradiation.DirectTiltedSurface DirectTiltedSurface Direct solar irradiation on a tilted surface
Buildings.BoundaryConditions.SolarIrradiation.Examples Examples Collection of models that illustrate model use and test models
Buildings.BoundaryConditions.SolarIrradiation.BaseClasses BaseClasses Package with base classes for Buildings.BoundaryConditions.SolarIrradiation

Buildings.BoundaryConditions.SolarIrradiation.DiffuseIsotropic Buildings.BoundaryConditions.SolarIrradiation.DiffuseIsotropic

Diffuse solar irradiation on a tilted surface with an isotropic sky model

Buildings.BoundaryConditions.SolarIrradiation.DiffuseIsotropic

Information

This component computes the hemispherical diffuse irradiation on a tilted surface using an isotropic model. The irradiation is a sum composed of diffuse solar irradiation and radiation reflected by the ground. For a definition of the parameters, see the User's Guide.

References

P. Ineichen, R. Perez and R. Seals (1987). The Importance of Correct Albedo Determination for Adequately Modeling Energy Received by Tilted Surface, Solar Energy, 39(4): 301-305.

Extends from Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation (Partial model that is used to compute the direct and diffuse solar irradiation).

Parameters

TypeNameDefaultDescription
Angletil Surface tilt [rad]
Realrho0.2Ground reflectance [1]
BooleanoutSkyConfalseOutput contribution of diffuse irradiation from sky
BooleanoutGroConfalseOutput contribution of diffuse irradiation from ground

Connectors

TypeNameDescription
output RealOutputHRadiation per unit area [W/m2]
BusweaBusBus with weather data
output RealOutputHSkyDifTilDiffuse solar irradiation on a tilted surface from the sky
output RealOutputHGroDifTilDiffuse solar irradiation on a tilted surface from the ground

Modelica definition

block DiffuseIsotropic "Diffuse solar irradiation on a tilted surface with an isotropic sky model" extends Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation; parameter Real rho(min=0, max=1, final unit="1")=0.2 "Ground reflectance"; parameter Boolean outSkyCon=false "Output contribution of diffuse irradiation from sky"; parameter Boolean outGroCon=false "Output contribution of diffuse irradiation from ground"; Modelica.Blocks.Math.Add add "Block to add radiation"; Modelica.Blocks.Interfaces.RealOutput HSkyDifTil if outSkyCon "Diffuse solar irradiation on a tilted surface from the sky"; Modelica.Blocks.Interfaces.RealOutput HGroDifTil if outGroCon "Diffuse solar irradiation on a tilted surface from the ground"; protected Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.DiffuseIsotropic HDifTilIso(til=til, rho=rho) "Diffuse isotropic irradiation on tilted surface"; equation connect(weaBus.HGloHor, HDifTilIso.HGloHor); connect(weaBus.HDifHor, HDifTilIso.HDifHor); connect(HDifTilIso.HSkyDifTil, add.u1); connect(HDifTilIso.HGroDifTil, add.u2); connect(add.y, H); connect(HDifTilIso.HSkyDifTil, HSkyDifTil); connect(HDifTilIso.HGroDifTil, HGroDifTil); end DiffuseIsotropic;

Buildings.BoundaryConditions.SolarIrradiation.DiffusePerez Buildings.BoundaryConditions.SolarIrradiation.DiffusePerez

Hemispherical diffuse irradiation on a tilted surface using Perez's anisotropic sky model

Buildings.BoundaryConditions.SolarIrradiation.DiffusePerez

Information

This component computes the hemispherical diffuse irradiation on a tilted surface using an anisotropic sky model proposed by Perez. For a definition of the parameters, see the User's Guide.

References

Extends from Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation (Partial model that is used to compute the direct and diffuse solar irradiation).

Parameters

TypeNameDefaultDescription
Angletil Surface tilt [rad]
Realrho0.2Ground reflectance [1]
Anglelat Latitude [rad]
Angleazi Surface azimuth [rad]
BooleanoutSkyConfalseOutput contribution of diffuse irradiation from sky
BooleanoutGroConfalseOutput contribution of diffuse irradiation from ground

Connectors

TypeNameDescription
output RealOutputHRadiation per unit area [W/m2]
BusweaBusBus with weather data
output RealOutputHSkyDifTilHemispherical diffuse solar irradiation on a tilted surface from the sky
output RealOutputHGroDifTilHemispherical diffuse solar irradiation on a tilted surface from the ground

Modelica definition

block DiffusePerez "Hemispherical diffuse irradiation on a tilted surface using Perez's anisotropic sky model" extends Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation; parameter Real rho(min=0, max=1, final unit="1")=0.2 "Ground reflectance"; parameter Modelica.SIunits.Angle lat "Latitude"; parameter Modelica.SIunits.Angle azi "Surface azimuth"; parameter Boolean outSkyCon=false "Output contribution of diffuse irradiation from sky"; parameter Boolean outGroCon=false "Output contribution of diffuse irradiation from ground"; Modelica.Blocks.Math.Add add "Block to add radiations"; Modelica.Blocks.Interfaces.RealOutput HSkyDifTil if outSkyCon "Hemispherical diffuse solar irradiation on a tilted surface from the sky"; Modelica.Blocks.Interfaces.RealOutput HGroDifTil if outGroCon "Hemispherical diffuse solar irradiation on a tilted surface from the ground"; protected BaseClasses.DiffusePerez HDifTil( final til=til, final rho=rho) "Diffuse irradiation on tilted surface"; BaseClasses.SkyClearness skyCle "Sky clearness"; BaseClasses.BrighteningCoefficient briCoe "Brightening coefficient"; BaseClasses.RelativeAirMass relAirMas "Relative air mass"; BaseClasses.SkyBrightness skyBri "Sky brightness"; SolarGeometry.IncidenceAngle incAng( final lat=lat, final azi=azi, final til=til) "Incidence angle"; equation connect(relAirMas.relAirMas, skyBri.relAirMas); connect(skyBri.skyBri, briCoe.skyBri); connect(skyCle.skyCle, briCoe.skyCle); connect(incAng.y, HDifTil.incAng); connect(weaBus.solZen, skyCle.zen); connect(weaBus.solZen, relAirMas.zen); connect(weaBus.solZen, briCoe.zen); connect(weaBus.HGloHor, skyCle.HGloHor); connect(weaBus.HDifHor, skyCle.HDifHor); connect(weaBus.HDifHor, skyBri.HDifHor); connect(weaBus.HGloHor, HDifTil.HGloHor); connect(weaBus.HDifHor, HDifTil.HDifHor); connect(briCoe.F2, HDifTil.briCof2); connect(briCoe.F1, HDifTil.briCof1); connect(weaBus, incAng.weaBus); connect(weaBus.solZen, HDifTil.zen); connect(HDifTil.HSkyDifTil, add.u1); connect(HDifTil.HGroDifTil, add.u2); connect(add.y, H); connect(HDifTil.HSkyDifTil, HSkyDifTil); connect(HDifTil.HGroDifTil, HGroDifTil); end DiffusePerez;

Buildings.BoundaryConditions.SolarIrradiation.DirectTiltedSurface Buildings.BoundaryConditions.SolarIrradiation.DirectTiltedSurface

Direct solar irradiation on a tilted surface

Buildings.BoundaryConditions.SolarIrradiation.DirectTiltedSurface

Information

This component computes the direct solar irradiation on a tilted surface. For a definition of the parameters, see the User's Guide.

Extends from Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation (Partial model that is used to compute the direct and diffuse solar irradiation).

Parameters

TypeNameDefaultDescription
Angletil Surface tilt [rad]
Anglelat Latitude [rad]
Angleazi Surface azimuth [rad]

Connectors

TypeNameDescription
output RealOutputHRadiation per unit area [W/m2]
BusweaBusBus with weather data
output RealOutputincIncidence angle [rad]

Modelica definition

block DirectTiltedSurface "Direct solar irradiation on a tilted surface" extends Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation; parameter Modelica.SIunits.Angle lat "Latitude"; parameter Modelica.SIunits.Angle azi "Surface azimuth"; Modelica.Blocks.Interfaces.RealOutput inc( final quantity="Angle", final unit="rad", displayUnit="deg") "Incidence angle"; protected SolarGeometry.IncidenceAngle incAng( final azi=azi, final til=til, final lat=lat) "Incidence angle"; Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.DirectTiltedSurface HDirTil "Direct irradition on tilted surface"; equation connect(incAng.y, HDirTil.incAng); connect(weaBus.HDirNor, HDirTil.HDirNor); connect(incAng.y, inc); connect(HDirTil.HDirTil, H); connect(weaBus, incAng.weaBus); end DirectTiltedSurface;