Solver¶
linear_solver{} (optional)¶
Parameters for linear equation solver in current equation.
- iterations (optional)
- value:
integer
- default:
10000
- example:
200
number of iterations (optional)
- abs_accuracy (optional)
- value:
double
- default:
1e-30
#[eV]
- example:
1e-30
#[eV]
absolute accuracy of Fermi level, use a small value to force convergence
Note
abs_accuracy is (dimension dependent!!!): (default is: 1e-30 [eV] (1D), 1e-30 [eV] (2D), 1e-30 [eV] (3D))
- rel_accuracy (optional)
- value:
double,
0.0
<=rel_accuracy
<=0.01
- default:
1e-13
# [dimensionless]relative accuracy
(default is: 1e-13 [dimensionless]), 0.0 <= rel_accuracy <= 0.01
- dkr_value (optional)
- value:
double, must be <= 0.5
- default:
-1.0
# [dimensionless]- example:
0.1
# [dimensionless]A parameter to speed up calculations, affects preconditioning
Note
Negative values are ignored but will switch to a slightly slower but more stable preconditioning.
- use_cscg (optional)
- value:
yes
orno
- default:
no
Forces the slower but occasionally more robust CSCG (Composite Step Conjugate Gradient ) linear solver to be used rather than the cg (Conjugate Gradient) linear solver. May occasionally prevent a diagonalization failure.
- force_diagonal_preconditioner (optional)
- value:
yes
orno
- default:
no
Only for debugging purposes, enabling will make code much slower or prevent convergence. Forces the use of a slower but more robust diagonal preconditioner. Only for debugging purposes, enabling will make code much slower or prevent convergence. Please try setting it to yes in case preconditioning fails or the linear solver diverges. If set to yes,
iterations
may have to be further increased.- force_iteration (optional)
- value:
yes
orno
- default:
no
Only for debugging purposes, enabling will make code much slower or prevent convergence.
- extended_accuracy (optional)
- value:
0
or1
- default:
0
If set to
1
, then current equation is solved using slower but more accurate solver (only implemented for nonperiodic 1D simulations). Experimental feature, will change in the future.