Skip to main content

Overview

PlantPredict calculates solar PV system performance through a hierarchical sequence of models, progressing from solar resource characterization to grid-delivered power. The calculation is organized into five main stages that correspond to the physical energy conversion process:
  1. Irradiance Calculation — From solar resource to effective plane-of-array irradiance
  2. Photovoltaic Conversion — From effective irradiance to DC field-level DC electrical power, including DC system losses and degradation
  3. DC–AC Conversion — From DC field power to inverter-level AC power
  4. AC Collection and Interconnection — From inverter-level AC power to grid-delivered energy
  5. Energy Storage — Battery charge/discharge and integration with PV (optional)
The calculation loops through each timestep in the input weather data, applying models at the site, block, array, inverter, and DC field levels.

Calculation Hierarchy

PlantPredict organizes the power plant into a four-level hierarchy:
  • Site: Overall project (single)
  • Block: Group of arrays with shared characteristics (one or more)
  • Array: Group of inverters with shared electrical configuration (one or more per block)
  • Inverter: Individual inverter with connected DC fields (one or more per array)
  • DC Field: Strings of PV modules connected to an inverter (one or more per inverter)
Calculations proceed from the lowest level (DC Field) upward, with results aggregated at each level.

Stage 1: Irradiance Calculation

This stage converts the solar resource data (horizontal irradiance components) into the effective irradiance on the surface of the module, accounting for geometry, atmospheric effects, shading, and optical losses.

1.1 Solar Position (Site Level)

Purpose: Calculate apparent sun position and solar angles Models:
  • NREL Solar Position Algorithm (SPA)
  • Sunrise and sunset time determination
  • Air mass models (Bird-Hulstrom, Kasten-Sandia)
  • Extraterrestrial irradiance (Spencer equation)
Outputs: Solar apparent zenith angle, solar azimuth angle, sunrise/sunset times, air mass, extraterrestrial DNI

1.2 Horizontal Irradiance Processing (Site Level)

Purpose: Quality control and component separation of horizontal irradiance (if needed) Models:
  • Horizontal irradiance quality control
  • Diffuse-direct decomposition (Erbs, Reindl, DIRINT)
  • Bird clear sky model (for spectral corrections)
Outputs: Quality-controlled GHI, DNI, DHI; clear-sky irradiance components

1.3 Array Orientation (DC Field Level or below)

Purpose: Determine module orientation for each DC field at each timestep Models: Fixed-tilt arrays:
  • Fixed surface azimuth and tilt angles
Single-axis tracking arrays:
  • True tracking (no backtracking)
  • Shade-avoidance backtracking
  • Terrain-aware backtracking (TABT, angles defined at tracker level within a DC field)
  • Irradiance optimization (PlantPredict or Array Technologies API)
  • Wind stow
Outputs: Surface azimuth angle, surface tilt angle, angle of incidence

1.4 Transposition to Plane-of-Array (DC Field Level)

Purpose: Convert horizontal irradiance to tilted plane Models:
  • Hay-Davies transposition model
  • Perez transposition model (multiple coefficient sets)
  • 3D transposition (for 3D scenes with TABT or user-defined tracker angles)
Outputs: Beam POA, sky diffuse POA, ground-reflected diffuse POA

1.5 Shading Losses (DC Field Level)

Purpose: Calculate irradiance reduction from shading Models (applied in sequence):
  1. Horizon shading (far-field obstructions)
  2. Diffuse shading (Schaar-Panchula sky-view factor)
  3. Direct beam shading:
    • Linear shading (2D IRIS model)
    • DC-field-level 3D shading (legacy infinite-shed 3D model)
    • Site-level 3D scene shading (V12 polygon clipping)
  4. Electrical effect of shading (none, linear, fractional, step-fractional)
Outputs: Shaded beam POA, shaded sky diffuse POA, shaded ground-reflected diffuse POA, electrical shading fraction

1.6 POA Irradiance Adjustments (DC Field Level)

