[ next ] [ prev ] [ prev-tail ] [ tail ] [ up ]

#### 5.6 Method apply

call p%apply(x,y,desc_a,info [,trans,work])

This method computes y = op(B-1) x, where B is a previously built preconditioner, stored into p, and op denotes the preconditioner itself or its transpose, according to the value of trans. Note that, when AMG4PSBLAS is used with a Krylov solver from PSBLAS, p%apply is called within the PSBLAS method psb_krylov and hence it is completely transparent to the user.

Arguments

x | type(kind_parameter), dimension(:), intent(in)—.
| The local part of the vector x. Note that type and kind_parameter must be chosen according to the real/complex, single/double precision version of AMG4PSBLAS under use.
y | type(kind_parameter), dimension(:), intent(out)—.
| The local part of the vector y. Note that type and kind_parameter must be chosen according to the real/complex, single/double precision version of AMG4PSBLAS under use.
desc_a | type(psb_desc_type), intent(in).
| The communication descriptor associated to the matrix to be preconditioned.
info | integer, intent(out).
| Error code. If no error, 0 is returned. See Section 7 for details.
trans | character(len=1), optional, intent(in).
| If trans = ’N’,’n’ then op(B-1) = B-1; if trans = ’T’,’t’ then op(B-1) = B-T (transpose of B-1); if trans = ’C’,’c’ then op(B-1) = B-C (conjugate transpose of B-1).
work | type(kind_parameter), dimension(:), optional, target—.
| Workspace. Its size should be at least 4 * psb_cd_get_local_ cols(desc_a) (see the PSBLAS User’s Guide). Note that type and kind_parameter must be chosen according to the real/complex, single/double precision version of AMG4PSBLAS under use.

[ next ] [ prev ] [ prev-tail ] [ front ] [ up ]