Fixed docs for new smoothers/solvers, updated Makefile

stopcriterion
Salvatore Filippone 8 years ago
parent 50ec525f48
commit ae8ac64d24

@ -136,13 +136,15 @@ Feb. 28, 2017
</UL>
<BR>
<LI><A NAME="tex2html48"
HREF="node24.html">Error Handling</A>
HREF="node24.html">Adding new smoother and solver objects to MLD2P4</A>
<LI><A NAME="tex2html49"
HREF="node25.html">License</A>
HREF="node25.html">Error Handling</A>
<LI><A NAME="tex2html50"
HREF="node26.html">Bibliography</A>
HREF="node26.html">License</A>
<LI><A NAME="tex2html51"
HREF="node27.html">About this document ...</A>
HREF="node27.html">Bibliography</A>
<LI><A NAME="tex2html52"
HREF="node28.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html62"
<A NAME="tex2html63"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html58"
<A NAME="tex2html59"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html52"
<A NAME="tex2html53"
HREF="userhtml.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html60"
<A NAME="tex2html61"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html63"
<B> Next:</B> <A NAME="tex2html64"
HREF="node2.html">Contents</A>
<B> Up:</B> <A NAME="tex2html59"
<B> Up:</B> <A NAME="tex2html60"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html53"
<B> Previous:</B> <A NAME="tex2html54"
HREF="userhtml.html">userhtml</A>
&nbsp; <B> <A NAME="tex2html61"
&nbsp; <B> <A NAME="tex2html62"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -90,26 +90,26 @@ the user interface of MLD2P4.
<HR>
<!--Navigation Panel-->
<A NAME="tex2html62"
<A NAME="tex2html63"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html58"
<A NAME="tex2html59"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html52"
<A NAME="tex2html53"
HREF="userhtml.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html60"
<A NAME="tex2html61"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html63"
<B> Next:</B> <A NAME="tex2html64"
HREF="node2.html">Contents</A>
<B> Up:</B> <A NAME="tex2html59"
<B> Up:</B> <A NAME="tex2html60"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html53"
<B> Previous:</B> <A NAME="tex2html54"
HREF="userhtml.html">userhtml</A>
&nbsp; <B> <A NAME="tex2html61"
&nbsp; <B> <A NAME="tex2html62"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -25,26 +25,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html195"
<A NAME="tex2html197"
HREF="node11.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html191"
<A NAME="tex2html193"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html187"
<A NAME="tex2html189"
HREF="node9.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html193"
<A NAME="tex2html195"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html196"
<B> Next:</B> <A NAME="tex2html198"
HREF="node11.html">Multigrid Background</A>
<B> Up:</B> <A NAME="tex2html192"
<B> Up:</B> <A NAME="tex2html194"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html188"
<B> Previous:</B> <A NAME="tex2html190"
HREF="node9.html">Bug reporting</A>
&nbsp; <B> <A NAME="tex2html194"
&nbsp; <B> <A NAME="tex2html196"
HREF="node2.html">Contents</A></B>
<BR>
<BR>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html207"
<A NAME="tex2html209"
HREF="node12.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html203"
<A NAME="tex2html205"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html197"
<A NAME="tex2html199"
HREF="node10.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html205"
<A NAME="tex2html207"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html208"
<B> Next:</B> <A NAME="tex2html210"
HREF="node12.html">AMG preconditioners</A>
<B> Up:</B> <A NAME="tex2html204"
<B> Up:</B> <A NAME="tex2html206"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html198"
<B> Previous:</B> <A NAME="tex2html200"
HREF="node10.html">Example and test programs</A>
&nbsp; <B> <A NAME="tex2html206"
&nbsp; <B> <A NAME="tex2html208"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -55,46 +55,46 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BR>
Multigrid Background
</H1> Multigrid preconditioners, coupled with Krylov iterative solvers, are widely used in the parallel solution of large and sparse linear systems, because of their optimality in the solution of linear systems arising from the discretization of scalar elliptic Partial Differential Equations (PDEs) on regular grids. Optimality, also known as algorithmic scalability, is the property of having a computational cost per iteration that depends linearly on the problem size, and a convergence rate that is independent of the problem size. Multigrid preconditioners are based on a recursive application of a two-grid process consisting of smoother iterations and a coarse-space (or coarse-level) correction. The smoothers may be either basic iterative methods, such as the Jacobi and Gauss-Seidel ones, or more complex subspace-correction methods, such as the Schwarz ones. The coarse-space correction consists of solving, in an appropriately chosen coarse space, the residual equation associated with the approximate solution computed by the smoother, and of using the solution of this equation to correct the previous approximation. The transfer of information between the original (fine) space and the coarse one is performed by using suitable restriction and prolongation operators. The construction of the coarse space and the corresponding transfer operators is carried out by applying a so-called coarsening algorithm to the system matrix. Two main approaches can be used to perform coarsening: the geometric approach, which exploits the knowledge of some physical grid associated with the matrix and requires the user to define transfer operators from the fine to the coarse level and vice versa, and the algebraic approach, which builds the coarse-space correction and the associate transfer operators using only matrix information. The first approach may be difficult when the system comes from discretizations on complex geometries; furthermore, ad hoc one-level smoothers may be required to get an efficient interplay between fine and coarse levels, e.g., when matrices with highly varying coefficients are considered. The second approach performs a fully automatic coarsening and enforces the interplay between fine and coarse level by suitably choosing the coarse space and the coarse-to-fine interpolation (see, e.g., [<A
HREF="node26.html#Briggs2000">3</A>,<A
HREF="node26.html#Stuben_01">23</A>,<A
HREF="node26.html#dd2_96">21</A>] for details.) MLD2P4 uses a pure algebraic approach, based on the smoothed aggregation algorithm [<A
HREF="node26.html#BREZINA_VANEK">2</A>,<A
HREF="node26.html#VANEK_MANDEL_BREZINA">25</A>], for building the sequence of coarse matrices and transfer operators, starting from the original one. A decoupled version of this algorithm is implemented, where the smoothed aggregation is applied locally to each submatrix [<A
HREF="node26.html#TUMINARO_TONG">24</A>]. A brief description of the AMG preconditioners implemented in MLD2P4 is given in Sections&nbsp;<A HREF="node12.html#sec:multilevel">4.1</A>-<A HREF="#sec:smoothers">4.3</A>. For further details the reader is referred to [<A
HREF="node26.html#para_04">4</A>,<A
HREF="node26.html#aaecc_07">5</A>,<A
HREF="node26.html#apnum_07">7</A>,<A
HREF="node26.html#MLD2P4_TOMS">8</A>]. We note that optimal multigrid preconditioners do not necessarily correspond to minimum execution times in a parallel setting. Indeed, to obtain effective parallel multigrid preconditioners, a tradeoff between the optimality and the cost of building and applying the smoothers and the coarse-space corrections must be achieved. Effective parallel preconditioners require algorithmic scalability to be coupled with implementation scalability, i.e., a computational cost per iteration which remains (almost) constant as the number of parallel processors increases. <BR><HR>
HREF="node27.html#Briggs2000">3</A>,<A
HREF="node27.html#Stuben_01">23</A>,<A
HREF="node27.html#dd2_96">21</A>] for details.) MLD2P4 uses a pure algebraic approach, based on the smoothed aggregation algorithm [<A
HREF="node27.html#BREZINA_VANEK">2</A>,<A
HREF="node27.html#VANEK_MANDEL_BREZINA">25</A>], for building the sequence of coarse matrices and transfer operators, starting from the original one. A decoupled version of this algorithm is implemented, where the smoothed aggregation is applied locally to each submatrix [<A
HREF="node27.html#TUMINARO_TONG">24</A>]. A brief description of the AMG preconditioners implemented in MLD2P4 is given in Sections&nbsp;<A HREF="node12.html#sec:multilevel">4.1</A>-<A HREF="#sec:smoothers">4.3</A>. For further details the reader is referred to [<A
HREF="node27.html#para_04">4</A>,<A
HREF="node27.html#aaecc_07">5</A>,<A
HREF="node27.html#apnum_07">7</A>,<A
HREF="node27.html#MLD2P4_TOMS">8</A>]. We note that optimal multigrid preconditioners do not necessarily correspond to minimum execution times in a parallel setting. Indeed, to obtain effective parallel multigrid preconditioners, a tradeoff between the optimality and the cost of building and applying the smoothers and the coarse-space corrections must be achieved. Effective parallel preconditioners require algorithmic scalability to be coupled with implementation scalability, i.e., a computational cost per iteration which remains (almost) constant as the number of parallel processors increases. <BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html209"
<LI><A NAME="tex2html211"
HREF="node12.html">AMG preconditioners</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<!--Navigation Panel-->
<A NAME="tex2html207"
<A NAME="tex2html209"
HREF="node12.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html203"
<A NAME="tex2html205"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html197"
<A NAME="tex2html199"
HREF="node10.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html205"
<A NAME="tex2html207"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html208"
<B> Next:</B> <A NAME="tex2html210"
HREF="node12.html">AMG preconditioners</A>
<B> Up:</B> <A NAME="tex2html204"
<B> Up:</B> <A NAME="tex2html206"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html198"
<B> Previous:</B> <A NAME="tex2html200"
HREF="node10.html">Example and test programs</A>
&nbsp; <B> <A NAME="tex2html206"
&nbsp; <B> <A NAME="tex2html208"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -25,26 +25,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html218"
<A NAME="tex2html220"
HREF="node13.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html214"
<A NAME="tex2html216"
HREF="node11.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html210"
<A NAME="tex2html212"
HREF="node11.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html216"
<A NAME="tex2html218"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html219"
<B> Next:</B> <A NAME="tex2html221"
HREF="node13.html">Getting Started</A>
<B> Up:</B> <A NAME="tex2html215"
<B> Up:</B> <A NAME="tex2html217"
HREF="node11.html">Multigrid Background</A>
<B> Previous:</B> <A NAME="tex2html211"
<B> Previous:</B> <A NAME="tex2html213"
HREF="node11.html">Multigrid Background</A>
&nbsp; <B> <A NAME="tex2html217"
&nbsp; <B> <A NAME="tex2html219"
HREF="node2.html">Contents</A></B>
<BR>
<BR>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html230"
<A NAME="tex2html232"
HREF="node14.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html226"
<A NAME="tex2html228"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html220"
<A NAME="tex2html222"
HREF="node12.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html228"
<A NAME="tex2html230"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html231"
<B> Next:</B> <A NAME="tex2html233"
HREF="node14.html">Examples</A>
<B> Up:</B> <A NAME="tex2html227"
<B> Up:</B> <A NAME="tex2html229"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html221"
<B> Previous:</B> <A NAME="tex2html223"
HREF="node12.html">AMG preconditioners</A>
&nbsp; <B> <A NAME="tex2html229"
&nbsp; <B> <A NAME="tex2html231"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -59,7 +59,7 @@ Getting Started
<P>
We describe the basics for building and applying MLD2P4 one-level and multi-level
(i.e., AMG) preconditioners with the Krylov solvers included in PSBLAS [<A
HREF="node26.html#PSBLASGUIDE">13</A>].
HREF="node27.html#PSBLASGUIDE">13</A>].
The following steps are required:
<OL>
@ -192,32 +192,32 @@ on parallel computers.
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html232"
<LI><A NAME="tex2html234"
HREF="node14.html">Examples</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<!--Navigation Panel-->
<A NAME="tex2html230"
<A NAME="tex2html232"
HREF="node14.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html226"
<A NAME="tex2html228"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html220"
<A NAME="tex2html222"
HREF="node12.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html228"
<A NAME="tex2html230"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html231"
<B> Next:</B> <A NAME="tex2html233"
HREF="node14.html">Examples</A>
<B> Up:</B> <A NAME="tex2html227"
<B> Up:</B> <A NAME="tex2html229"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html221"
<B> Previous:</B> <A NAME="tex2html223"
HREF="node12.html">AMG preconditioners</A>
&nbsp; <B> <A NAME="tex2html229"
&nbsp; <B> <A NAME="tex2html231"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -25,26 +25,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html241"
<A NAME="tex2html243"
HREF="node15.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html237"
<A NAME="tex2html239"
HREF="node13.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html233"
<A NAME="tex2html235"
HREF="node13.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html239"
<A NAME="tex2html241"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html242"
<B> Next:</B> <A NAME="tex2html244"
HREF="node15.html">User Interface</A>
<B> Up:</B> <A NAME="tex2html238"
<B> Up:</B> <A NAME="tex2html240"
HREF="node13.html">Getting Started</A>
<B> Previous:</B> <A NAME="tex2html234"
<B> Previous:</B> <A NAME="tex2html236"
HREF="node13.html">Getting Started</A>
&nbsp; <B> <A NAME="tex2html240"
&nbsp; <B> <A NAME="tex2html242"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -78,7 +78,7 @@ Section&nbsp;<A HREF="node10.html#sec:ex_and_test">3.5</A>). A sample test probl
input data is available in <code>examples/fileread/runs</code>.
For details on the use of the PSBLAS routines, see the PSBLAS User's
Guide&nbsp;[<A
HREF="node26.html#PSBLASGUIDE">13</A>].
HREF="node27.html#PSBLASGUIDE">13</A>].
<P>
The setup and application of the default multi-level preconditioner
@ -294,26 +294,26 @@ setup of a one-level Schwarz preconditioner.</CAPTION>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html241"
<A NAME="tex2html243"
HREF="node15.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html237"
<A NAME="tex2html239"
HREF="node13.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html233"
<A NAME="tex2html235"
HREF="node13.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html239"
<A NAME="tex2html241"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html242"
<B> Next:</B> <A NAME="tex2html244"
HREF="node15.html">User Interface</A>
<B> Up:</B> <A NAME="tex2html238"
<B> Up:</B> <A NAME="tex2html240"
HREF="node13.html">Getting Started</A>
<B> Previous:</B> <A NAME="tex2html234"
<B> Previous:</B> <A NAME="tex2html236"
HREF="node13.html">Getting Started</A>
&nbsp; <B> <A NAME="tex2html240"
&nbsp; <B> <A NAME="tex2html242"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html253"
<A NAME="tex2html255"
HREF="node16.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html249"
<A NAME="tex2html251"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html243"
<A NAME="tex2html245"
HREF="node14.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html251"
<A NAME="tex2html253"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html254"
<B> Next:</B> <A NAME="tex2html256"
HREF="node16.html">Subroutine init</A>
<B> Up:</B> <A NAME="tex2html250"
<B> Up:</B> <A NAME="tex2html252"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html244"
<B> Previous:</B> <A NAME="tex2html246"
HREF="node14.html">Examples</A>
&nbsp; <B> <A NAME="tex2html252"
&nbsp; <B> <A NAME="tex2html254"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -115,46 +115,46 @@ A description of each routine is given in the remainder of this section.
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html255"
<LI><A NAME="tex2html257"
HREF="node16.html">Subroutine init</A>
<LI><A NAME="tex2html256"
<LI><A NAME="tex2html258"
HREF="node17.html">Subroutine set</A>
<LI><A NAME="tex2html257"
<LI><A NAME="tex2html259"
HREF="node18.html">Subroutine build</A>
<LI><A NAME="tex2html258"
<LI><A NAME="tex2html260"
HREF="node19.html">Subroutine hierarchy_build</A>
<LI><A NAME="tex2html259"
<LI><A NAME="tex2html261"
HREF="node20.html">Subroutine smoothers_build</A>
<LI><A NAME="tex2html260"
<LI><A NAME="tex2html262"
HREF="node21.html">Subroutine apply</A>
<LI><A NAME="tex2html261"
<LI><A NAME="tex2html263"
HREF="node22.html">Subroutine free</A>
<LI><A NAME="tex2html262"
<LI><A NAME="tex2html264"
HREF="node23.html">Subroutine descr</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<!--Navigation Panel-->
<A NAME="tex2html253"
<A NAME="tex2html255"
HREF="node16.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html249"
<A NAME="tex2html251"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html243"
<A NAME="tex2html245"
HREF="node14.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html251"
<A NAME="tex2html253"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html254"
<B> Next:</B> <A NAME="tex2html256"
HREF="node16.html">Subroutine init</A>
<B> Up:</B> <A NAME="tex2html250"
<B> Up:</B> <A NAME="tex2html252"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html244"
<B> Previous:</B> <A NAME="tex2html246"
HREF="node14.html">Examples</A>
&nbsp; <B> <A NAME="tex2html252"
&nbsp; <B> <A NAME="tex2html254"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html273"
<A NAME="tex2html275"
HREF="node17.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html269"
<A NAME="tex2html271"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html263"
<A NAME="tex2html265"
HREF="node15.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html271"
<A NAME="tex2html273"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html274"
<B> Next:</B> <A NAME="tex2html276"
HREF="node17.html">Subroutine set</A>
<B> Up:</B> <A NAME="tex2html270"
<B> Up:</B> <A NAME="tex2html272"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html264"
<B> Previous:</B> <A NAME="tex2html266"
HREF="node15.html">User Interface</A>
&nbsp; <B> <A NAME="tex2html272"
&nbsp; <B> <A NAME="tex2html274"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -86,7 +86,7 @@ This routine allocates and initializes the preconditioner
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
</TABLE>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html285"
<A NAME="tex2html287"
HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html281"
<A NAME="tex2html283"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html275"
<A NAME="tex2html277"
HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html283"
<A NAME="tex2html285"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html286"
<B> Next:</B> <A NAME="tex2html288"
HREF="node18.html">Subroutine build</A>
<B> Up:</B> <A NAME="tex2html282"
<B> Up:</B> <A NAME="tex2html284"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html276"
<B> Previous:</B> <A NAME="tex2html278"
HREF="node16.html">Subroutine init</A>
&nbsp; <B> <A NAME="tex2html284"
&nbsp; <B> <A NAME="tex2html286"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -97,7 +97,7 @@ contained in <code>val</code>.
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A>
for details.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>ilev</code></TD>
@ -240,7 +240,7 @@ solver is changed to the default sequential solver.
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="951"></A>
<DIV ALIGN="CENTER"><A NAME="950"></A>
<TABLE>
<CAPTION><STRONG>Table 2:</STRONG>
Parameters defining the multi-level cycle and the number of cycles to
@ -293,7 +293,7 @@ number <IMG
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="956"></A>
<DIV ALIGN="CENTER"><A NAME="955"></A>
<TABLE>
<CAPTION><STRONG>Table 3:</STRONG>
Parameters defining the aggregation algorithm.
@ -380,7 +380,7 @@ Currently, only the
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=196>Type of aggregation algorithm: currently, the scalar aggregation
algorithm by Vanek, Mandel and Brezina is implemented
[<A
HREF="node26.html#VANEK_MANDEL_BREZINA">25</A>].</TD>
HREF="node27.html#VANEK_MANDEL_BREZINA">25</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=111><code>'AGGR_PROL'</code></TD>
<TD ALIGN="LEFT"><code>character(len=*)</code></TD>
@ -408,7 +408,7 @@ of levels.</TD>
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="960"></A>
<DIV ALIGN="CENTER"><A NAME="959"></A>
<TABLE>
<CAPTION><STRONG>Table 4:</STRONG>
Parameters defining the aggregation algorithm (continued).
@ -460,7 +460,7 @@ number&nbsp;<IMG
</TR>
<TR><TD ALIGN="LEFT" COLSPAN=5><B>Note.</B> Different thresholds at different levels, such as
those used in [<A
HREF="node26.html#VANEK_MANDEL_BREZINA">25</A>, Section&nbsp;5.1], can be easily set by
HREF="node27.html#VANEK_MANDEL_BREZINA">25</A>, Section&nbsp;5.1], can be easily set by
invoking the rou-</TD>
</TR>
<TR><TD ALIGN="LEFT" COLSPAN=5>tine <TT>set</TT> with
@ -475,7 +475,7 @@ the parameter <TT>ilev</TT>.</TD>
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="965"></A>
<DIV ALIGN="CENTER"><A NAME="964"></A>
<TABLE>
<CAPTION><STRONG>Table 5:</STRONG>
Parameters defining the coarse-space correction at the coarsest
@ -583,7 +583,7 @@ Note that <TT>UMF</TT> and <TT>SLU</TT> require the coarsest
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="967"></A>
<DIV ALIGN="CENTER"><A NAME="966"></A>
<TABLE>
<CAPTION><STRONG>Table 6:</STRONG>
Parameters defining the coarse-space correction at the coarsest
@ -649,7 +649,7 @@ number <IMG
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="969"></A>
<DIV ALIGN="CENTER"><A NAME="968"></A>
<TABLE>
<CAPTION><STRONG>Table 7:</STRONG>
Parameters defining the smoother or the details of the one-level preconditioner.
@ -772,7 +772,7 @@ Parameters defining the smoother or the details of the one-level preconditioner.
<P>
<BR><P></P>
<DIV ALIGN="CENTER"><A NAME="971"></A>
<DIV ALIGN="CENTER"><A NAME="970"></A>
<TABLE>
<CAPTION><STRONG>Table 8:</STRONG>
Parameters defining the smoother or the details of the one-level preconditioner
@ -872,26 +872,26 @@ Parameters defining the smoother or the details of the one-level preconditioner
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html285"
<A NAME="tex2html287"
HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html281"
<A NAME="tex2html283"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html275"
<A NAME="tex2html277"
HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html283"
<A NAME="tex2html285"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html286"
<B> Next:</B> <A NAME="tex2html288"
HREF="node18.html">Subroutine build</A>
<B> Up:</B> <A NAME="tex2html282"
<B> Up:</B> <A NAME="tex2html284"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html276"
<B> Previous:</B> <A NAME="tex2html278"
HREF="node16.html">Subroutine init</A>
&nbsp; <B> <A NAME="tex2html284"
&nbsp; <B> <A NAME="tex2html286"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html297"
<A NAME="tex2html299"
HREF="node19.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html293"
<A NAME="tex2html295"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html287"
<A NAME="tex2html289"
HREF="node17.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html295"
<A NAME="tex2html297"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html298"
<B> Next:</B> <A NAME="tex2html300"
HREF="node19.html">Subroutine hierarchy_build</A>
<B> Up:</B> <A NAME="tex2html294"
<B> Up:</B> <A NAME="tex2html296"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html288"
<B> Previous:</B> <A NAME="tex2html290"
HREF="node17.html">Subroutine set</A>
&nbsp; <B> <A NAME="tex2html296"
&nbsp; <B> <A NAME="tex2html298"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -81,7 +81,7 @@ made by the user through the routines <code>init</code> and <code>set</code>
matrix to be preconditioned. Note that <I>x</I> must be chosen according
to the real/complex, single/double precision version of MLD2P4 under use.
See the PSBLAS User's Guide for details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>desc_a</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>type(psb_desc_type), intent(in)</code>.</TD>
@ -89,13 +89,13 @@ made by the user through the routines <code>init</code> and <code>set</code>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>The communication descriptor of <code>a</code>. See the PSBLAS User's Guide for
details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>info</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
</TABLE>
@ -117,26 +117,26 @@ In this case, the routine can be used to build multi-level preconditioners too.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html297"
<A NAME="tex2html299"
HREF="node19.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html293"
<A NAME="tex2html295"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html287"
<A NAME="tex2html289"
HREF="node17.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html295"
<A NAME="tex2html297"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html298"
<B> Next:</B> <A NAME="tex2html300"
HREF="node19.html">Subroutine hierarchy_build</A>
<B> Up:</B> <A NAME="tex2html294"
<B> Up:</B> <A NAME="tex2html296"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html288"
<B> Previous:</B> <A NAME="tex2html290"
HREF="node17.html">Subroutine set</A>
&nbsp; <B> <A NAME="tex2html296"
&nbsp; <B> <A NAME="tex2html298"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html309"
<A NAME="tex2html311"
HREF="node20.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html305"
<A NAME="tex2html307"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html299"
<A NAME="tex2html301"
HREF="node18.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html307"
<A NAME="tex2html309"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html310"
<B> Next:</B> <A NAME="tex2html312"
HREF="node20.html">Subroutine smoothers_build</A>
<B> Up:</B> <A NAME="tex2html306"
<B> Up:</B> <A NAME="tex2html308"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html300"
<B> Previous:</B> <A NAME="tex2html302"
HREF="node18.html">Subroutine build</A>
&nbsp; <B> <A NAME="tex2html308"
&nbsp; <B> <A NAME="tex2html310"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -82,7 +82,7 @@ made by the user through the routines <code>init</code> and <code>set</code>.
to the real/complex,
single/double precision version of MLD2P4 under use.
See the PSBLAS User's Guide for details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>desc_a</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>type(psb_desc_type), intent(in)</code>.</TD>
@ -90,13 +90,13 @@ single/double precision version of MLD2P4 under use.
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>The communication descriptor of <code>a</code>. See the PSBLAS User's Guide for
details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>info</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
</TABLE>