Purpose: Apply optical, soiling, and spectral corrections Models:
  • Soiling (none, monthly override, weather-based)
  • Incidence angle modifier (ASHRAE, Sandia, physical, custom interpolation)
  • Spectral shift adjustment (Sandia, First Solar POR/QED, Spectral 2, Spectral 3.0)
  • Bifacial irradiance (front and rear surface with view factors)
Outputs: Effective beam POA, effective diffuse POA, effective ground-reflected diffuse POA, rear surface irradiance

Stage 2: Photovoltaic Conversion

This stage converts effective irradiance into DC field-level DC electrical power, accounting for DC system losses, thermal effects, module electrical characteristics, and time-dependent degradation.

2.1 DC System Losses (DC Field Level)

Purpose: Apply loss coefficients that reduce effective irradiance before power calculation Models: Combined coefficient losses (applied as multipliers to effective irradiance before single diode model):
  • Module Mismatch (module-to-module deviation within bin)
  • Module Quality (average deviation from nameplate)
  • Light-Induced Degradation (LID)
  • DC Health (user-defined DC system loss for factors such as soiling non-uniformity or connection degradation)
DC wiring losses (applied as additional series resistance in single diode model):
  • DC Wiring Resistance (derived from user-specified percentage loss at STC)
Outputs: Reduced effective irradiance, equivalent series resistance

2.2 Module Temperature (DC Field Level)

Purpose: Calculate cell temperature from ambient conditions Models:
  • Heat balance model (modified Faiman)
  • NOCT-SAM model
  • Sandia model (empirical exponential)
Outputs: Cell temperature, module surface temperature

2.3 DC Performance (DC Field Level)

Purpose: Calculate electrical power from PV modules using reduced irradiance and increased series resistance Models: Module electrical models:
  • 5-parameter single-diode model
  • 7-parameter single-diode model with additional recombination
  • 7-parameter single-diode model with additional recombination and non-linear temperature coefficients
Operating conditions adjustments:
  • Temperature and irradiance translation of single-diode model parameters (5 or 7)
  • Metastability (CdTe-specific)
Outputs: VmpV_{mp}, ImpI_{mp}, PmpP_{mp}, VocV_{oc}, IscI_{sc} (per DC field)

2.4 Degradation Losses – DC Applied (Inverter Level)

Purpose: Apply time-dependent degradation to DC power before inverter conversion Models (when Linear DC or Non-Linear DC model selected):
  • Linear DC Degradation (constant annual rate)
  • Non-Linear DC Degradation (variable year-by-year rates)
  • LeTID (Light and Elevated Temperature Induced Degradation)
Outputs: Degraded DC power (per inverter)

Stage 3: DC–AC Conversion

This stage converts DC power from multiple DC fields to AC power through the inverter.

3.1 Inverter Temperature Derating (Inverter Level)

Purpose: Calculate temperature- and elevation-adjusted inverter capacity Models:
  • kVA curve interpolation (elevation- and temperature-dependent)
Outputs: Derated inverter power limit

3.2 DC Field Aggregation (Inverter Level)

Purpose: Aggregate power from multiple DC fields with potentially different I-V characteristics Models:
  • Weighted average voltage calculation
  • Current recalculation at common voltage
  • Current summation
Outputs: Combined DC voltage, combined DC current, total DC power at inverter input

3.3 Inverter Operating Regions (Inverter Level)

Purpose: Determine inverter operating point based on DC input conditions Models:
  • Inverter operating region determination (13 regions based on voltage and derated power limits)
  • Clipping (region 10) or voltage adjustments (regions 5, 7, 9, 11), if needed
Outputs: Operating region, adjusted DC power

3.4 Inverter Efficiency (Inverter Level)

Purpose: Calculate AC power output from DC input Models:
  • Legacy efficiency model (bilinear interpolation with DC power, V3-10)
  • Sandia efficiency model (polynomial fitting with AC power, V11+)
Outputs: AC power, inverter efficiency (per inverter)

Stage 4: AC Collection and Interconnection

This stage calculates losses in the AC electrical infrastructure from inverter output to the point of interconnection.

4.1 AC Degradation Losses (Array Level)

