Reference / Inverter operating limits
Model option
MPPT window on the module curve, AC clip
The string held inside the MPPT window on the module curve, the DC derates applied to the power after it, the output cut at the nameplate
Inputs used: AC nameplate power, MPPT window minimum, MPPT window maximum, Maximum DC input current, inverter.derate_temps_c, Power factor, Nameplate is apparent
Method
The modules run at their maximum-power point unless the string voltage there lies outside the inverter's MPPT window. The string voltage is the modules in series times the module's maximum-power voltage, with no cable drop (1). When it lies below the window's minimum, with light on the array, or above its maximum, the string runs at that edge, and the array power is read on the module's own current-voltage curve at the edge voltage (2). Electrical or Deline shading scales that power as it scales the maximum power. The flat DC derates, the rear mismatch and the DC wiring loss then reduce the power as fractions (3). The inverter's efficiency law is evaluated at the string voltage, and the AC output is cut at the AC limit (4). At or below the law's self-consumption the inverter draws its night consumption. Above it the law's value is kept, negative while the input lies below the law's B term. There is no other start threshold and no DC current limit. The power lost at the window edge counts on the voltage rows and the cut on the power-limit row. On east-west racking the two faces share one MPPT input. Each face runs at its own maximum-power point, and the string voltage is the mean of the two faces' string voltages weighted by their strings (5). A face whose module gives no power, below 1 W/m² on the CEC and De Soto models, counts 0 V in that mean. When the mean lies outside the window, both faces run at the edge voltage, each with its power read on its own module curve and its own DC derates applied after it. This is the operating point of SAM's detailed photovoltaic model.
The math
- String voltage
- Array power at the string voltage
- DC input
- AC output
- East-west string voltage before the window
where
| Symbol | Meaning | Unit |
|---|---|---|
| the string voltage at the operating point | V | |
| the modules in series per string | — | |
| the module's maximum-power voltage at the timestep's irradiance and cell temperature | V | |
| the inverter's MPPT window | V | |
| the array power before the DC derates | W | |
| the shading factor of the array power, 1 without electrical or Deline shading | — | |
| the modules of one inverter | — | |
| the module current at the module voltage on its current-voltage curve | A | |
| the inverter's DC input | W | |
| the flat DC derates, the rear mismatch and the DC wiring loss, fractions | — | |
| the AC output | W | |
| the AC output the efficiency law gives for the DC input at the voltage | W | |
| the AC limit of one inverter | W | |
| the string voltage of an east-west array before the window, which takes the place of in (1) | V | |
| the strings of the east-facing and the west-facing face | — | |
| each face's module maximum-power voltage at its own irradiance and cell temperature | V |
References
- King, Gonzalez, Galbraith & Boyson 2007, Performance Model for Grid-Connected Photovoltaic Inverters, Sandia report SAND2007-5036
- Gilman, DiOrio, Freeman, Janzou, Dobos & Ryberg 2018, SAM Photovoltaic Model Technical Reference Update, NREL/TP-6A20-67399
- NREL SAM Simulation Core (SSC) source code, release 2026.7.3, github.com/NatLabRockies/ssc: ssc/cmod_pvsamv1.cpp, the MPPT voltage clipping and the DC loss total in exec(); shared/lib_sandia.cpp, sandia_inverter_t::acpower()
API
inverter.operating_point = mppt_window
Symbols follow the symbol registry.