Skip to content

System optics

Each simulation contains a single definition of a unit-system. This defines the 3D scene which is repeated ad infinitum within the field. It thus represents a central group of modules within a large field. The unit-system is comprised of system structure, PV modules and the ground. Some parts of the scene may rotate whilst others remain fixed.

The optics of the unit-system are solved using the concepts presented in other parts of this guide. On the system level there are some simplifications1 which are outlined in the sections below. These apply to the system structure but not to the PV modules within the scene2.

Within the unit-system is a group of modules arranged according to the system type. All modules in the group have an identical optical model.3

There are three fundamental types of system that can be defined:

  • Fixed - modules have a single tilt angle and azimuth; the structure is comprised of posts, rafters, and purlins.

  • Single axis tracker - modules will rotate about an axis point to follow the sun; the structure includes posts, rails, and torque tubes.

  • Waves - modules have a single tilt angle and are arranged in pairs that face each other; the structure includes ballast blocks, rails, and joints.

Each configuration has its own set of system components and details regarding the layout. These are represented by basic 3D geometric shapes such as cuboids, spheres and cylinders.

The optical interfaces of the system components may be defined as either (1) Fresnel or (2) basic reflectors. No thin films can be defined on the surface of system components. Irrespective of the surface type, any light not reflected is absorbed. Additional Lambertian scattering with a fixed scattering fraction can be added (but not Phong scattering or wavelength dependent scattering fractions). A library of the reflectance under air of common materials is included in the user-interface.

Each optical component has the option to be set to ‘Transparent’. In this case the structure is still included in any dimension calculations and will impact the position of the module as normal. During ray tracing it will be treated as completely transparent. This allows the shading impact of individual, or groups of structural components to be quantified.

The albedo is incorporated in the interface at the bottom of the unit-system. The ground is assumed to be flat and thus has a 0° slope. The optical interface for the ground must be a basic reflector and may also include additional Lambertian scattering. The provided library of default materials covers a wider variety of types than for the system structure (e.g., it includes grass, snow, dirt, soil, rocks etc). An additional scaling factor is provided which allows the wavelength dependent values to all be modified by the same scalar factor.

Values are provided for the integrated albedo as if measured under ideal conditions4 with either a Si photodetector or a thermopile detector. The equations used for this are:

AlbedoSi detector=λ=3001200Rground(λ)φAM1.5g(λ)λ=3001200φAM1.5g(λ)Albedo_{Si \ detector} = \frac{\sum_{\lambda=300}^{1200} R_{ground}(\lambda) \cdot \varphi_{AM1.5g}(\lambda)}{\sum_{\lambda=300}^{1200} \varphi_{AM1.5g}(\lambda)}AlbedoThermopile detector=λ=3004000Rground(λ)IAM1.5g(λ)λ=3004000IAM1.5g(λ)Albedo_{Thermopile \ detector} = \frac{\sum_{\lambda=300}^{4000} R_{ground}(\lambda) \cdot I_{AM1.5g}(\lambda)}{\sum_{\lambda=300}^{4000} I_{AM1.5g}(\lambda)}

Where φ is the photon flux in cm-2s-1 and I is the power density in W/cm2 of the AM1.5g spectrum. Note that Rground includes the scaling factor applied at each wavelength.

Soiling loss is applied post-ray tracing as a derating factor of either cell current or cell power (which thus flows through to the module current and power). The loss factors are entered into the program as an input. Each value is defined on a particular day of the year, with linear interpolation used to calculate the loss on any days between input dates.

The soiling loss makes the following assumptions:

  • Soiling in spatially uniform across the module

  • All panels in the unit-system have the exact same level of soiling

  • The absorption has no wavelength dependence

  • Energy absorbed in the soiled layer does contribute to module temperature (i.e. the calculation of Ginc used in the module temperature calculation, described in thermal model, is not changed by soiling)

  • No additional optical effects are introduced by soiling, for example scattering of reflected light.

The module tilt for fixed systems is simply defined by an angle from the horizontal and an azimuth that defines the rotation from true North. For waves, each panel is mirrored by a second with the same azimuth but a negative tilt (which results in a panel facing an azimuth that is 180° offset from its partner).

For the case of single-axis trackers the tilt is calculated at each time step based on the position of the sun. First the ideal tilt is determined that minimises the incident angle of direct light on the front side of the module:

βd=tan1{tan(θs)cos(φsφm)}\beta_d = \tan^{-1} \left\{ \tan(\theta_s) \cdot \cos(\varphi_s - \varphi_m) \right\}

Where θs is the solar zenith, φs is the solar azimuth and φm is the module tilt azimuth.

Optionally this value may be limited by a tilt limit (βm). If the tilt calculated above exceeds the limit in either direction, then it is set to the limit.

A backtracking strategy may also be employed to prevent row-to-row shading early and late in the day. In this case there are two options available:

  • Ideal - the maximum tilt is set such that shadows from neighbouring rows just miss the module (i.e., in the equation below: P=row pitch, L= tip-to-tip length of modules in group),

  • Custom P on L ratio – the user may define the ratio of the pitch (P) to length (L) which is used to determine the backtracking. This value is the inverse of the GCR.

The equation used for both calculations, which must be solved with numerical methods, is as follows:

cos(βb)=PLsin(βb)cos(φsφm)tan(θs)\cos(\beta_b) = \frac{P}{L} - \sin(\beta_b) \cos(\varphi_s - \varphi_m) \tan(\theta_s)

In summary, if tracking is included with tilt limits and backtracking enabled, then at each time step the tilt is set to whichever of the following three angles is smallest:

βd, tilt that minimises the incident angle of direct light on the front side of the module;

βm, maximum tilt;

βb, the maximum tilt determined by the selected backtracking strategy.

It should be noted that the actual tilting of the modules within the scene occurs around a defined axis of rotation.5 The module tilt angle will always be as determined above, however changes to the point of rotation will result in changes to the module position within the scene. In particular the height from the ground may be altered.


  1. For example, there are reduced options for the scattering models and thin films are not used.

  2. As described in module optics, selection of a complex module will result in the ray tracing of the PV panel including the full set of complex optics including thin films, textured surfaces, reflection from individual metal fingers and many other details.

  3. Except for their location within the unit-system which is defined by the system type and a variety of user inputs.

  4. No angular dependence, no ground shading, perfectly calibrated up/down facing sensors.

  5. The default axis is through the center of the tracking torque tube. If no torque tube is used then it becomes the axis passing through the middle of the module group in the XY plane and the bottom of the module in the Z plane. An additional custom offset in either Z direction may also be defined.