ThermoElectric.fermi_self_consistent

ThermoElectric.fermi_self_consistent(carrier: numpy.ndarray, temp: numpy.ndarray, energy: numpy.ndarray, density: numpy.ndarray, fermi_levels: numpy.ndarray) numpy.ndarray[source]

Self-consistent calculation of the Fermi level from a given carrier concentration using Joyce Dixon approximation as the initial guess for degenerate semiconductors. As a default value of 4000 sampling points in energy range from Ef(JD)-0.4 eV up to Ef(JD)+0.2 is considered.This looks reasonable in most cases. The index is printed out if it reaches the extreme index of (0) or (4000), increase energy range.

Parameters
  • carrier (np.ndarray) – Total carrier concentration

  • energy (np.ndarray) – The electron energy level

  • density (np.ndarray) – The electron density of states

  • fermi_levels (np.ndarray) – Joyce Dixon femi level approximation as the initial guess

  • temp (np.ndarray) – Temperature range

Returns

output – The first row is the carrier concentration and the second one is the Fermi level

Return type

np.ndarray