IterativeParams Class

class plask.IterativeParams

Iterative matrix parameters

This class holds parameters for iterative matrix used by solvers implementing Finite Element Method. PLaSK uses NSPCG package for performing iterations. Please refer to its documentation for explanation of most of the settings.

Attributes

accelerator Solver accelerator
converged True if the solver converged
err Residual error in the last run
iters Number of iterations in the last run
ltrunc Truncation level
lvfill Fill-in level
maxerr Maximum allowed residual iteration
maxit Maximum number of iterations
ndeg Polynomial degree
nfact Frequency of partial factorization
noconv Desired behavior if the iterative solver does not converge.
nrestart Restart frequency
nsave Saved vectors number
omega Relaxation parameter
preconditioner Solver preconditioner

Descriptions

Attribute Details

IterativeParams.accelerator

Solver accelerator

This is current iterative matrix solver acceleration algorithm.

Possible choices:
cg Conjugate Gradient acceleration (default)
si Chebyshev acceleration or Semi-Iteration
sor Successive Overrelaxation (can use only SOR preconditioner)
srcg Symmetric Successive Overrelaxation Conjugate Gradient Algorithm (can use only SSOR preconditioner)
srsi Symmetric Successive Overrelaxation Semi-Iteration Algorithm (can use only SSOR preconditioner)
basic Basic Iterative Method
me Minimal Error Algorithm
cgnr Conjugate Gradient applied to the Normal Equations
lsqr Least Squares Algorithm
odir ORTHODIR, a truncated/restarted method useful for nonsymmetric systems of equations
omin ORTHOMIN, a common truncated/restarted method used for nonsymmetric systems
ores ORTHORES, another truncated/restarted method for nonsymmetric systems
iom Incomplete Orthogonalization Method
gmres Generalized Minimal Residual Method
usymlq Unsymmetric LQ
usymqr Unsymmetric QR
landir Lanczos/ORTHODIR
lanmin Lanczos/ORTHOMIN or Biconjugate Gradient Method
lanres Lanczos/ORTHORES or “two-sided” Lanczos Method
cgcr Constrained Generalized Conjugate Residual Method
bcgs Biconjugate Gradient Squared Method
IterativeParams.converged

True if the solver converged

IterativeParams.err

Residual error in the last run

IterativeParams.iters

Number of iterations in the last run

IterativeParams.ltrunc

Truncation level

Truncation bandwidth to be used when approximating the inverses of matrices with dense banded matrices. An increase in this value means a more accurate factorization at the expense of increased storage.

IterativeParams.lvfill

Fill-in level

Level of fill-in for incomplete Cholesky preconditioners. Increasing this value will result in more accurate factorizations at the expense of increased memory usage and factorization time.

IterativeParams.maxerr

Maximum allowed residual iteration

IterativeParams.maxit

Maximum number of iterations

IterativeParams.ndeg

Polynomial degree

Degree of the polynomial to be used for the polynomial preconditioners.

IterativeParams.nfact

Frequency of partial factorization

This number initializes the frequency of partial factorizations. It specifies the number of linear system evaluatations between factorizations. The default value is 1, which means that a factorization is performed at every iteration.

IterativeParams.noconv

Desired behavior if the iterative solver does not converge.

Possible choices are: error, warning, continue

IterativeParams.nrestart

Restart frequency

The number of iterations between restarts for restarted acceleration methods.

IterativeParams.nsave

Saved vectors number

The number of old vectors to be saved for the truncated acceleration methods.

IterativeParams.omega

Relaxation parameter

IterativeParams.preconditioner

Solver preconditioner

This is current preconditioner used for iterative matrix solver.

Possible choices:
rich Richardson’s method
jac Jacobi method
ljac Line Jacobi method
ljacx Line Jacobi method (approx. inverse)
sor Successive Overrelaxation (can be used only with SOR accelerator)
ssor Symmetric SOR
ic Incomplete Cholesky (default)
mic Modified Incomplete Cholesky
lsp Least Squares Polynomial
neu Neumann Polynomial
lsor Line SOR
lssor Line SSOR
llsp Line Least Squares Polynomial
lneu Line Neumann Polynomial
bic Block Incomplete Cholesky (ver. 1)
bicx Block Incomplete Cholesky (ver. 2)
mbic Modified Block Incomplete Cholesky (ver. 1)
mbicx Modified Block Incomplete Cholesky (ver. 2)