@ -26,21 +26,21 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html72"
<A NAME="tex2html73"
HREF="node3.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html70"
<A NAME="tex2html71"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html64"
<A NAME="tex2html65"
HREF="node1.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html73"
<B> Next:</B> <A NAME="tex2html74"
HREF="node3.html">General Overview</A>
<B> Up:</B> <A NAME="tex2html71"
<B> Up:</B> <A NAME="tex2html72"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html65"
<B> Previous:</B> <A NAME="tex2html66"
HREF="node1.html">Abstract</A>
<BR>
<BR>
@ -53,66 +53,68 @@ Contents</A>
<!--Table of Contents-->
<UL>
<LI><A NAME="tex2html74"
HREF="node3.html">General Overview</A>
<LI><A NAME="tex2html75"
HREF="node4.html">Code Distribution</A>
HREF="node3.html">General Overview</A>
<LI><A NAME="tex2html76"
HREF="node4.html">Code Distribution</A>
<LI><A NAME="tex2html77"
HREF="node5.html">Configuring and Building MLD2P4</A>
<UL>
<LI><A NAME="tex2html77"
HREF="node6.html">Prerequisites</A>
<LI><A NAME="tex2html78"
HREF="node7.html">Optional third party libraries</A>
HREF="node6.html">Prerequisites</A>
<LI><A NAME="tex2html79"
HREF="node8.html">Configuration options</A>
HREF="node7.html">Optional third party libraries</A>
<LI><A NAME="tex2html80"
HREF="node9.html">Bug reporting</A>
HREF="node8.html">Configuration options</A>
<LI><A NAME="tex2html81"
HREF="node9.html">Bug reporting</A>
<LI><A NAME="tex2html82"
HREF="node10.html">Example and test programs</A>
</UL>
<BR>
<LI><A NAME="tex2html82"
<LI><A NAME="tex2html83"
HREF="node11.html">Multigrid Background</A>
<UL>
<LI><A NAME="tex2html83"
<LI><A NAME="tex2html84"
HREF="node12.html">AMG preconditioners</A>
</UL>
<BR>
<LI><A NAME="tex2html84"
<LI><A NAME="tex2html85"
HREF="node13.html">Getting Started</A>
<UL>
<LI><A NAME="tex2html85"
<LI><A NAME="tex2html86"
HREF="node14.html">Examples</A>
</UL>
<BR>
<LI><A NAME="tex2html86"
<LI><A NAME="tex2html87"
HREF="node15.html">User Interface</A>
<UL>
<LI><A NAME="tex2html87"
HREF="node16.html">Subroutine init</A>
<LI><A NAME="tex2html88"
HREF="node17.html">Subroutine set</A>
HREF="node16.html">Subroutine init</A>
<LI><A NAME="tex2html89"
HREF="node18.html">Subroutine build</A>
HREF="node17.html">Subroutine set</A>
<LI><A NAME="tex2html90"
HREF="node19.html">Subroutine hierarchy_build</A>
HREF="node18.html">Subroutine build</A>
<LI><A NAME="tex2html91"
HREF="node20.html">Subroutine smoothers_build</A>
HREF="node19.html">Subroutine hierarchy_build</A>
<LI><A NAME="tex2html92"
HREF="node21.html">Subroutine apply</A>
HREF="node20.html">Subroutine smoothers_build</A>
<LI><A NAME="tex2html93"
HREF="node22.html">Subroutine free</A>
HREF="node21.html">Subroutine apply</A>
<LI><A NAME="tex2html94"
HREF="node22.html">Subroutine free</A>
<LI><A NAME="tex2html95"
HREF="node23.html">Subroutine descr</A>
</UL>
<BR>
<LI><A NAME="tex2html95"
HREF="node24.html">Error Handling</A>
<LI><A NAME="tex2html96"
HREF="node25.html">License</A>
HREF="node24.html">Adding new smoother and solver objects to MLD2P4</A>
<LI><A NAME="tex2html97"
HREF="node26.html">Bibliography</A>
HREF="node25.html">Error Handling</A>
<LI><A NAME="tex2html98"
HREF="node26.html">License</A>
<LI><A NAME="tex2html99"
HREF="node27.html">Bibliography</A>
</UL>
<!--End of Table of Contents-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html321"
<A NAME="tex2html323"
HREF="node21.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html317"
<A NAME="tex2html319"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html311"
<A NAME="tex2html313"
HREF="node19.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html319"
<A NAME="tex2html321"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html322"
<B> Next:</B> <A NAME="tex2html324"
HREF="node21.html">Subroutine apply</A>
<B> Up:</B> <A NAME="tex2html318"
<B> Up:</B> <A NAME="tex2html320"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html312"
<B> Previous:</B> <A NAME="tex2html314"
HREF="node19.html">Subroutine hierarchy_build</A>
&nbsp; <B> <A NAME="tex2html320"
&nbsp; <B> <A NAME="tex2html322"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -83,7 +83,7 @@ hierarchy produced by a previous call to <code>hierarchy_build</code>
matrix to be preconditioned. Note that <I>x</I> must be chosen according
to the real/complex, single/double precision version of MLD2P4 under use.
See the PSBLAS User's Guide for details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>desc_a</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>type(psb_desc_type), intent(in)</code>.</TD>
@ -91,13 +91,13 @@ hierarchy produced by a previous call to <code>hierarchy_build</code>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>The communication descriptor of <code>a</code>. See the PSBLAS User's Guide for
details [<A
HREF="node26.html#PSBLASGUIDE">13</A>].</TD>
HREF="node27.html#PSBLASGUIDE">13</A>].</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>info</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
</TABLE>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html333"
<A NAME="tex2html335"
HREF="node22.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html329"
<A NAME="tex2html331"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html323"
<A NAME="tex2html325"
HREF="node20.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html331"
<A NAME="tex2html333"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html334"
<B> Next:</B> <A NAME="tex2html336"
HREF="node22.html">Subroutine free</A>
<B> Up:</B> <A NAME="tex2html330"
<B> Up:</B> <A NAME="tex2html332"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html324"
<B> Previous:</B> <A NAME="tex2html326"
HREF="node20.html">Subroutine smoothers_build</A>
&nbsp; <B> <A NAME="tex2html332"
&nbsp; <B> <A NAME="tex2html334"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -122,7 +122,7 @@ and hence it is completely transparent to the user.
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>trans</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>character(len=1), optional, intent(in).</code></TD>
@ -183,26 +183,26 @@ as follows:
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html333"
<A NAME="tex2html335"
HREF="node22.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html329"
<A NAME="tex2html331"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html323"
<A NAME="tex2html325"
HREF="node20.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html331"
<A NAME="tex2html333"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html334"
<B> Next:</B> <A NAME="tex2html336"
HREF="node22.html">Subroutine free</A>
<B> Up:</B> <A NAME="tex2html330"
<B> Up:</B> <A NAME="tex2html332"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html324"
<B> Previous:</B> <A NAME="tex2html326"
HREF="node20.html">Subroutine smoothers_build</A>
&nbsp; <B> <A NAME="tex2html332"
&nbsp; <B> <A NAME="tex2html334"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html345"
<A NAME="tex2html347"
HREF="node23.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html341"
<A NAME="tex2html343"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html335"
<A NAME="tex2html337"
HREF="node21.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html343"
<A NAME="tex2html345"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html346"
<B> Next:</B> <A NAME="tex2html348"
HREF="node23.html">Subroutine descr</A>
<B> Up:</B> <A NAME="tex2html342"
<B> Up:</B> <A NAME="tex2html344"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html336"
<B> Previous:</B> <A NAME="tex2html338"
HREF="node21.html">Subroutine apply</A>
&nbsp; <B> <A NAME="tex2html344"
&nbsp; <B> <A NAME="tex2html346"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -75,7 +75,7 @@ This routine deallocates the preconditioner data structure <code>p</code>.
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=298><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=298>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=298>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
</TABLE>

