This document provides a detailed overview of the methodology used to calculate inverter efficiency within Univers's Performance+ solar analytics. Inverter efficiency serves as a key indicator of the AC-side health of a photovoltaic (PV) system, measuring how effectively electrical power is converted from direct current (DC) to alternating current (AC) by the inverters.
Understanding inverter efficiency is essential for optimizing system performance, diagnosing potential inefficiencies, and ensuring that energy yield remains at expected levels. The purpose of this document is to offer users clear insights into the logic behind these calculations, enabling them to make informed decisions when interpreting efficiency metrics.
Chapter 1 covers the data preparation and filtering. Chapter 2 describes how a physical Sandia inverter model is fitted per inverter and how the efficiency KPIs are derived from it. Chapter 3 explains the inverter efficiency reference curve. Chapter 4 describes how the modelled efficiency feeds the loss breakdown.
Detailed Calculation
Inverter efficiency is essentially the ratio between the DC power flowing into an inverter and the converted AC power the inverter passes to the grid. Rather than relying on the raw, noisy instantaneous ratio, Performance+ fits a physical Sandia inverter model [1] per inverter and uses it to compute a smooth modelled efficiency, the associated conversion loss, and an efficiency reference curve.
1. Data preparation
The calculation runs on the inverter level using the consolidated inverter dataset at native resolution (5 min). The following signals are read per inverter:
P_AC- inverter AC powerP_DC- inverter DC powerV_DC- inverter DC voltage
Two preparation steps are applied:
- Actual efficiency pre-processing. The instantaneous actual efficiency
ActualInvEff = P_AC / P_DCis computed on all rows (day and night). Values are only kept where the ratio lies strictly between0and1.05; everything else is set toNaNto remove physically impossible or night-time artefacts. - Filtering for model fitting. The rows used to fit the model are restricted to reliable operating points where:
-
P_AC > 0-P_DC > 0-ActualInvEffis within(0, 1]
Rows where any of P_AC, P_DC, or V_DC is missing are dropped. The filtered dataset is then passed to the model fit and inference.
The filtered dataset is what feeds the Sandia model fitting; the full (unfiltered) frame is retained so that all original timestamps are preserved in the output, with the KPI columns left as NaN where no reliable value could be computed.
2. Sandia inverter model and efficiency KPIs
The methodology fits the Sandia grid-connected inverter performance model [1] to each inverter's operational data and uses the fitted model to derive the efficiency KPIs. The evaluation is done in four steps.
Step 1 - Nominal parameters. Three nominal parameters are derived from the operational data:
Paco- the inverter's nominal AC power (its rated AC capacity from the asset metadata).Pdco- the DC power at nominal AC output, obtained by fitting a quadratic polynomial ofP_DCagainstP_ACand evaluating it atPaco.Vdco- the nominal DC voltage, taken as the mean of the positiveV_DCreadings.
Step 2 - Coefficient fit. The five Sandia coefficients [c0, c1, c2, c3, pso] are fitted with a least-squares optimization. Only near-nominal, high-efficiency operating points are used for training - points where P_AC > 5% | Paco and P_AC / P_DC lies within [0.85, 1.0]. The residual minimized is the DC-normalized difference between the modelled and measured AC power, (P_AC_pred - P_AC_obs) / P_DC.
Step 3 - AC power inference. Using the fitted coefficients and nominal parameters, the modelled AC power is computed from P_DC and V_DC following the Sandia formulation:
A = Pdco | (1 + c1 | (V_DC - Vdco))
B = pso | (1 + c2 | (V_DC - Vdco))
C = c0 | (1 + c3 | (V_DC - Vdco))
P_AC_modelled = ( Paco / (A - B) - C | (A - B) ) | (P_DC - B) + C | (P_DC - B)^2
Step 4 - KPIs. From the modelled AC power the following KPIs are derived:
- Modelled AC power (
ModeledAcPower) - clipped to be non-negative. - Modelled inverter loss (
ModeledInvEffLoss)= P_DC - P_AC_modelled. - Modelled inverter efficiency (
ModeledInvEff)= 1 - ModeledInvEffLoss / P_DC. - Normalized AC power (
NormalizedActivePower)= P_AC / Paco.
Timestamps with a negative modelled loss are removed, forcing the modelled conversion to stay below 100%.
3. Inverter efficiency reference curve
In addition to the per-timestamp KPIs, a reference efficiency curve is produced per inverter. A synthetic DC-power sweep (from 0 to rated DC power) is passed through the previously fitted Sandia coefficients to simulate the AC output across the whole operating range. The resulting relationship between normalized AC power (x) and modelled efficiency (y) is binned (100 bins) into a representative InverterEfficiencyCurve, which is uploaded to Bazefield and persisted for downstream visualization and comparison.
4. Inverter efficiency loss in the loss breakdown
The modelled inverter efficiency is consumed by the solar loss breakdown (see the Loss Breakdown note) to quantify the inverter efficiency loss. The modelled efficiency ModeledInvEff - rather than the noisy actual efficiency, which can oscillate around the expected value and produce spurious negative losses - is compared against the inverter's nameplate EU efficiency from the asset metadata:
eff_loss_rate = (eu_efficiency - ModeledInvEff) clipped to >= 0
inverter_efficiency_loss = p_ac_expected | eff_loss_rate
The loss therefore represents the additional power lost because the inverter is converting below its expected efficiency baseline - essentially quantifying how much more power is being lost compared to normal conversion losses. This identifies underperformance by measuring excess losses beyond the inverter's established efficiency characteristics.
References
[1] D. King, S. Gonzalez, G. Galbraith and W. Boyson, "Performance Model for Grid-Connected Photovoltaic Inverters," Sandia National Laboratories, SAND2007-5036, 2007.