The basic user interface of MLD2P4 consists of eight routines. The six
routines init
, set
,
hierarchy_bld
, smoothers_bld
,
bld
, and apply
encapsulate all the
functionalities for the setup and the application of any multi-level 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;