@ -25,26 +25,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html355"
<A NAME="tex2html357"
HREF="node24.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html351"
<A NAME="tex2html353"
HREF="node15.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html347"
<A NAME="tex2html349"
HREF="node22.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html353"
<A NAME="tex2html355"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html356"
HREF="node24.html">Error Handling</A>
<B> Up:</B> <A NAME="tex2html352"
<B> Next:</B> <A NAME="tex2html358"
HREF="node24.html">Adding new smoother and</A>
<B> Up:</B> <A NAME="tex2html354"
HREF="node15.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html348"
<B> Previous:</B> <A NAME="tex2html350"
HREF="node22.html">Subroutine free</A>
&nbsp; <B> <A NAME="tex2html354"
&nbsp; <B> <A NAME="tex2html356"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -76,7 +76,7 @@ or <code>build</code>, have been called.
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(out)</code>.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node24.html#sec:errors">7</A> for details.</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>Error code. If no error, 0 is returned. See Section&nbsp;<A HREF="node25.html#sec:errors">8</A> for details.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=34><code>iout</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>integer, intent(in), optional</code>.</TD>
@ -99,6 +99,9 @@ as follows:
<P>
<P>
<P>
<BR><HR>
</BODY>

@ -7,8 +7,8 @@ original version by: Nikos Drakos, CBLU, University of Leeds
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Error Handling</TITLE>
<META NAME="description" CONTENT="Error Handling">
<TITLE>Adding new smoother and solver objects to MLD2P4</TITLE>
<META NAME="description" CONTENT="Adding new smoother and solver objects to MLD2P4">
<META NAME="keywords" CONTENT="userhtml">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
@ -26,53 +26,157 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html367"
<A NAME="tex2html369"
HREF="node25.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html363"
<A NAME="tex2html365"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html357"
<A NAME="tex2html359"
HREF="node23.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html365"
<A NAME="tex2html367"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html368"
HREF="node25.html">License</A>
<B> Up:</B> <A NAME="tex2html364"
<B> Next:</B> <A NAME="tex2html370"
HREF="node25.html">Error Handling</A>
<B> Up:</B> <A NAME="tex2html366"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html358"
<B> Previous:</B> <A NAME="tex2html360"
HREF="node23.html">Subroutine descr</A>
&nbsp; <B> <A NAME="tex2html366"
&nbsp; <B> <A NAME="tex2html368"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION00090000000000000000"></A><A NAME="sec:errors"></A>
<H1><A NAME="SECTION00090000000000000000"></A><A NAME="sec:adding"></A>
<BR>
Error Handling
Adding new smoother and solver objects to MLD2P4
</H1>
<P>
The error handling in MLD2P4 is based on the PSBLAS (version 2) error
handling. Error conditions are signaled via an integer argument
<code>info</code>; whenever an error condition is detected, an error trace
stack is built by the library up to the top-level, user-callable
routine. This routine will then decide, according to the user
preferences, whether the error should be handled by terminating the
program or by returning the error condition to the user code, which
will then take action, and whether
an error message should be printed. These options may be set by using
the PSBLAS error handling routines; for further details see the PSBLAS
User's Guide [<A
HREF="node26.html#PSBLASGUIDE">13</A>].
Developers can add completely new smoother and/or solver classes
derived from the base objects in the library (see Remark&nbsp;2 in Section&nbsp;<A HREF="node17.html#sec:precset">6.2</A>),
without recompiling the library itself.
<P>
To do so, it is necessary first to select the base type to be extended.
In our experience, it is quite likely that the new application needs
only the definition of a ``solver'' object, which is almost
always acting only on the local part of the distributed matrix.
The parallel actions required to connect the various solver objects
are most often already provided by the block-Jacobi or the additive
Schwarz smoothers. To define a new solver, the developer will then
have to define its components and methods, perhaps taking one of the
predefined solvers as a starting point, if possible.
<P>
Once the new smoother/solver class has been developed, to use it in
the context of the multilevel preconditioners it is necessary to:
<UL>
<LI>declare in the application program a variable of the new type;
</LI>
<LI>pass that variable as the argument to the <code>set</code> routine as in the
following:
<DIV ALIGN="CENTER">
<code>call p%set(smoother,info [,ilev,ilmax,pos])</code>
<BR><code>call p%set(solver,info [,ilev,ilmax,pos])</code>
</DIV>
</LI>
<LI>link the code implementing the various methods into the application executable.
</LI>
</UL>
The new solver object is then dynamically included in the
preconditioner structure, and acts as a <I>mold</I> to which the
preconditioner will conform, even though the MLD2P4 library has not
been modified to account for this new development.
<BR><HR>
<P>
It is possible to define new values for the keyword <code>WHAT</code> in the
<code>set</code> routine; if the library code does not recognize a keyword,
it passes it down the composition hierarchy (levels containing
smoothers containing in turn solvers), so that it can be eventually caught by
the new solver.
<P>
An example is provided in the source code distribution under the
folder <code>tests/newslv</code>. In this example we are implementing a new
incomplete factorization variant (which is simply the ILU(0)
factorization under a new name). Because of the specifics of this case, it is
possible to reuse the basic structure of the ILU solver, with its
L/D/U components and the methods needed to apply the solver; only a
few methods, such as the description and most importantly the build,
need to be ovverridden (rewritten).
<P>
The interfaces for the calls shown above are defined using
<DIV ALIGN="CENTER">
<TABLE CELLPADDING=3>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=40><code>smoother</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>class(mld_x_base_smoother_type)</code></TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=40>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>The user-defined new smoother to be employed in the
preconditioner.</TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=40><code>solver</code></TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340><code>class(mld_x_base_solver_type)</code></TD>
</TR>
<TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=40>&nbsp;</TD>
<TD ALIGN="LEFT" VALIGN="TOP" WIDTH=340>The user-defined new solver to be employed in the
preconditioner.</TD>
</TR>
</TABLE>
</DIV>
The other arguments are defined in the way described in
Sec.&nbsp;<A HREF="node17.html#sec:precset">6.2</A>. As an example, in the <code>tests/newslv</code>
code we define a new object of type <code>mld_d_tlu_solver_type</code>, and
we pass it as follows:
<PRE>
! sparse matrix and preconditioner
type(psb_dspmat_type) :: a
type(mld_dprec_type) :: prec
type(mld_d_tlu_solver_type) :: tlusv
......
!
! prepare the preconditioner: an ML with defaults, but with TLU solver at
! intermediate levels. All other parameters are at default values.
!
call prec%init('ML', info)
call prec%hierarchy_build(a,desc_a,info)
nlv = prec%get_nlevs()
call prec%set(tlusv, info,ilev=1,ilmax=max(1,nlv-1))
call prec%smoothers_build(a,desc_a,info)
</PRE>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html369"
HREF="node25.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html365"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html359"
HREF="node23.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html367"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html370"
HREF="node25.html">Error Handling</A>
<B> Up:</B> <A NAME="tex2html366"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html360"
HREF="node23.html">Subroutine descr</A>
&nbsp; <B> <A NAME="tex2html368"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->
</BODY>
</HTML>

