build -- Builds a preconditioner

call prec%build(a, desc_a, info[,amold,vmold,imold])

Type:
Synchronous.
On Entry
a
the system sparse matrix. Scope: local
Type: required
Intent: in, target.
Specified as: a sparse matrix data structure spdatapsb_Tspmat_type.
prec
the preconditioner.
Scope: local
Type: required
Intent: inout.
Specified as: an already initialized precondtioner data structure precdatapsb_prec_type
desc_a
the problem communication descriptor. Scope: local
Type: required
Intent: in, target.
Specified as: a communication descriptor data structure descdatapsb_desc_type.
amold
The desired dynamic type for the internal matrix storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from spbasedatapsb_T_base_sparse_mat.
vmold
The desired dynamic type for the internal vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from vbasedatapsb_T_base_vect_type.
imold
The desired dynamic type for the internal integer vector storage.
Scope: local.
Type: optional.
Intent: in.
Specified as: an object of a class derived from (integer) vbasedatapsb_T_base_vect_type.

On Return
prec
the preconditioner.
Scope: local
Type: required
Intent: inout.
Specified as: a precondtioner data structure precdatapsb_prec_type
info
Error code.
Scope: local
Type: required
Intent: out.
An integer value; 0 means no error has been detected.
The amold, vmold and imold arguments may be employed to interface with special devices, such as GPUs and other accelerators.