Calling sequence

currents{ maximum_density }

  • using: \(\mathrm{\textcolor{ForestGreen}{optional}}\)

  • type: \(\mathrm{real\;number}\)

  • values: \([0.0, 10^{30}]\)

  • default: \(10^{30}\)

  • unit: \(\mathrm{cm^{-3}}\)


A keyword allowing to improve the condition number of the matrix representing the current equation.

Maximum carrier density, \(\rho_\mathrm{max}\), is defined for both types of carriers at once (electrons and holes) as the upper limit for the respective density distributions entering the drift-diffusion current equations. If a density distribution computed based on quasi-Fermi levels and densities of states for a given carrier type, \(\rho_\mathrm{sim}\left(x\right)\), is higher than \(\rho_\mathrm{max}\) within some region, then its values in the region are replaced by the \(\rho_\mathrm{max}\) for the equation. In other words, every carrier distribution entering the current equation, \(\rho_\mathrm{current}\left(x\right)\), is given by

\[\rho_\mathrm{current}\left(x\right) = \mathrm{min}\left[\rho_\mathrm{sim}\left(x\right), \rho_\mathrm{max}\right].\]

This operation is not visible in the output files.

As the drift-diffusion current is proportional to the charge carrier density, this keyword also indirectly sets the upper limit of the current.


The \(\rho_\mathrm{max}\) affects only the current operators (\(\nabla\;\mu\;\rho_\mathrm{current}\;\nabla\)) and the corresponding current for each type of carriers. Thus it has no direct influence on computed densities, Poisson equation, etc.


  • The \(\rho_\mathrm{max}\) might have to be reduced in order to stabilize convergence for the drift-diffusion current equations.

  • The \(\rho_\mathrm{max}\) should be as high enough to represent current of majority carriers.

  • The \(\rho_\mathrm{max}\) can be chosen as low as possible but should be large enough to not affect the results.

When restricting effective densities in the current equations from above, one should consider impact on the physics of the modelled device, i.e., decreasing maximum densities may decrease conductivity of conducting regions.

    maximum_density = 1.0  # cm^-3
    maximum_density_factor = [ 1e10 , 1e8 ]