This module contains the PVcell object which is used by modules, strings and systems.


class pvmismatch.pvmismatch_lib.pvcell.PVcell(Rs=0.004267236774264931, Rsh=10.01226369025448, Isat1_T0=2.28618816125344e-11, Isat2_T0=1.117455042372326e-06, Isc0_T0=6.3056, aRBD=0.0001036748445065697, bRBD=0.0, VRBD=-5.527260068445654, nRBD=3.284628553041425, Eg=1.1, alpha_Isc=0.0003551, Tcell=298.15, Ee=1.0, pvconst=<PVconstants(npts=101)>)

Class for PV cells.

  • Rs – series resistance [ohms]
  • Rsh – shunt resistance [ohms]
  • Isat1_T0 – first saturation diode current at ref temp [A]
  • Isat2_T0 – second saturation diode current [A]
  • Isc0_T0 – short circuit current at ref temp [A]
  • aRBD – reverse breakdown coefficient 1
  • bRBD – reverse breakdown coefficient 2
  • VRBD – reverse breakdown voltage [V]
  • nRBD – reverse breakdown exponent
  • Eg – band gap [eV]
  • alpha_Isc – short circuit current temp coeff [1/K]
  • Tcell – cell temperature [K]
  • Ee – incident effective irradiance [suns]
  • pvconst (PVconstants) – configuration constants object

Photogenerated current coefficient, non-dimensional.

Ee = None

[suns] incident effective irradiance on cell

Eg = None

[eV] band gap of cSi

Icell = None

cell currents on IV curve [A]


Photovoltaic generated light current (AKA IL or Iph) Returns Igen : numpy.ndarray of float, PV generated light current [A]

Photovoltaic generated light current is zero if irradiance is zero.


Diode one saturation current at Tcell in amps.

Isat1_T0 = None

[A] diode one sat. current at T0


Diode two saturation current at Tcell in amps.

Isat2_T0 = None

[A] diode two saturation current


Short circuit current at Tcell in amps.

Isc0_T0 = None

[A] short circuit current at T0

Pcell = None

cell power on IV curve [W]

Rs = None

[ohm] series resistance

Rsh = None

[ohm] shunt resistance

Tcell = None

[K] cell temperature

VRBD = None

[V] reverse breakdown voltage

Vcell = None

cell voltages on IV curve [V]


Estimate open circuit voltage of cells. Returns Voc : numpy.ndarray of float, estimated open circuit voltage

VocSTC = None

estimated Voc at STC [V]


Thermal voltage in volts.

aRBD = None

reverse breakdown coefficient 1

alpha_Isc = None

[1/K] short circuit temp. coeff.

bRBD = None

reverse breakdown coefficient 2


Calculate cell I-V curves. Returns (Icell, Vcell, Pcell) : tuple of numpy.ndarray of float


Calculate Icell as a function of Vcell. :param Vcell: cell voltage [V] :return: Icell


Calculate Vcell as a function of Icell. :param Icell: cell current [A] :return: Vcell

static f_Icell(Icell, Vcell, Igen, Rs, Vt, Isat1, Isat2, Rsh)

Objective function for Icell. :param Icell: cell current [A] :param Vcell: cell voltage [V] :param Igen: photogenerated current at Tcell and Ee [A] :param Rs: series resistance [ohms] :param Vt: thermal voltage [V] :param Isat1: first diode saturation current at Tcell [A] :param Isat2: second diode saturation current [A] :param Rsh: shunt resistance [ohms] :return: residual = (Icell - Icell0) [A]

nRBD = None

reverse breakdown exponent


Plot cell I-V curve. Returns cellPlot : matplotlib.pyplot figure

pvconst = None

configuration constants


Update user-defined constants.