# Precond¶

class Precond(*args)

GetFEM Precond object

The preconditioners may store REAL or COMPLEX values. They accept getfem sparse matrices and Matlab sparse matrices.

General constructor for Precond objects

• PC = Precond('identity') Create a REAL identity precondioner.
• PC = Precond('cidentity') Create a COMPLEX identity precondioner.
• PC = Precond('diagonal', vec D) Create a diagonal precondioner.
• PC = Precond('ildlt', SpMat m) Create an ILDLT (Cholesky) preconditioner for the (symmetric) sparse matrix m. This preconditioner has the same sparsity pattern than m (no fill-in).
• PC = Precond('ilu', SpMat m) Create an ILU (Incomplete LU) preconditioner for the sparse matrix m. This preconditioner has the same sparsity pattern than m (no fill-in).
• PC = Precond('ildltt', SpMat m[, int fillin[, scalar threshold]]) Create an ILDLTT (Cholesky with filling) preconditioner for the (symmetric) sparse matrix m. The preconditioner may add at most fillin additional non-zero entries on each line. The default value for fillin is 10, and the default threshold is1e-7.
• PC = Precond('ilut', SpMat m[, int fillin[, scalar threshold]]) Create an ILUT (Incomplete LU with filling) preconditioner for the sparse matrix m. The preconditioner may add at most fillin additional non-zero entries on each line. The default value for fillin is 10, and the default threshold is 1e-7.
• PC = Precond('superlu', SpMat m) Uses SuperLU to build an exact factorization of the sparse matrix m. This preconditioner is only available if the getfem-interface was built with SuperLU support. Note that LU factorization is likely to eat all your memory for 3D problems.
• PC = Precond('spmat', SpMat m) Preconditioner given explicitely by a sparse matrix.
char()

Output a (unique) string representation of the Precond.

This can be used to perform comparisons between two different Precond objects. This function is to be completed.

display()

displays a short summary for a Precond object.

is_complex()

Return 1 if the preconditioner stores complex values.

mult(V)

Apply the preconditioner to the supplied vector.

size()

Return the dimensions of the preconditioner.

tmult(V)

Apply the transposed preconditioner to the supplied vector.

type()

Return a string describing the type of the preconditioner (‘ilu’, ‘ildlt’,..).