Purpose: Apply time-dependent degradation to AC power Models (when Linear AC or Stepped AC model selected):
  • Linear AC Degradation (continuous linear degradation)
  • Stepped AC Degradation (annual step-wise degradation)
  • LeTID (when enabled and AC degradation model selected)
Outputs: Degraded AC power (per array)

4.2 AC System Losses (Array and Plant Level)

Purpose: Calculate losses in AC electrical infrastructure Array-level models (applied to each array in sequence):
  1. Auxiliary loads (DAS, cooling, tracker motors)
  2. MV transformer losses (quadratic model)
  3. AC collection resistive losses (V12+: I²R model, V3-11: flat percentage)
Plant-level models (applied after array aggregation):
  • HV equipment losses:
    • HV transformer losses (quadratic model)
    • Transmission line losses (I²R model)
  • Availability loss (percentage reduction)
  • Capacity constraints at point of interconnection (grid limit/LGIA)
Outputs: Final AC power and energy delivered to grid

Stage 5: Energy Storage

This stage models optional battery energy storage system charge/discharge and integration with PV.

5.1 Dispatch Algorithms (Plant Level)

Purpose: Determine battery charge/discharge behavior Models:
  • LGIA excess (charge from clipped PV)
  • Energy available (charge when PV available)
  • Custom dispatch (user-defined schedule)
Outputs: Charge/discharge power commands

5.2 Battery State (Plant Level)

Purpose: Track battery energy state and degradation Models:
  • State of charge calculation
  • Cycle and calendar degradation
Outputs: State of charge, degraded capacity

5.3 Energy Storage System Losses (Plant Level)

Purpose: Calculate losses in the ESS Models:
  • DC round-trip efficiency
  • Inverter efficiency (AC/DC conversion during charge/discharge)
  • MV transformer losses
  • HVAC losses (battery thermal management)
Outputs: Net charge/discharge power after losses

5.4 PV-Storage Integration (Plant Level)

Purpose: Combine PV and storage output at POI Models:
  • Net PV output to grid (PV generation minus energy used for charging)
  • Combined output at POI (net PV plus battery discharge)
  • HV equipment losses applied to combined PV+storage flow
Outputs: Combined PV+Storage power and energy at POI

Aggregation Flow

Results aggregate hierarchically:
  1. DC Field → Inverter: Sum DC power from all DC fields connected to each inverter
  2. Inverter → Array: Sum AC power (after MV transformer and AC collection) from all inverters in array
  3. Array → Block: Sum array outputs
  4. Block → Plant: Sum block outputs, apply HV equipment losses
  5. Plant → Site: Apply availability loss and grid limit

Parallel Execution

The prediction engine uses parallel processing at multiple levels:
  • Parallel across blocks
  • Parallel across arrays within blocks
  • Parallel across inverters within arrays
  • Parallel across DC fields within inverters
This enables efficient calculation for large systems with hundreds of thousands of modules.

Conditional Logic

Several models are conditionally applied:
  • 3D Transposition: Only when 3D scene is enabled
  • Bifacial Calculations: Only for bifacial modules
  • Metastability: Only for CdTe modules when enabled
  • Electrical Shading: Only when Fractional or Step-Fractional shading models are selected
  • DC Degradation: Applied at inverter level after DC field power calculation, before DC-AC conversion (Linear DC, Non-Linear DC)
  • AC Degradation: Applied at array level after inverter output (Linear AC, Stepped AC)
  • LeTID: Applied at DC level when DC degradation model selected, or at AC level when AC degradation model selected
  • DC Field Aggregation: Applied when multiple DC fields with different I-V characteristics are connected to the same inverter
  • Nighttime Disconnect: Zeroes output and disconnects transformers when GHI ≤ 1 W/m²

Version-Specific Behavior

Many models include version-specific logic (V3 through V12), with differences explicitly documented in the individual model pages. Version 12 introduced:
  • Site-level 3D scene shading (polygon clipping algorithm)
  • Quadratic AC collection losses
  • Enhanced bifacial mismatch handling
  • Improved DC field aggregation and clipping behavior
  • Updated spectral and IAM models