@ -7,8 +7,8 @@ original version by: Nikos Drakos, CBLU, University of Leeds
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>License</TITLE>
<META NAME="description" CONTENT="License">
<TITLE>Error Handling</TITLE>
<META NAME="description" CONTENT="Error Handling">
<META NAME="keywords" CONTENT="userhtml">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
@ -26,77 +26,51 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html379"
<A NAME="tex2html381"
HREF="node26.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html375"
<A NAME="tex2html377"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html369"
<A NAME="tex2html371"
HREF="node24.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html377"
<A NAME="tex2html379"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html380"
HREF="node26.html">Bibliography</A>
<B> Up:</B> <A NAME="tex2html376"
<B> Next:</B> <A NAME="tex2html382"
HREF="node26.html">License</A>
<B> Up:</B> <A NAME="tex2html378"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html370"
HREF="node24.html">Error Handling</A>
&nbsp; <B> <A NAME="tex2html378"
<B> Previous:</B> <A NAME="tex2html372"
HREF="node24.html">Adding new smoother and</A>
&nbsp; <B> <A NAME="tex2html380"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION000100000000000000000"></A><A NAME="sec:license"></A>
<H1><A NAME="SECTION000100000000000000000"></A><A NAME="sec:errors"></A>
<BR>
License
Error Handling
</H1>
<P>
The MLD2P4 is freely distributable under the following copyright
terms: <PRE>
The error handling in MLD2P4 is based on the PSBLAS (version 2) error
handling. Error conditions are signaled via an integer argument
<code>info</code>; whenever an error condition is detected, an error trace
stack is built by the library up to the top-level, user-callable
routine. This routine will then decide, according to the user
preferences, whether the error should be handled by terminating the
program or by returning the error condition to the user code, which
will then take action, and whether
an error message should be printed. These options may be set by using
the PSBLAS error handling routines; for further details see the PSBLAS
User's Guide [<A
HREF="node27.html#PSBLASGUIDE">13</A>].
MLD2P4 version 2.1
MultiLevel Domain Decomposition Parallel Preconditioners Package
based on PSBLAS (Parallel Sparse BLAS version 3.4)
(C) Copyright 2008, 2010, 2012, 2017
Salvatore Filippone Cranfield University, Cranfield, UK
Ambra Abdullahi Hassan University of Rome Tor Vergata, Rome, IT
Alfredo Buttari CNRS-IRIT, Toulouse, FR
Pasqua D'Ambra IAC-CNR, Naples, IT
Daniela di Serafino University of Campania L. Vanvitelli, Caserta, IT
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions, and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the MLD2P4 group or the names of its contributors may
not be used to endorse or promote products derived from this
software without specific written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE MLD2P4 GROUP OR ITS CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
</PRE>
<P>
<BR><HR>

