< !DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
< html >
< head > < title > Method build< / title >
< meta http-equiv = "Content-Type" content = "text/html; charset=iso-8859-1" >
< meta name = "generator" content = "TeX4ht (https://tug.org/tex4ht/)" >
< meta name = "originator" content = "TeX4ht (https://tug.org/tex4ht/)" >
<!-- html,3 -->
< meta name = "src" content = "userhtml.tex" >
< link rel = "stylesheet" type = "text/css" href = "userhtml.css" >
< / head > < body
>
<!-- l. 789 --> < div class = "crosslinks" > < p class = "noindent" > < span
class="cmr-12">[< / span > < a
href="userhtmlsu13.html" >< span
class="cmr-12">next< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlsu11.html" >< span
class="cmr-12">prev< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlsu11.html#tailuserhtmlsu11.html" >< span
class="cmr-12">prev-tail< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="#tailuserhtmlsu12.html">< span
class="cmr-12">tail< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlse5.html#userhtmlsu12.html" >< span
class="cmr-12">up< / span > < / a > < span
class="cmr-12">] < / span > < / p > < / div >
< h4 class = "subsectionHead" > < span class = "titlemark" > < span
class="cmr-12">5.5 < / span > < / span > < a
id="x22-210005.5">< / a > < span
class="cmr-12">Method build< / span > < / h4 >
< div class = "center"
>
<!-- l. 791 --> < p class = "noindent" >
<!-- l. 792 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > call< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > p< / span > < span style = "color:#000000" > %< / span > < span style = "color:#000000" > build< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > a< / span > < span style = "color:#000000" > ,< / span > < span style = "color:#000000" > desc_a< / span > < span style = "color:#000000" > ,< / span > < span style = "color:#000000" > info< / span > < span style = "color:#000000" > [,< / span > < span style = "color:#000000" > amold< / span > < span style = "color:#000000" > ,< / span > < span style = "color:#000000" > vmold< / span > < span style = "color:#000000" > ,< / span > < span style = "color:#000000" > imold< / span > < span style = "color:#000000" > ])< / span > < / code > < br / >
< / div >
<!-- l. 795 --> < p class = "noindent" > < span
class="cmr-12">This method builds the preconditioner < / span > < code class = "lstinline" > < span style = "color:#000000" > p< / span > < / code > < span
class="cmr-12">according to the requirements made by the< / span >
< span
class="cmr-12">user through the methods < / span > < code class = "lstinline" > < span style = "color:#000000" > init< / span > < / code > < span
class="cmr-12">and < / span > < code class = "lstinline" > < span style = "color:#000000" > set< / span > < / code > < span
class="cmr-12">(see Sections< / span > < span
class="cmr-12">  < / span > < a
href="userhtmlsu10.html#x20-190005.3">< span
class="cmr-12">5.3< / span > <!-- tex4ht:ref: sec:hier_bld --> < / a > < span
class="cmr-12">and< / span > < span
class="cmr-12">  < / span > < a
href="userhtmlsu11.html#x21-200005.4">< span
class="cmr-12">5.4< / span > <!-- tex4ht:ref: sec:smooth_bld --> < / a > < span
class="cmr-12">for multilevel< / span >
< span
class="cmr-12">preconditioners). It is mostly provided for backward compatibility; indeed, it is< / span >
< span
class="cmr-12">internally implemented by invoking the two previous methods < / span > < code class = "lstinline" > < span style = "color:#000000" > hierarchy_build< / span > < / code > < span
class="cmr-12">and< / span >
< code class = "lstinline" > < span style = "color:#000000" > smoothers_build< / span > < / code > < span
class="cmr-12">, whose nomenclature would however be somewhat unnatural when< / span >
< span
class="cmr-12">dealing with simple one-level preconditioners.< / span >
<!-- l. 805 --> < p class = "noindent" > < span
class="cmbx-12">Arguments< / span >
< div class = "tabular" > < table id = "TBL-14" class = "tabular"
>< colgroup id = "TBL-14-1g" > < col
id="TBL-14-1">< col
id="TBL-14-2">< / colgroup > < tr
style="vertical-align:baseline;" id="TBL-14-1-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-1-1"
class="td11"> <!-- l. 808 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > a< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-1-2"
class="td11"> <!-- l. 808 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > type< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > psb_< / span > < / code > < span
class="cmti-12">x< / span > < code class = "lstinline" > < span style = "color:#000000" > spmat_type< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > in< / span > < span style = "color:#000000" > )< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-2-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-2-1"
class="td11"> <!-- l. 809 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-2-2"
class="td11"> <!-- l. 809 --> < p class = "noindent" > < span
class="cmr-12">The sparse matrix structure containing the local part of the matrix< / span >
< span
class="cmr-12">to be preconditioned. Note that < / span > < span
class="cmti-12">x < / span > < span
class="cmr-12">must be chosen according to the< / span >
< code class = "lstinline" > < span style = "color:#000000" > real< / span > < / code > < span
class="cmr-12">/< / span > < code class = "lstinline" > < span style = "color:#000000" > complex< / span > < / code > < span
class="cmr-12">, single/double precision version of AMG4PSBLAS< / span >
< span
class="cmr-12">under use. See the PSBLAS User’ s Guide for details < / span > < span class = "cite" > < span
class="cmr-12">[< / span > < a
href="userhtmlli5.html#XPSBLASGUIDE">< span
class="cmr-12">21< / span > < / a > < span
class="cmr-12">]< / span > < / span > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-3-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-3-1"
class="td11"> <!-- l. 813 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > desc_a< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-3-2"
class="td11"> <!-- l. 813 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > type< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > psb_desc_type< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > in< / span > < span style = "color:#000000" > )< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-4-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-4-1"
class="td11"> <!-- l. 814 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-4-2"
class="td11"> <!-- l. 814 --> < p class = "noindent" > < span
class="cmr-12">The communication descriptor of < / span > < code class = "lstinline" > < span style = "color:#000000" > a< / span > < / code > < span
class="cmr-12">. See the PSBLAS User’ s Guide< / span >
< span
class="cmr-12">for details < / span > < span class = "cite" > < span
class="cmr-12">[< / span > < a
href="userhtmlli5.html#XPSBLASGUIDE">< span
class="cmr-12">21< / span > < / a > < span
class="cmr-12">]< / span > < / span > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-5-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-5-1"
class="td11"> <!-- l. 816 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > info< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-5-2"
class="td11"> <!-- l. 816 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > integer< / span > < span style = "color:#000000" > ,< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > out< / span > < span style = "color:#000000" > )< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-6-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-6-1"
class="td11"> <!-- l. 817 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-6-2"
class="td11"> <!-- l. 817 --> < p class = "noindent" > < span
class="cmr-12">Error code. If no error, 0 is returned. See Section< / span > < span
class="cmr-12">  < / span > < a
href="userhtmlse7.html#x28-320007">< span
class="cmr-12">7< / span > <!-- tex4ht:ref: sec:errors --> < / a > < span
class="cmr-12">for details.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-7-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-7-1"
class="td11"> <!-- l. 818 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > amold< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-7-2"
class="td11"> <!-- l. 818 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > class< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > psb_< / span > < / code > < span
class="cmti-12">x< / span > < code class = "lstinline" > < span style = "color:#000000" > _base_sparse_mat< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > in< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > optional< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-8-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-8-1"
class="td11"> <!-- l. 819 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-8-2"
class="td11"> <!-- l. 819 --> < p class = "noindent" > < span
class="cmr-12">The desired dynamic type for internal matrix components; this< / span >
< span
class="cmr-12">allows e.g. running on GPUs; it needs not be the same on all< / span >
< span
class="cmr-12">processes. See the PSBLAS User’ s Guide for details < / span > < span class = "cite" > < span
class="cmr-12">[< / span > < a
href="userhtmlli5.html#XPSBLASGUIDE">< span
class="cmr-12">21< / span > < / a > < span
class="cmr-12">]< / span > < / span > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-9-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-9-1"
class="td11"> <!-- l. 823 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > vmold< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-9-2"
class="td11"> <!-- l. 823 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > class< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > psb_< / span > < / code > < span
class="cmti-12">x< / span > < code class = "lstinline" > < span style = "color:#000000" > _base_vect_type< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > in< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > optional< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-10-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-10-1"
class="td11"> <!-- l. 824 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-10-2"
class="td11"> <!-- l. 824 --> < p class = "noindent" > < span
class="cmr-12">The desired dynamic type for internal vector components; this< / span >
< span
class="cmr-12">allows e.g. running on GPUs.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-11-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-11-1"
class="td11"> <!-- l. 826 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > imold< / span > < / code > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-11-2"
class="td11"> <!-- l. 826 --> < p class = "noindent" > < code class = "lstinline" > < span style = "color:#000000" > class< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > psb_i_base_vect_type< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > intent< / span > < span style = "color:#000000" > (< / span > < span style = "color:#000000" > in< / span > < span style = "color:#000000" > ),< / span > < span style = "color:#000000" > < / span > < span style = "color:#000000" > optional< / span > < / code > < span
class="cmr-12">.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-12-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-12-1"
class="td11"> <!-- l. 827 --> < p class = "noindent" > < / td > < td style = "white-space:normal; text-align:left;" id = "TBL-14-12-2"
class="td11"> <!-- l. 827 --> < p class = "noindent" > < span
class="cmr-12">The desired dynamic type for internal integer vector components;< / span >
< span
class="cmr-12">this allows e.g. running on GPUs.< / span > < / td >
< / tr > < tr
style="vertical-align:baseline;" id="TBL-14-13-">< td style = "white-space:normal; text-align:left;" id = "TBL-14-13-1"
class="td11"> < / td > < / tr > < / table > < / div >
<!-- l. 832 --> < p class = "noindent" > < span
class="cmr-12">The method can be used to build multilevel preconditioners too.< / span >
<!-- l. 837 --> < div class = "crosslinks" > < p class = "noindent" > < span
class="cmr-12">[< / span > < a
href="userhtmlsu13.html" >< span
class="cmr-12">next< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlsu11.html" >< span
class="cmr-12">prev< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlsu11.html#tailuserhtmlsu11.html" >< span
class="cmr-12">prev-tail< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlsu12.html" >< span
class="cmr-12">front< / span > < / a > < span
class="cmr-12">] [< / span > < a
href="userhtmlse5.html#userhtmlsu12.html" >< span
class="cmr-12">up< / span > < / a > < span
class="cmr-12">] < / span > < / p > < / div >
<!-- l. 837 --> < p class = "indent" > < a
id="tailuserhtmlsu12.html">< / a >
< / body > < / html >