The basic user interface of MLD2P4 consists of six routines. The four
routines mld_ precinit, mld_precset,
mld_precbld and mld_precaply encapsulate all the
functionalities for the setup and the application of any one-level and
multi-level preconditioner implemented in the package.
The routine mld_precfree deallocates the preconditioner data structure, while
mld_precdescr prints a description of the preconditioner setup by the user.
For each routine, the same user interface is overloaded with respect to the real/complex case and the single/double precision; arguments with appropriate data types must be passed to the routine, i.e.
psb_xspmat_type
with x = s for real single precision, x = d
for real double precision, x = c for complex single precision,
x = z for complex double precision;
mld_xprec_type, with x =
s, d, c, z, according to the sparse
matrix data structure;
psb_xvect_type with x =
s, d, c, z, in a manner completely
analogous to the sparse matrix type;