Name | Description |
---|---|
DiffuseIsotropic | Diffuse solar irradiation on a tilted surface with an isotropic sky model |
DiffusePerez | Hemispherical diffuse irradiation on a tilted surface using Perez's anisotropic sky model |
DirectTiltedSurface | Direct solar irradiation on a tilted surface |
Examples | Collection of models that illustrate model use and test models |
BaseClasses | Package with base classes for Buildings.BoundaryConditions.SolarIrradiation |
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.
Extends from Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation (Partial model that is used to compute the direct and diffuse solar irradiation).
Type | Name | Default | Description |
---|---|---|---|
Angle | til | Surface tilt [rad] | |
Real | rho | 0.2 | Ground reflectance |
Boolean | outSkyCon | false | Output contribution of diffuse irradiation from sky |
Boolean | outGroCon | false | Output contribution of diffuse irradiation from ground |
Type | Name | Description |
---|---|---|
output RealOutput | H | Radiation per unit area [W/m2] |
Bus | weaBus | Bus with weather data |
output RealOutput | HSkyDifTil | Diffuse solar irradiation on a tilted surfce from the sky |
output RealOutput | HGroDifTil | Diffuse solar irradiation on a tilted surfce from the ground |
block DiffuseIsotropic "Diffuse solar irradiation on a tilted surface with an isotropic sky model" extends Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation; public parameter Real rho=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; Modelica.Blocks.Interfaces.RealOutput HSkyDifTil if (outSkyCon) "Diffuse solar irradiation on a tilted surfce from the sky"; Modelica.Blocks.Interfaces.RealOutput HGroDifTil if (outGroCon) "Diffuse solar irradiation on a tilted surfce from the ground"; protected Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.DiffuseIsotropic HDifTilIso(til=til, rho=rho); equationconnect(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;
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.
Extends from Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation (Partial model that is used to compute the direct and diffuse solar irradiation).
Type | Name | Default | Description |
---|---|---|---|
Angle | til | Surface tilt [rad] | |
Real | rho | 0.2 | Ground reflectance |
Angle | lat | Latitude [rad] | |
Angle | azi | Surface azimuth [rad] | |
Boolean | outSkyCon | false | Output contribution of diffuse irradiation from sky |
Boolean | outGroCon | false | Output contribution of diffuse irradiation from ground |
Type | Name | Description |
---|---|---|
output RealOutput | H | Radiation per unit area [W/m2] |
Bus | weaBus | Bus with weather data |
output RealOutput | HSkyDifTil | Hemispherical diffuse solar irradiation on a tilted surfce from the sky |
output RealOutput | HGroDifTil | Hemispherical diffuse solar irradiation on a tilted surfce from the ground |
block DiffusePerez "Hemispherical diffuse irradiation on a tilted surface using Perez's anisotropic sky model" extends Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.PartialSolarIrradiation; parameter Real rho=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; Modelica.Blocks.Interfaces.RealOutput HSkyDifTil if (outSkyCon) "Hemispherical diffuse solar irradiation on a tilted surfce from the sky"; Modelica.Blocks.Interfaces.RealOutput HGroDifTil if (outGroCon) "Hemispherical diffuse solar irradiation on a tilted surfce from the ground"; protected BaseClasses.DiffusePerez HDifTil(final til=til, final rho=rho); BaseClasses.SkyClearness skyCle; BaseClasses.BrighteningCoefficient briCoe; BaseClasses.RelativeAirMass relAirMas; BaseClasses.SkyBrightness skyBri; SolarGeometry.IncidenceAngle incAng( lat=lat, azi=azi, til=til); equationconnect(relAirMas.relAirMas, skyBri.relAirMas); connect(skyBri.skyBri, briCoe.skyBri); connect(skyCle.skyCle, briCoe.skyCle); connect(incAng.y, HDifTil.incAng); connect(weaBus.sol.zen, skyCle.zen); connect(weaBus.sol.zen, relAirMas.zen); connect(weaBus.sol.zen, 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.sol.zen, 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;
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).
Type | Name | Default | Description |
---|---|---|---|
Angle | til | Surface tilt [rad] | |
Angle | lat | Latitude [rad] | |
Angle | azi | Surface azimuth [rad] |
Type | Name | Description |
---|---|---|
output RealOutput | H | Radiation per unit area [W/m2] |
Bus | weaBus | Bus with weather data |
output RealOutput | inc | Incidence angle [rad] |
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";Buildings.BoundaryConditions.WeatherData.Bus weaBus; 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); Buildings.BoundaryConditions.SolarIrradiation.BaseClasses.DirectTiltedSurface HDirTil; equationconnect(incAng.y, HDirTil.incAng); connect(weaBus.HDirNor, HDirTil.HDirNor); connect(incAng.y, inc); connect(HDirTil.HDirTil, H); connect(weaBus, incAng.weaBus); end DirectTiltedSurface;