PLaSK User Manual

Page Contents

Shockley2D

<electrical solver="Shockley2D">

Corresponding Python class: electrical.shockley.Shockley2D.

Two-dimensional phenomenological solver in Cartesian geometry based on Shockley equation and using finite-element method.

Attributes:
  • name (required) – Solver name.
Contents:
<geometry>

Geometry for use by this solver.

Attributes:
  • ref (required) – Name of a Cartesian2D geometry defined in the <geometry> section.
<mesh>

Rectangular2D mesh used by this solver.

Attributes:
  • ref (required) – Name of a Rectangular2D mesh defined in the <grids> section. (mesh)
  • include-empty – Should empty regions (e.g. air) be included into computation domain? (bool, default is ‘no’)
<voltage>

Voltage boundary conditions. See subsection Boundary conditions.

<loop>

Configuration of the self-consistent loop.

Attributes:
  • maxerr – Maximum allowed current density error. (float [%], default 0.05 %)
<matrix>

Configuration of the matrix solver.

Attributes:
  • algorithm – Algorithm used for solving set of linear positive-definite equations. (‘cholesky’, ‘gauss’, or ‘iterative’, default is ‘cholesky’)
  • itererr – Maximum allowed residual error for the iterative algorithm. (float, default 1e-08)
  • iterlim – Maximum number of iterations for the iterative algorithm. (int, default 10000)
  • logfreq – Number of iterations after which the progress is logged. (int, default 500)
<junction>

Configuration of the effective model of p-n junction.

Attributes:
  • beta# – Junction coefficients. This is an inverse of the junction thermal voltage. (float [1/V])
  • js# – Reverse bias current densities. (float [A/m2])
  • pnjcond – Initial vertical conductivity of the junctions. (float [S/m], default 5.0 S/m)
<contacts>

Properties of the contact layers.

Attributes:
  • pcond – p-contact conductivity. (float [S/m], default 5.0 S/m)
  • ncond – n-contact conductivity. (float [S/m], default 50.0 S/m)