ivcurves.compare_curves.calc_precise_curve#

ivcurves.compare_curves.calc_precise_curve(curve_parameters, vth, num_pts, atol)#

Gets precise voltage and current pairs for the given curve.

Parameters:
  • curve_parameters (list) –

    A list of parameters representing a given IV curve. Should be passed in the order [il, io, rs, rsh, n, ns].

    ilnumeric

    Light-generated current \(I_L\) (photocurrent) [A]

    ionumeric

    Diode saturation \(I_0\) current under desired IV curve conditions. [A]

    rsnumeric

    Series resistance \(R_s\) under desired IV curve conditions. [ohm]

    rshnumeric

    Shunt resistance \(R_{sh}\) under desired IV curve conditions. [ohm]

    nnumeric

    Diode ideality factor \(n\)

    nsnumeric

    Number of cells in series \(N_s\)

  • vth (numeric) – Thermal voltage of the cell \(V_{th}\) [V] The thermal voltage of the cell (in volts) may be calculated as \(k_B T_c / q\), where \(k_B\) is Boltzmann’s constant (J/K), \(T_c\) is the temperature of the p-n junction in Kelvin, and \(q\) is the charge of an electron (coulombs).

  • num_pts (int) – Number of points to calculate on the given curve.

  • atol (float) – The error of each of the solution pairs found is at most atol. (See ivcurves.precise.get_precise_i().) Each solution pair is a point on the curve.

Returns:

(vv, ii)vv is a numpy array of float64 and ii is a numpy array of mpmath floats. Each array has num_pts entries.

Return type:

tuple of numpy arrays