The basic user interface of MLD2P4 consists of eight routines. The six
routines init, set,
hierarchy_build, smoothers_build,
bld, and apply encapsulate all the
functionalities for the setup and the application of any multilevel and one-level
preconditioner implemented in the package.
The routine free deallocates the preconditioner data structure, while
descr prints a description of the preconditioner setup by the user.
All the routines are available as methods of the preconditioner object. 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;