pvlib.inverter.adr(v_dc, p_dc, inverter, vtol=0.1)[source]

Converts DC power and voltage to AC power using Anton Driesse’s grid-connected inverter efficiency model.

  • v_dc (numeric) – DC voltage input to the inverter, should be >= 0. [V]

  • p_dc (numeric) – DC power input to the inverter, should be >= 0. [W]

  • inverter (dict-like) – Defines parameters for the inverter model in 1. See Notes for required model parameters. A parameter database is provided with pvlib and may be read using pvlib.pvsystem.retrieve_sam().

  • vtol (numeric, default 0.1) – Fraction of DC voltage that determines how far the efficiency model is extrapolated beyond the inverter’s normal input voltage operating range. 0.0 <= vtol <= 1.0. [unitless]


power_ac (numeric) – AC power output. [W]


Determines the AC power output of an inverter given the DC voltage and DC power. Output AC power is bounded above by the parameter Pacmax, to represent inverter “clipping”. AC power is bounded below by -Pnt (negative when power is consumed rather than produced) which represents self-consumption. power_ac is not adjusted for maximum power point tracking (MPPT) voltage windows or maximum current limits of the inverter.

Required model parameters are:




Nominal DC power, typically the DC power needed to produce maximum AC power output. [W]


Nominal DC input voltage. Typically the level at which the highest efficiency is achieved. [V]


Maximum DC input voltage. [V]


Minimum DC input voltage. [V]


Maximum voltage supplied from DC array. [V]


Maximum DC voltage for MPPT range. [V]


Minimum DC voltage for MPPT range. [V]


Maximum AC output power, used to clip the output power if needed. [W]


A list of 9 coefficients that capture the influence of input voltage and power on inverter losses, and thereby efficiency. Corresponds to terms from 1 (in order): :math: b_{0,0}, b_{1,0}, b_{2,0}, b_{0,1}, b_{1,1}, b_{2,1}, b_{0,2}, b_{1,2}, b_{2,2}. See 1 for the use of each coefficient and its associated unit.


AC power consumed by inverter at night (night tare) to maintain circuitry required to sense the PV array voltage. [W]

AC power output is set to NaN where the input DC voltage exceeds a limit M = max(Vmax, Vdcmax, MPPTHi) x (1 + vtol), and where the input DC voltage is less than a limit m = max(Vmin, MPPTLow) x (1 - vtol)



A. Driesse, “Beyond the Curves: Modeling the Electrical Efficiency of Photovoltaic Inverters”, 33rd IEEE Photovoltaic Specialist Conference (PVSC), June 2008