diff --git a/docs/amg4psblas_1.2-guide.pdf b/docs/amg4psblas_1.2-guide.pdf index 147ac151..20f367a7 100644 Binary files a/docs/amg4psblas_1.2-guide.pdf and b/docs/amg4psblas_1.2-guide.pdf differ diff --git a/docs/html/userhtmlse5.html b/docs/html/userhtmlse5.html index ef60dbd0..89e651fc 100644 --- a/docs/html/userhtmlse5.html +++ b/docs/html/userhtmlse5.html @@ -2713,14 +2713,16 @@ class="cmmi-12">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 +class="cmr-12">. Note that, when AMG4PSBLAS is used with am iterative solver from PSBLAS, p%apply is called within the PSBLAS method psb_krylov and hence it is +class="cmr-12">and +hence it is completely transparent to the user, who will almost never invoke it completely transparent to the user. -

directly. +

Arguments

Arguments id="TBL-15-1"> +class="td11">

trans

x

x

type(kind_parameter), dimension(:), intent(in)—.

The local part of the vector x. Note that , single/double class="cmr-12">precision version of AMG4PSBLAS under use.

y

y

type(kind_parameter), dimension(:), intent(out)—.

The local part of the vector y. Note that , single/double class="cmr-12">precision version of AMG4PSBLAS under use.

desc_a

type(psb_desc_type), intent(in)

desc_a

type(psb_desc_type), intent(in).

The communication descriptor associated to the matrix to be preconditioned.

info

integer, intent(out)

info

integer, intent(out).

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

trans

character(len=1), optional, intent(in).

character(len=1), optional, intent(in).

If trans = N,n then 1).

work

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 5.7 Method free

-

This method deallocates the preconditioner data structure p. -

Arguments

Arguments id="TBL-16-1">

info

integer, intent(out)

info

integer, intent(out).

Error code. If no error, 0 is returned. See Section 5.8 Method descr

-

This method prints a description of the preconditioner p to the standard output or to a , or b class="cmr-12">, have been called. -

Arguments

Arguments id="TBL-17-1">

info

integer, intent(out)

info

integer, intent(out).

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

iout

integer, intent(in), optional

iout

integer, intent(in), optional.

The id of the file where the preconditioner description will be printed; the default is the standard output.

root

integer, intent(in), optional

root

integer, intent(in), optional.

The id of the process where the preconditioner description will be printed; the default is psb_root_.

verbosity

integer, intent(in), optional

verbosity

integer, intent(in), optional.

The verbosity level of the description. Default value is 0. For values higher than 0, it prints out further information, e.g., for @@ -3005,31 +3007,31 @@ class="cmr-12">matrices on every process.

-

+

5.9 Auxiliary Methods

-

Various functionalities are implemented as additional methods of the preconditioner object. -

+

5.9.1 Method: dump
-

-

call p%dump(info[,istart,iend,prefix,head,ac,rp,smoother,solver,global_num])
+

+

call p%dump(info[,istart,iend,prefix,head,ac,rp,smoother,solver,global_num])

-

Dump on file. -

Arguments

Arguments id="TBL-18-1">

info

integer, intent(out)

info

integer, intent(out).

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

amold

class(psb_

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 @@ -3072,19 +3074,19 @@ class="cmr-12">.

-

+

5.9.2 Method: clone
-

-

call p%clone(pout,info)
+

+

call p%clone(pout,info)

-

Create a (deep) copy of the preconditioner object. -

Arguments

Arguments id="TBL-19-1">

pout

type(amg_

pout

type(amg_xprec_type), intent(out).

The copy of the preconditioner data structure. Note that x must @@ -3111,13 +3113,13 @@ class="cmr-12">, single/double precision class="cmr-12">version of AMG4PSBLAS under use.

info

integer, intent(out)

info

integer, intent(out).

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

-

+

5.9.3 Method: sizeof
-

-

sz = p%sizeof([global])
+

+

sz = p%sizeof([global])

Method: sizeof id="TBL-20-1">

global

logical, optional

global

logical, optional.

Whether the global or local preconditioner memory occupation is desired. Default: .false.Return memory footprint in bytes. -

+

5.9.4 Method: allocate_wrk
-

-

call p%allocate_wrk(info[, vmold])
+

+

call p%allocate_wrk(info[, vmold])

-

Allocate internal work vectors. Each application of the preconditioner uses a number of work vectors which are allocated internally as necessary; therefore allocation and deallocation of memory occurs multiple times during the execution of a Krylov method. +class="cmr-12">deallocation of memory occurs multiple times during the execution of an iterative In most cases this strategy is perfectly acceptable, but on some platforms, most +class="cmr-12">method. In most cases this strategy is perfectly acceptable, but on some platforms, notably GPUs, memory allocation is a slow operation, and the default behaviour would +class="cmr-12">most notably GPUs, memory allocation is a slow operation, and the default behaviour lead to a slowdown. This method allows to trade space for time by preallocating +class="cmr-12">would lead to a slowdown. This method allows to trade space for time by preallocating the internal workspace outside of the invocation of a Krylov method. When +class="cmr-12">the internal workspace outside of the invocation of a linear solver method. When using GPUs or other specialized devices, the vmold argument is also necessary @@ -3198,7 +3200,7 @@ class="cmr-12">taken care of based on the dynamic type of the argument to the apply method. -

Arguments

Arguments id="TBL-21-1">

info

integer, intent(out)

info

integer, intent(out).

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

vmold

class(psb_

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.

-

+

5.9.5 Method: deallocate_wrk
-

-

call p%deallocate_wrk(info)
+

+

call p%deallocate_wrk(info)
+call p%free_wrk(info)

-

Deallocate internal work vectors. -

Arguments

Arguments id="TBL-22-1">

info

integer, intent(out)

info

integer, intent(out).

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