pvlib.ivtools.utils.rectify_iv_curve(voltage, current, decimals=None)[source]#

Sort the IV curve data, remove NaNs and negative values, and combine points with duplicate voltage.

  • voltage (numeric [V]) –

  • current (numeric [A]) –

  • decimals (int or None, default None) – number of decimal places to which voltage is rounded to remove duplicated points. If None, no rounding is done.


  • voltage (numeric [V])

  • current (numeric [A])


rectify_iv_curve ensures that the IV curve lies in the first quadrant of the (voltage, current) plane. The returned IV curve:

  • increases in voltage

  • contains no negative current or voltage values

  • contains no NaNs

  • contains no points with duplicate voltage values. Where voltage values are repeated, a single data point is substituted with current equal to the average of current at duplicated voltages.