sesame.solvers.default.solve_equilibrium¶
-
default.solve_equilibrium(system, guess=None, tol=1e-06, periodic_bcs=True, maxiter=300, verbose=True, iterative=False, inner_tol=1e-06, htp=1)¶ Solve the Poisson equation.
Parameters: system: Builder :
The discretized system.
guess: numpy array of floats :
Contains the electrostatic potential.
tol: float :
Accepted error made by the Newton-Raphson scheme.
periodic_bcs: boolean :
Defines the choice of boundary conditions in the y-direction. True (False) corresponds to periodic (abrupt) boundary conditions.
maxiter: integer :
Maximum number of steps taken by the Newton-Raphson scheme.
verbose: boolean :
The solver returns the step number and the associated error at every step if set to True (default).
iterative: boolean :
Defines if an iterative method should be used to solve for the Newton correction instead of a direct method. Default is False.
inner_tol: float :
Error of the inner iterative solver when used.
htp: integer :
Number of homotopic Newton loops to perform.
Returns: solution: dictionary with numpy arrays of floats :
Dictionary containing the one-dimensional arrays of the solution: the electron quasi-Fermi level (zeros), the hole quasi-Fermi level (zeros) and the electrostatic potential. Keys are ‘efn’, ‘efp’ and ‘v’. An exception is raised if no solution could be found.