5.4 Method smoothers_build

call p%smoothers_build(a,desc_a,p,info[,amold,vmold,imold])

This method builds the smoothers and the coarsest-level solvers for the multilevel preconditioner p, according to the requirements made by the user through the methods init and set, and based on the aggregation hierarchy produced by a previous call to hierarchy_build (see Section 5.3).

Arguments

a

type(psb_xspmat_type), intent(in).

The sparse matrix structure containing the local part of the matrix to be preconditioned. Note that x must be chosen according to the real/complex, single/double precision version of AMG4PSBLAS under use. See the PSBLAS User’s Guide for details [17].

desc_a

type(psb_desc_type), intent(in).

The communication descriptor of a. See the PSBLAS User’s Guide for details [17].

info

integer, intent(out).

Error code. If no error, 0 is returned. See Section 7 for details.

amold

class(psb_x_base_sparse_mat), intent(in), optional.

The desired dynamic type for internal matrix components; this allows e.g. running on GPUs; it needs not be the same on all processes. See the PSBLAS User’s Guide for details [17].

vmold

class(psb_x_base_vect_type), intent(in), optional.

The desired dynamic type for internal vector components; this allows e.g. running on GPUs.

imold

class(psb_i_base_vect_type), intent(in), optional.

The desired dynamic type for internal integer vector components; this allows e.g. running on GPUs.