@ -7,8 +7,8 @@ original version by: Nikos Drakos, CBLU, University of Leeds
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Bibliography</TITLE>
<META NAME="description" CONTENT="Bibliography">
<TITLE>License</TITLE>
<META NAME="description" CONTENT="License">
<META NAME="keywords" CONTENT="userhtml">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
@ -26,153 +26,78 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html391"
<A NAME="tex2html393"
HREF="node27.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html387"
<A NAME="tex2html389"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html381"
<A NAME="tex2html383"
HREF="node25.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html389"
<A NAME="tex2html391"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html392"
HREF="node27.html">About this document ...</A>
<B> Up:</B> <A NAME="tex2html388"
<B> Next:</B> <A NAME="tex2html394"
HREF="node27.html">Bibliography</A>
<B> Up:</B> <A NAME="tex2html390"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html382"
HREF="node25.html">License</A>
&nbsp; <B> <A NAME="tex2html390"
<B> Previous:</B> <A NAME="tex2html384"
HREF="node25.html">Error Handling</A>
&nbsp; <B> <A NAME="tex2html392"
HREF="node2.html">Contents</A></B>
<BR><BR>
<BR>
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION000110000000000000000">
Bibliography</A>
</H2><DL COMPACT><DD>
<P>
<P></P><DT><A NAME="MUMPS">1</A>
<DD>
P.&nbsp;R.&nbsp;Amestoy, C.&nbsp;Ashcraft, O.&nbsp;Boiteau, A.&nbsp;Buttari, J.&nbsp;L'Excellent, C.&nbsp;Weisbecker,
<EM>Improving multifrontal methods by means of block low-rank representations</EM>,
SIAM Journal on Scientific Computing, volume 37 (3), 2015, A1452-A1474.
See also <TT>http://mumps.enseeiht.fr</TT>. <P></P><DT><A NAME="BREZINA_VANEK">2</A>
<DD>
M.&nbsp;Brezina, P.&nbsp;Vanek,
<EM>A Black-Box Iterative Solver Based on a Two-Level Schwarz Method</EM>,
Computing, 63, 1999, 233-263. <P></P><DT><A NAME="Briggs2000">3</A>
<DD>
W.&nbsp;L.&nbsp;Briggs, V.&nbsp;E.&nbsp;Henson, S.&nbsp;F.&nbsp;McCormick,
<EM>A Multigrid Tutorial, Second Edition</EM>,
SIAM, 2000. <P></P><DT><A NAME="para_04">4</A>
<DD>
A.&nbsp;Buttari, P.&nbsp;D'Ambra, D.&nbsp;di Serafino, S.&nbsp;Filippone,
<EM>Extending PSBLAS to Build Parallel Schwarz Preconditioners</EM>,
in J.&nbsp;Dongarra, K.&nbsp;Madsen, J.&nbsp;Wasniewski, editors,
Proceedings of PARA&nbsp;04 Workshop on State of the Art
in Scientific Computing, Lecture Notes in Computer Science,
Springer, 2005, 593-602. <P></P><DT><A NAME="aaecc_07">5</A>
<DD>
A.&nbsp;Buttari, P.&nbsp;D'Ambra, D.&nbsp;di&nbsp;Serafino, S.&nbsp;Filippone,
<EM>2LEV-D2P4: a package of high-performance preconditioners
for scientific and engineering applications</EM>,
Applicable Algebra in Engineering, Communications and Computing,
18 (3) 2007, 223-239. <P></P><DT><A NAME="CAI_SARKIS">6</A>
<DD>
X.&nbsp;C.&nbsp;Cai, M.&nbsp;Sarkis,
<EM>A Restricted Additive Schwarz Preconditioner for General Sparse Linear Systems</EM>,
SIAM Journal on Scientific Computing, 21 (2), 1999, 792-797. <P></P><DT><A NAME="apnum_07">7</A>
<DD>
P.&nbsp;D'Ambra, S.&nbsp;Filippone, D.&nbsp;di&nbsp;Serafino,
<EM>On the Development of PSBLAS-based Parallel Two-level Schwarz Preconditioners</EM>,
Applied Numerical Mathematics, Elsevier Science,
57 (11-12), 2007, 1181-1196. <P></P><DT><A NAME="MLD2P4_TOMS">8</A>
<DD>
P.&nbsp;D'Ambra, D.&nbsp;di&nbsp;Serafino, S.&nbsp;Filippone,
<I>MLD2P4: a Package of Parallel Multilevel
Algebraic Domain Decomposition Preconditioners
in Fortran 95</I>, ACM Trans. Math. Softw., 37(3), 2010, art. 30. <P></P><DT><A NAME="UMFPACK">9</A>
<DD>
T.&nbsp;A.&nbsp;Davis,
<EM>Algorithm 832: UMFPACK - an Unsymmetric-pattern Multifrontal
Method with a Column Pre-ordering Strategy</EM>,
ACM Transactions on Mathematical Software, 30, 2004, 196-199.
(See also <TT>http://www.cise.ufl.edu/&nbsp;davis/</TT>) <P></P><DT><A NAME="SUPERLU">10</A>
<DD>
J.&nbsp;W.&nbsp;Demmel, S.&nbsp;C.&nbsp;Eisenstat, J.&nbsp;R.&nbsp;Gilbert, X.&nbsp;S.&nbsp;Li, J.&nbsp;W.&nbsp;H.&nbsp;Liu,
A supernodal approach to sparse partial pivoting,
SIAM Journal on Matrix Analysis and Applications, 20 (3), 1999, 720-755. <P></P><DT><A NAME="blas3">11</A>
<DD>
J.&nbsp;J.&nbsp;Dongarra, J.&nbsp;Du Croz, I.&nbsp;S.&nbsp;Duff, S.&nbsp;Hammarling,
<I>A set of Level 3 Basic Linear Algebra Subprograms</I>,
ACM Transactions on Mathematical Software, 16 (1) 1990, 1-17. <P></P><DT><A NAME="blas2">12</A>
<DD>
J.&nbsp;J.&nbsp;Dongarra, J.&nbsp;Du Croz, S.&nbsp;Hammarling, R.&nbsp;J.&nbsp;Hanson,
<I>An extended set of FORTRAN Basic Linear Algebra Subprograms</I>,
ACM Transactions on Mathematical Software, 14 (1) 1988, 1-17. <P></P><DT><A NAME="PSBLASGUIDE">13</A>
<DD>
S.&nbsp;Filippone, A.&nbsp;Buttari,
<EM>PSBLAS-3.0 User's Guide. A Reference Guide for the Parallel Sparse BLAS Library</EM>, 2012,
available from <TT>http://www.ce.uniroma2.it/psblas/</TT>. <P></P><DT><A NAME="PSBLAS3">14</A>
<DD>
S.&nbsp;Filippone, A.&nbsp;Buttari,
<EM>Object-Oriented Techniques for Sparse Matrix Computations in Fortran 2003</EM>.
ACM Transactions on on Mathematical Software, 38 (4), 2012, art.&nbsp;23. <P></P><DT><A NAME="psblas_00">15</A>
<DD>
S.&nbsp;Filippone, M.&nbsp;Colajanni,
<EM>PSBLAS: A Library for Parallel Linear Algebra
Computation on Sparse Matrices</EM>,
ACM Transactions on Mathematical Software, 26 (4), 2000, 527-550. <P></P><DT><A NAME="MPI2">16</A>
<DD>
W.&nbsp;Gropp, S.&nbsp;Huss-Lederman, A.&nbsp;Lumsdaine, E.&nbsp;Lusk, B.&nbsp;Nitzberg, W.&nbsp;Saphir, M.&nbsp;Snir,
<EM>MPI: The Complete Reference. Volume 2 - The MPI-2 Extensions</EM>,
MIT Press, 1998. <P></P><DT><A NAME="blas1">17</A>
<DD>
C.&nbsp;L.&nbsp;Lawson, R.&nbsp;J.&nbsp;Hanson, D.&nbsp;Kincaid, F.&nbsp;T.&nbsp;Krogh,
<I>Basic Linear Algebra Subprograms for FORTRAN usage</I>,
ACM Transactions on Mathematical Software, 5 (3), 1979, 308-323. <P></P><DT><A NAME="SUPERLUDIST">18</A>
<DD>
X.&nbsp;S.&nbsp;Li, J.&nbsp;W.&nbsp;Demmel,
<EM>SuperLU_DIST: A Scalable Distributed-memory
Sparse Direct Solver for Unsymmetric Linear Systems</EM>,
ACM Transactions on Mathematical Software, 29 (2), 2003, 110-140. <P></P><DT><A NAME="Notay2008">19</A>
<DD>
Y.&nbsp;Notay, P.&nbsp;S.&nbsp;Vassilevski,
<EM>Recursive Krylov-based multigrid cycles</EM>,
Numerical Linear Algebra with Applications, 15 (5), 2008, 473-487. <P></P><DT><A NAME="Saad_book">20</A>
<DD>
Y.&nbsp;Saad,
<EM>Iterative methods for sparse linear systems</EM>, 2nd edition, SIAM, 2003. <P></P><DT><A NAME="dd2_96">21</A>
<DD>
B.&nbsp;Smith, P.&nbsp;Bjorstad, W.&nbsp;Gropp,
<EM>Domain Decomposition: Parallel Multilevel Methods for Elliptic
Partial Differential Equations</EM>,
Cambridge University Press, 1996. <P></P><DT><A NAME="MPI1">22</A>
<DD>
M.&nbsp;Snir, S.&nbsp;Otto, S.&nbsp;Huss-Lederman, D.&nbsp;Walker, J.&nbsp;Dongarra,
<EM>MPI: The Complete Reference. Volume 1 - The MPI Core</EM>, second edition,
MIT Press, 1998. <P></P><DT><A NAME="Stuben_01">23</A>
<DD>
K.&nbsp;St&#252;ben,
<EM>An Introduction to Algebraic Multigrid</EM>,
in A.&nbsp;Sch&#252;ller, U.&nbsp;Trottenberg, C.&nbsp;Oosterlee, Multigrid,
Academic Press, 2001. <P></P><DT><A NAME="TUMINARO_TONG">24</A>
<DD>
R.&nbsp;S.&nbsp;Tuminaro, C.&nbsp;Tong,
<EM>Parallel Smoothed Aggregation Multigrid: Aggregation Strategies on Massively Parallel Machines</EM>, in J. Donnelley, editor, Proceedings of SuperComputing 2000, Dallas, 2000. <P></P><DT><A NAME="VANEK_MANDEL_BREZINA">25</A>
<DD>
P.&nbsp;Vanek, J.&nbsp;Mandel, M.&nbsp;Brezina,
<EM>Algebraic Multigrid by Smoothed Aggregation for Second and Fourth Order Elliptic Problems</EM>,
Computing, 56 (3) 1996, 179-196.
<H1><A NAME="SECTION000110000000000000000"></A><A NAME="sec:license"></A>
<BR>
License
</H1>
<P>
</DL>
The MLD2P4 is freely distributable under the following copyright
terms: <PRE>
MLD2P4 version 2.1
MultiLevel Domain Decomposition Parallel Preconditioners Package
based on PSBLAS (Parallel Sparse BLAS version 3.4)
(C) Copyright 2008, 2010, 2012, 2017
Salvatore Filippone Cranfield University, Cranfield, UK
Ambra Abdullahi Hassan University of Rome Tor Vergata, Rome, IT
Alfredo Buttari CNRS-IRIT, Toulouse, FR
Pasqua D'Ambra IAC-CNR, Naples, IT
Daniela di Serafino University of Campania L. Vanvitelli, Caserta, IT
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions, and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the MLD2P4 group or the names of its contributors may
not be used to endorse or promote products derived from this
software without specific written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE MLD2P4 GROUP OR ITS CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
</PRE>
<P>
<BR><HR>
</BODY>

@ -7,8 +7,8 @@ original version by: Nikos Drakos, CBLU, University of Leeds
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>About this document ...</TITLE>
<META NAME="description" CONTENT="About this document ...">
<TITLE>Bibliography</TITLE>
<META NAME="description" CONTENT="Bibliography">
<META NAME="keywords" CONTENT="userhtml">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
@ -18,52 +18,161 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<LINK REL="STYLESHEET" HREF="userhtml.css">
<LINK REL="next" HREF="node28.html">
<LINK REL="previous" HREF="node26.html">
<LINK REL="up" HREF="userhtml.html">
<LINK REL="next" HREF="node28.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next_g.png">
<A NAME="tex2html397"
<A NAME="tex2html405"
HREF="node28.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html401"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html393"
<A NAME="tex2html395"
HREF="node26.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html399"
<A NAME="tex2html403"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Up:</B> <A NAME="tex2html398"
<B> Next:</B> <A NAME="tex2html406"
HREF="node28.html">About this document ...</A>
<B> Up:</B> <A NAME="tex2html402"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html394"
HREF="node26.html">Bibliography</A>
&nbsp; <B> <A NAME="tex2html400"
<B> Previous:</B> <A NAME="tex2html396"
HREF="node26.html">License</A>
&nbsp; <B> <A NAME="tex2html404"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
<BR><BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION000120000000000000000">
Bibliography</A>
</H2><DL COMPACT><DD>
<H1><A NAME="SECTION000120000000000000000">
About this document ...</A>
</H1>
<P>
This document was generated using the
<A HREF="http://www.latex2html.org/"><STRONG>LaTeX</STRONG>2<tt>HTML</tt></A> translator Version 2012 (1.2)
<P>
Copyright &#169; 1993, 1994, 1995, 1996,
<A HREF="http://cbl.leeds.ac.uk/nikos/personal.html">Nikos Drakos</A>,
Computer Based Learning Unit, University of Leeds.
<BR>
Copyright &#169; 1997, 1998, 1999,
<A HREF="http://www.maths.mq.edu.au/~ross/">Ross Moore</A>,
Mathematics Department, Macquarie University, Sydney.
<P></P><DT><A NAME="MUMPS">1</A>
<DD>
P.&nbsp;R.&nbsp;Amestoy, C.&nbsp;Ashcraft, O.&nbsp;Boiteau, A.&nbsp;Buttari, J.&nbsp;L'Excellent, C.&nbsp;Weisbecker,
<EM>Improving multifrontal methods by means of block low-rank representations</EM>,
SIAM Journal on Scientific Computing, volume 37 (3), 2015, A1452-A1474.
See also <TT>http://mumps.enseeiht.fr</TT>. <P></P><DT><A NAME="BREZINA_VANEK">2</A>
<DD>
M.&nbsp;Brezina, P.&nbsp;Vanek,
<EM>A Black-Box Iterative Solver Based on a Two-Level Schwarz Method</EM>,
Computing, 63, 1999, 233-263. <P></P><DT><A NAME="Briggs2000">3</A>
<DD>
W.&nbsp;L.&nbsp;Briggs, V.&nbsp;E.&nbsp;Henson, S.&nbsp;F.&nbsp;McCormick,
<EM>A Multigrid Tutorial, Second Edition</EM>,
SIAM, 2000. <P></P><DT><A NAME="para_04">4</A>
<DD>
A.&nbsp;Buttari, P.&nbsp;D'Ambra, D.&nbsp;di Serafino, S.&nbsp;Filippone,
<EM>Extending PSBLAS to Build Parallel Schwarz Preconditioners</EM>,
in J.&nbsp;Dongarra, K.&nbsp;Madsen, J.&nbsp;Wasniewski, editors,
Proceedings of PARA&nbsp;04 Workshop on State of the Art
in Scientific Computing, Lecture Notes in Computer Science,
Springer, 2005, 593-602. <P></P><DT><A NAME="aaecc_07">5</A>
<DD>
A.&nbsp;Buttari, P.&nbsp;D'Ambra, D.&nbsp;di&nbsp;Serafino, S.&nbsp;Filippone,
<EM>2LEV-D2P4: a package of high-performance preconditioners
for scientific and engineering applications</EM>,
Applicable Algebra in Engineering, Communications and Computing,
18 (3) 2007, 223-239. <P></P><DT><A NAME="CAI_SARKIS">6</A>
<DD>
X.&nbsp;C.&nbsp;Cai, M.&nbsp;Sarkis,
<EM>A Restricted Additive Schwarz Preconditioner for General Sparse Linear Systems</EM>,
SIAM Journal on Scientific Computing, 21 (2), 1999, 792-797. <P></P><DT><A NAME="apnum_07">7</A>
<DD>
P.&nbsp;D'Ambra, S.&nbsp;Filippone, D.&nbsp;di&nbsp;Serafino,
<EM>On the Development of PSBLAS-based Parallel Two-level Schwarz Preconditioners</EM>,
Applied Numerical Mathematics, Elsevier Science,
57 (11-12), 2007, 1181-1196. <P></P><DT><A NAME="MLD2P4_TOMS">8</A>
<DD>
P.&nbsp;D'Ambra, D.&nbsp;di&nbsp;Serafino, S.&nbsp;Filippone,
<I>MLD2P4: a Package of Parallel Multilevel
Algebraic Domain Decomposition Preconditioners
in Fortran 95</I>, ACM Trans. Math. Softw., 37(3), 2010, art. 30. <P></P><DT><A NAME="UMFPACK">9</A>
<DD>
T.&nbsp;A.&nbsp;Davis,
<EM>Algorithm 832: UMFPACK - an Unsymmetric-pattern Multifrontal
Method with a Column Pre-ordering Strategy</EM>,
ACM Transactions on Mathematical Software, 30, 2004, 196-199.
(See also <TT>http://www.cise.ufl.edu/&nbsp;davis/</TT>) <P></P><DT><A NAME="SUPERLU">10</A>
<DD>
J.&nbsp;W.&nbsp;Demmel, S.&nbsp;C.&nbsp;Eisenstat, J.&nbsp;R.&nbsp;Gilbert, X.&nbsp;S.&nbsp;Li, J.&nbsp;W.&nbsp;H.&nbsp;Liu,
A supernodal approach to sparse partial pivoting,
SIAM Journal on Matrix Analysis and Applications, 20 (3), 1999, 720-755. <P></P><DT><A NAME="blas3">11</A>
<DD>
J.&nbsp;J.&nbsp;Dongarra, J.&nbsp;Du Croz, I.&nbsp;S.&nbsp;Duff, S.&nbsp;Hammarling,
<I>A set of Level 3 Basic Linear Algebra Subprograms</I>,
ACM Transactions on Mathematical Software, 16 (1) 1990, 1-17. <P></P><DT><A NAME="blas2">12</A>
<DD>
J.&nbsp;J.&nbsp;Dongarra, J.&nbsp;Du Croz, S.&nbsp;Hammarling, R.&nbsp;J.&nbsp;Hanson,
<I>An extended set of FORTRAN Basic Linear Algebra Subprograms</I>,
ACM Transactions on Mathematical Software, 14 (1) 1988, 1-17. <P></P><DT><A NAME="PSBLASGUIDE">13</A>
<DD>
S.&nbsp;Filippone, A.&nbsp;Buttari,
<EM>PSBLAS-3.0 User's Guide. A Reference Guide for the Parallel Sparse BLAS Library</EM>, 2012,
available from <TT>http://www.ce.uniroma2.it/psblas/</TT>. <P></P><DT><A NAME="PSBLAS3">14</A>
<DD>
S.&nbsp;Filippone, A.&nbsp;Buttari,
<EM>Object-Oriented Techniques for Sparse Matrix Computations in Fortran 2003</EM>.
ACM Transactions on on Mathematical Software, 38 (4), 2012, art.&nbsp;23. <P></P><DT><A NAME="psblas_00">15</A>
<DD>
S.&nbsp;Filippone, M.&nbsp;Colajanni,
<EM>PSBLAS: A Library for Parallel Linear Algebra
Computation on Sparse Matrices</EM>,
ACM Transactions on Mathematical Software, 26 (4), 2000, 527-550. <P></P><DT><A NAME="MPI2">16</A>
<DD>
W.&nbsp;Gropp, S.&nbsp;Huss-Lederman, A.&nbsp;Lumsdaine, E.&nbsp;Lusk, B.&nbsp;Nitzberg, W.&nbsp;Saphir, M.&nbsp;Snir,
<EM>MPI: The Complete Reference. Volume 2 - The MPI-2 Extensions</EM>,
MIT Press, 1998. <P></P><DT><A NAME="blas1">17</A>
<DD>
C.&nbsp;L.&nbsp;Lawson, R.&nbsp;J.&nbsp;Hanson, D.&nbsp;Kincaid, F.&nbsp;T.&nbsp;Krogh,
<I>Basic Linear Algebra Subprograms for FORTRAN usage</I>,
ACM Transactions on Mathematical Software, 5 (3), 1979, 308-323. <P></P><DT><A NAME="SUPERLUDIST">18</A>
<DD>
X.&nbsp;S.&nbsp;Li, J.&nbsp;W.&nbsp;Demmel,
<EM>SuperLU_DIST: A Scalable Distributed-memory
Sparse Direct Solver for Unsymmetric Linear Systems</EM>,
ACM Transactions on Mathematical Software, 29 (2), 2003, 110-140. <P></P><DT><A NAME="Notay2008">19</A>
<DD>
Y.&nbsp;Notay, P.&nbsp;S.&nbsp;Vassilevski,
<EM>Recursive Krylov-based multigrid cycles</EM>,
Numerical Linear Algebra with Applications, 15 (5), 2008, 473-487. <P></P><DT><A NAME="Saad_book">20</A>
<DD>
Y.&nbsp;Saad,
<EM>Iterative methods for sparse linear systems</EM>, 2nd edition, SIAM, 2003. <P></P><DT><A NAME="dd2_96">21</A>
<DD>
B.&nbsp;Smith, P.&nbsp;Bjorstad, W.&nbsp;Gropp,
<EM>Domain Decomposition: Parallel Multilevel Methods for Elliptic
Partial Differential Equations</EM>,
Cambridge University Press, 1996. <P></P><DT><A NAME="MPI1">22</A>
<DD>
M.&nbsp;Snir, S.&nbsp;Otto, S.&nbsp;Huss-Lederman, D.&nbsp;Walker, J.&nbsp;Dongarra,
<EM>MPI: The Complete Reference. Volume 1 - The MPI Core</EM>, second edition,
MIT Press, 1998. <P></P><DT><A NAME="Stuben_01">23</A>
<DD>
K.&nbsp;St&#252;ben,
<EM>An Introduction to Algebraic Multigrid</EM>,
in A.&nbsp;Sch&#252;ller, U.&nbsp;Trottenberg, C.&nbsp;Oosterlee, Multigrid,
Academic Press, 2001. <P></P><DT><A NAME="TUMINARO_TONG">24</A>
<DD>
R.&nbsp;S.&nbsp;Tuminaro, C.&nbsp;Tong,
<EM>Parallel Smoothed Aggregation Multigrid: Aggregation Strategies on Massively Parallel Machines</EM>, in J. Donnelley, editor, Proceedings of SuperComputing 2000, Dallas, 2000. <P></P><DT><A NAME="VANEK_MANDEL_BREZINA">25</A>
<DD>
P.&nbsp;Vanek, J.&nbsp;Mandel, M.&nbsp;Brezina,
<EM>Algebraic Multigrid by Smoothed Aggregation for Second and Fourth Order Elliptic Problems</EM>,
Computing, 56 (3) 1996, 179-196.
<P>
The command line arguments were: <BR>
<STRONG>latex2html</STRONG> <TT>-local_icons -noaddress -dir ../../html userhtml.tex</TT>
</DL>
<P>
The translation was initiated by Salvatore Filippone on 2017-07-17
<BR><HR>
</BODY>

@ -63,7 +63,7 @@ Mathematics Department, Macquarie University, Sydney.
The command line arguments were: <BR>
<STRONG>latex2html</STRONG> <TT>-local_icons -noaddress -dir ../../html userhtml.tex</TT>
<P>
The translation was initiated by Salvatore Filippone on 2017-05-16
The translation was initiated by Salvatore Filippone on 2017-07-19
<BR><HR>
</BODY>

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html108"
<A NAME="tex2html110"
HREF="node4.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html104"
<A NAME="tex2html106"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html98"
<A NAME="tex2html100"
HREF="node2.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html106"
<A NAME="tex2html108"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html109"
<B> Next:</B> <A NAME="tex2html111"
HREF="node4.html">Code Distribution</A>
<B> Up:</B> <A NAME="tex2html105"
<B> Up:</B> <A NAME="tex2html107"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html99"
<B> Previous:</B> <A NAME="tex2html101"
HREF="node2.html">Contents</A>
&nbsp; <B> <A NAME="tex2html107"
&nbsp; <B> <A NAME="tex2html109"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -60,9 +60,9 @@ General Overview
The M<SMALL>ULTI-</SMALL>L<SMALL>EVEL </SMALL>D<SMALL>OMAIN </SMALL>D<SMALL>ECOMPOSITION </SMALL>P<SMALL>ARALLEL </SMALL>P<SMALL>RECONDITIONERS </SMALL>P<SMALL>ACKAGE BASED ON
</SMALL>PSBLAS (MLD2P4) provides parallel Algebraic MultiGrid (AMG) and Domain
Decomposition preconditioners (see, e.g., [<A
HREF="node26.html#Briggs2000">3</A>,<A
HREF="node26.html#Stuben_01">23</A>,<A
HREF="node26.html#dd2_96">21</A>]),
HREF="node27.html#Briggs2000">3</A>,<A
HREF="node27.html#Stuben_01">23</A>,<A
HREF="node27.html#dd2_96">21</A>]),
to be used in the iterative solution of linear systems,
<BR>
<DIV ALIGN="RIGHT">
@ -95,8 +95,8 @@ multi-level cycles and smoothers widely used in multigrid methods.
The multi-level preconditioners implemented in MLD2P4 are obtained by combining
AMG cycles with smoothers and coarsest-level solvers. The V-, W-, and
K-cycles&nbsp;[<A
HREF="node26.html#Briggs2000">3</A>,<A
HREF="node26.html#Notay2008">19</A>] are available, which allow to define
HREF="node27.html#Briggs2000">3</A>,<A
HREF="node27.html#Notay2008">19</A>] are available, which allow to define
almost all the preconditioners in the package, including the multi-level hybrid
Schwarz ones; a specific cycle is implemented to obtain multi-level additive
Schwarz preconditioners. The Jacobi, hybridforward/backward Gauss-Seidel, block-Jacobi, and additive Schwarz methods
@ -104,8 +104,8 @@ are available as smoothers. An algebraic approach is used to generate a hierarch
coarse-level matrices and operators, without explicitly using any information on the
geometry of the original problem, e.g., the discretization of a PDE. To this end,
the smoothed aggregation technique&nbsp;[<A
HREF="node26.html#BREZINA_VANEK">2</A>,<A
HREF="node26.html#VANEK_MANDEL_BREZINA">25</A>]
HREF="node27.html#BREZINA_VANEK">2</A>,<A
HREF="node27.html#VANEK_MANDEL_BREZINA">25</A>]
is applied. Either exact or approximate solvers can be used on the coarsest-level
system. Specifically, different sparse LU factorizations from external
packages, and native incomplete LU factorizations and Jacobi, hybrid Gauss-Seidel,
@ -126,8 +126,8 @@ interface.
MLD2P4 has been designed to implement scalable and easy-to-use
multilevel preconditioners in the context of the PSBLAS (Parallel Sparse BLAS)
computational framework&nbsp;[<A
HREF="node26.html#psblas_00">15</A>,<A
HREF="node26.html#PSBLAS3">14</A>]. PSBLAS provides basic linear algebra
HREF="node27.html#psblas_00">15</A>,<A
HREF="node27.html#PSBLAS3">14</A>]. PSBLAS provides basic linear algebra
operators and data management facilities for distributed sparse matrices,
as well as parallel Krylov solvers which can be used with the MLD2P4 preconditioners.
The choice of PSBLAS has been mainly motivated by the need of having
@ -150,14 +150,14 @@ few black-box routines at the upper layer allow all users to easily
build and apply any preconditioner available in MLD2P4;
facilities are also available allowing expert users to extend the set of smoothers
and solvers for building new versions of the preconditioners (see
Section&nbsp;<A HREF="#sec:adding"><IMG ALIGN="BOTTOM" BORDER="1" ALT="[*]" SRC="crossref.png"></A>).
Section&nbsp;<A HREF="node24.html#sec:adding">7</A>).
<P>
We note that the user interface of MLD2P4 2.1 has been extended with respect to the
previous versions in order to separate the construction of the multi-level hierarchy from
the construction of the smoothers and solvers, and to allow for more flexibility
at each level. The software architecture described in&nbsp;[<A
HREF="node26.html#MLD2P4_TOMS">8</A>] has significantly
HREF="node27.html#MLD2P4_TOMS">8</A>] has significantly
evolved too, in order to fully exploit the Fortran&nbsp;2003 features implemented in PSBLAS 3.
However, compatibility with previous versions has been preserved.
@ -171,34 +171,34 @@ preconditioners with the Krylov solvers implemented in PSBLAS are reported
in&nbsp;Section&nbsp;<A HREF="node13.html#sec:started">5</A>, where the Fortran codes of a few sample programs
are also shown. A reference guide for the user interface routines is provided
in Section&nbsp;<A HREF="node15.html#sec:userinterface">6</A>. Information on the extension of the package
through the addition of new smoothers and solvers is reported in Section&nbsp;<A HREF="#sec:adding"><IMG ALIGN="BOTTOM" BORDER="1" ALT="[*]" SRC="crossref.png"></A>.
through the addition of new smoothers and solvers is reported in Section&nbsp;<A HREF="node24.html#sec:adding">7</A>.
The error handling mechanism used by the package
is briefly described in Section&nbsp;<A HREF="node24.html#sec:errors">7</A>. The copyright terms concerning the
distribution and modification of MLD2P4 are reported in Appendix&nbsp;<A HREF="node25.html#sec:license">A</A>.
is briefly described in Section&nbsp;<A HREF="node25.html#sec:errors">8</A>. The copyright terms concerning the
distribution and modification of MLD2P4 are reported in Appendix&nbsp;<A HREF="node26.html#sec:license">A</A>.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html108"
<A NAME="tex2html110"
HREF="node4.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html104"
<A NAME="tex2html106"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html98"
<A NAME="tex2html100"
HREF="node2.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html106"
<A NAME="tex2html108"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html109"
<B> Next:</B> <A NAME="tex2html111"
HREF="node4.html">Code Distribution</A>
<B> Up:</B> <A NAME="tex2html105"
<B> Up:</B> <A NAME="tex2html107"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html99"
<B> Previous:</B> <A NAME="tex2html101"
HREF="node2.html">Contents</A>
&nbsp; <B> <A NAME="tex2html107"
&nbsp; <B> <A NAME="tex2html109"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html120"
<A NAME="tex2html122"
HREF="node5.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html116"
<A NAME="tex2html118"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html110"
<A NAME="tex2html112"
HREF="node3.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html118"
<A NAME="tex2html120"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html121"
<B> Next:</B> <A NAME="tex2html123"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Up:</B> <A NAME="tex2html117"
<B> Up:</B> <A NAME="tex2html119"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html111"
<B> Previous:</B> <A NAME="tex2html113"
HREF="node3.html">General Overview</A>
&nbsp; <B> <A NAME="tex2html119"
&nbsp; <B> <A NAME="tex2html121"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -66,7 +66,7 @@ where contact points for further information can be also found.
<P>
The software is available under a modified BSD license, as specified
in Appendix&nbsp;<A HREF="node25.html#sec:license">A</A>; please note that some of the optional
in Appendix&nbsp;<A HREF="node26.html#sec:license">A</A>; please note that some of the optional
third party libraries may be licensed under a different and more
stringent license, most notably the GPL, and this should be taken into
account when treating derived works.

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html132"
<A NAME="tex2html134"
HREF="node6.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html128"
<A NAME="tex2html130"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html122"
<A NAME="tex2html124"
HREF="node4.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html130"
<A NAME="tex2html132"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html133"
<B> Next:</B> <A NAME="tex2html135"
HREF="node6.html">Prerequisites</A>
<B> Up:</B> <A NAME="tex2html129"
<B> Up:</B> <A NAME="tex2html131"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html123"
<B> Previous:</B> <A NAME="tex2html125"
HREF="node4.html">Code Distribution</A>
&nbsp; <B> <A NAME="tex2html131"
&nbsp; <B> <A NAME="tex2html133"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -88,40 +88,40 @@ optional software used by MLD2P4 is given in the next sections.
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html134"
<LI><A NAME="tex2html136"
HREF="node6.html">Prerequisites</A>
<LI><A NAME="tex2html135"
<LI><A NAME="tex2html137"
HREF="node7.html">Optional third party libraries</A>
<LI><A NAME="tex2html136"
<LI><A NAME="tex2html138"
HREF="node8.html">Configuration options</A>
<LI><A NAME="tex2html137"
<LI><A NAME="tex2html139"
HREF="node9.html">Bug reporting</A>
<LI><A NAME="tex2html138"
<LI><A NAME="tex2html140"
HREF="node10.html">Example and test programs</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<!--Navigation Panel-->
<A NAME="tex2html132"
<A NAME="tex2html134"
HREF="node6.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html128"
<A NAME="tex2html130"
HREF="userhtml.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html122"
<A NAME="tex2html124"
HREF="node4.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html130"
<A NAME="tex2html132"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html133"
<B> Next:</B> <A NAME="tex2html135"
HREF="node6.html">Prerequisites</A>
<B> Up:</B> <A NAME="tex2html129"
<B> Up:</B> <A NAME="tex2html131"
HREF="userhtml.html">userhtml</A>
<B> Previous:</B> <A NAME="tex2html123"
<B> Previous:</B> <A NAME="tex2html125"
HREF="node4.html">Code Distribution</A>
&nbsp; <B> <A NAME="tex2html131"
&nbsp; <B> <A NAME="tex2html133"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html149"
<A NAME="tex2html151"
HREF="node7.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html145"
<A NAME="tex2html147"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html139"
<A NAME="tex2html141"
HREF="node5.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html147"
<A NAME="tex2html149"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html150"
<B> Next:</B> <A NAME="tex2html152"
HREF="node7.html">Optional third party libraries</A>
<B> Up:</B> <A NAME="tex2html146"
<B> Up:</B> <A NAME="tex2html148"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html140"
<B> Previous:</B> <A NAME="tex2html142"
HREF="node5.html">Configuring and Building MLD2P4</A>
&nbsp; <B> <A NAME="tex2html148"
&nbsp; <B> <A NAME="tex2html150"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -61,9 +61,9 @@ The following base libraries are needed:
<DL>
<DT><STRONG>BLAS</STRONG></DT>
<DD>[<A
HREF="node26.html#blas3">11</A>,<A
HREF="node26.html#blas2">12</A>,<A
HREF="node26.html#blas1">17</A>] Many vendors provide optimized versions
HREF="node27.html#blas3">11</A>,<A
HREF="node27.html#blas2">12</A>,<A
HREF="node27.html#blas1">17</A>] Many vendors provide optimized versions
of BLAS; if no vendor version is
available for a given platform, the ATLAS software
(<TT><A NAME="tex2html1"
@ -86,15 +86,15 @@ in the make.inc file of the LAPACK library.
</DD>
<DT><STRONG>MPI</STRONG></DT>
<DD>[<A
HREF="node26.html#MPI2">16</A>,<A
HREF="node26.html#MPI1">22</A>] A version of MPI is available on most
HREF="node27.html#MPI2">16</A>,<A
HREF="node27.html#MPI1">22</A>] A version of MPI is available on most
high-performance computing systems.
</DD>
<DT><STRONG>PSBLAS</STRONG></DT>
<DD>[<A
HREF="node26.html#PSBLASGUIDE">13</A>,<A
HREF="node26.html#psblas_00">15</A>] Parallel Sparse BLAS (PSBLAS) is
HREF="node27.html#PSBLASGUIDE">13</A>,<A
HREF="node27.html#psblas_00">15</A>] Parallel Sparse BLAS (PSBLAS) is
available from <TT><A NAME="tex2html4"
HREF="www.ce.uniroma2.it/psblas">www.ce.uniroma2.it/psblas</A></TT>; version
3.5.0 (or later) is required. Indeed, all the prerequisites
@ -109,26 +109,26 @@ compiler as MLD2P4.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html149"
<A NAME="tex2html151"
HREF="node7.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html145"
<A NAME="tex2html147"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html139"
<A NAME="tex2html141"
HREF="node5.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html147"
<A NAME="tex2html149"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html150"
<B> Next:</B> <A NAME="tex2html152"
HREF="node7.html">Optional third party libraries</A>
<B> Up:</B> <A NAME="tex2html146"
<B> Up:</B> <A NAME="tex2html148"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html140"
<B> Previous:</B> <A NAME="tex2html142"
HREF="node5.html">Configuring and Building MLD2P4</A>
&nbsp; <B> <A NAME="tex2html148"
&nbsp; <B> <A NAME="tex2html150"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html161"
<A NAME="tex2html163"
HREF="node8.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html157"
<A NAME="tex2html159"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html151"
<A NAME="tex2html153"
HREF="node6.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html159"
<A NAME="tex2html161"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html162"
<B> Next:</B> <A NAME="tex2html164"
HREF="node8.html">Configuration options</A>
<B> Up:</B> <A NAME="tex2html158"
<B> Up:</B> <A NAME="tex2html160"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html152"
<B> Previous:</B> <A NAME="tex2html154"
HREF="node6.html">Prerequisites</A>
&nbsp; <B> <A NAME="tex2html160"
&nbsp; <B> <A NAME="tex2html162"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -65,7 +65,7 @@ for multi-level preconditioners may change to reflect their presence.
<DL>
<DT><STRONG>UMFPACK</STRONG></DT>
<DD>[<A
HREF="node26.html#UMFPACK">9</A>]
HREF="node27.html#UMFPACK">9</A>]
A sparse LU factorization package included in the SuiteSparse library, available from
<TT><A NAME="tex2html5"
HREF="faculty.cse.tamu.edu/davis/suitesparse.html">faculty.cse.tamu.edu/davis/suitesparse.html</A></TT>;
@ -76,7 +76,7 @@ for multi-level preconditioners may change to reflect their presence.
</DD>
<DT><STRONG>MUMPS</STRONG></DT>
<DD>[<A
HREF="node26.html#MUMPS">1</A>]
HREF="node27.html#MUMPS">1</A>]
A sparse LU factorization package available from <TT><A NAME="tex2html6"
HREF="mumps.enseeiht.fr">mumps.enseeiht.fr</A></TT>;
it provides sequential and parallel factorizations and triangular system solution
@ -85,7 +85,7 @@ for multi-level preconditioners may change to reflect their presence.
</DD>
<DT><STRONG>SuperLU</STRONG></DT>
<DD>[<A
HREF="node26.html#SUPERLU">10</A>]
HREF="node27.html#SUPERLU">10</A>]
A sparse LU factorization package available from
<TT><A NAME="tex2html7"
HREF="crd.lbl.gov/~xiaoye/SuperLU/">crd.lbl.gov/~xiaoye/SuperLU/</A></TT>; it provides sequential
@ -96,7 +96,7 @@ for multi-level preconditioners may change to reflect their presence.
</DD>
<DT><STRONG>SuperLU_Dist</STRONG></DT>
<DD>[<A
HREF="node26.html#SUPERLUDIST">18</A>]
HREF="node27.html#SUPERLUDIST">18</A>]
A sparse LU factorization package available
from the same site as SuperLU; it provides parallel factorization and
triangular system solution for double precision real and complex data.
@ -113,26 +113,26 @@ for multi-level preconditioners may change to reflect their presence.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html161"
<A NAME="tex2html163"
HREF="node8.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html157"
<A NAME="tex2html159"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html151"
<A NAME="tex2html153"
HREF="node6.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html159"
<A NAME="tex2html161"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html162"
<B> Next:</B> <A NAME="tex2html164"
HREF="node8.html">Configuration options</A>
<B> Up:</B> <A NAME="tex2html158"
<B> Up:</B> <A NAME="tex2html160"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html152"
<B> Previous:</B> <A NAME="tex2html154"
HREF="node6.html">Prerequisites</A>
&nbsp; <B> <A NAME="tex2html160"
&nbsp; <B> <A NAME="tex2html162"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html173"
<A NAME="tex2html175"
HREF="node9.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html169"
<A NAME="tex2html171"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html163"
<A NAME="tex2html165"
HREF="node7.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html171"
<A NAME="tex2html173"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html174"
<B> Next:</B> <A NAME="tex2html176"
HREF="node9.html">Bug reporting</A>
<B> Up:</B> <A NAME="tex2html170"
<B> Up:</B> <A NAME="tex2html172"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html164"
<B> Previous:</B> <A NAME="tex2html166"
HREF="node7.html">Optional third party libraries</A>
&nbsp; <B> <A NAME="tex2html172"
&nbsp; <B> <A NAME="tex2html174"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
@ -262,26 +262,26 @@ followed (optionally) by
make install
</PRE><HR>
<!--Navigation Panel-->
<A NAME="tex2html173"
<A NAME="tex2html175"
HREF="node9.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html169"
<A NAME="tex2html171"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html163"
<A NAME="tex2html165"
HREF="node7.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html171"
<A NAME="tex2html173"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html174"
<B> Next:</B> <A NAME="tex2html176"
HREF="node9.html">Bug reporting</A>
<B> Up:</B> <A NAME="tex2html170"
<B> Up:</B> <A NAME="tex2html172"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html164"
<B> Previous:</B> <A NAME="tex2html166"
HREF="node7.html">Optional third party libraries</A>
&nbsp; <B> <A NAME="tex2html172"
&nbsp; <B> <A NAME="tex2html174"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -26,26 +26,26 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html185"
<A NAME="tex2html187"
HREF="node10.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html181"
<A NAME="tex2html183"
HREF="node5.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html175"
<A NAME="tex2html177"
HREF="node8.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html183"
<A NAME="tex2html185"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html186"
<B> Next:</B> <A NAME="tex2html188"
HREF="node10.html">Example and test programs</A>
<B> Up:</B> <A NAME="tex2html182"
<B> Up:</B> <A NAME="tex2html184"
HREF="node5.html">Configuring and Building MLD2P4</A>
<B> Previous:</B> <A NAME="tex2html176"
<B> Previous:</B> <A NAME="tex2html178"
HREF="node8.html">Configuration options</A>
&nbsp; <B> <A NAME="tex2html184"
&nbsp; <B> <A NAME="tex2html186"
HREF="node2.html">Contents</A></B>
<BR>
<BR>

@ -136,13 +136,15 @@ Feb. 28, 2017
</UL>
<BR>
<LI><A NAME="tex2html48"
HREF="node24.html">Error Handling</A>
HREF="node24.html">Adding new smoother and solver objects to MLD2P4</A>
<LI><A NAME="tex2html49"
HREF="node25.html">License</A>
HREF="node25.html">Error Handling</A>
<LI><A NAME="tex2html50"
HREF="node26.html">Bibliography</A>
HREF="node26.html">License</A>
<LI><A NAME="tex2html51"
HREF="node27.html">About this document ...</A>
HREF="node27.html">Bibliography</A>
<LI><A NAME="tex2html52"
HREF="node28.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>

File diff suppressed because it is too large Load Diff

@ -85,7 +85,7 @@
TOPFILE = userguide.tex
HTMLFILE = userhtml.tex
SECFILE = abstract.tex overview.tex distribution.tex \
SECFILE = abstract.tex overview.tex distribution.tex newobjects.tex\
building.tex background.tex gettingstarted.tex userinterface.tex \
errors.tex bibliography.tex license.tex
FIGDIR = figures

Loading…
Cancel
Save