Changes to docs to highlight new stuff in MLD internals.

This commit is contained in:
Salvatore Filippone
2018-01-16 12:26:54 +00:00
parent 5783117209
commit 46355253a5
42 changed files with 6983 additions and 5801 deletions
+49 -50
View File
@@ -1,10 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--Converted with LaTeX2HTML 2012 (1.2)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<!--Converted with LaTeX2HTML 2017.2 (Released Jan 23, 2017) -->
<HTML>
<HEAD>
<TITLE>Examples</TITLE>
@@ -13,7 +9,7 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2012">
<META NAME="Generator" CONTENT="LaTeX2HTML v2017.2">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="userhtml.css">
@@ -24,38 +20,39 @@ original version by: Nikos Drakos, CBLU, University of Leeds
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html287"
<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html294"
HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html283"
<A NAME="tex2html290"
HREF="node16.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html279"
<A NAME="tex2html286"
HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html285"
<A NAME="tex2html292"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html288"
<B> Next:</B> <A NAME="tex2html295"
HREF="node18.html">User Interface</A>
<B> Up:</B> <A NAME="tex2html284"
<B> Up:</B> <A NAME="tex2html291"
HREF="node16.html">Getting Started</A>
<B> Previous:</B> <A NAME="tex2html280"
<B> Previous:</B> <A NAME="tex2html287"
HREF="node16.html">Getting Started</A>
&nbsp; <B> <A NAME="tex2html286"
&nbsp; <B> <A NAME="tex2html293"
HREF="node2.html">Contents</A></B>
<BR>
<BR>
<BR></DIV>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION00071000000000000000"></A><A NAME="sec:examples"></A>
<BR>
Examples
</H2><FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
</H2><BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">The code reported in Figure&nbsp;<A HREF="#fig:ex1">2</A> shows how to set and apply the default
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">The code reported in Figure&nbsp;<A HREF="#fig:ex1">2</A> shows how to set and apply the default
multilevel preconditioner available in the real double precision version
of MLD2P4 (see Table&nbsp;<A HREF="#tab:precinit">1</A>). This preconditioner is chosen
by simply specifying <code>'ML'</code> as the second argument of <code>P%init</code>
@@ -64,9 +61,9 @@ solver provided by PSBLAS (the matrix of the system to be solved is
assumed to be positive definite). As previously observed, the modules
<code>psb_base_mod</code>, <code>mld_prec_mod</code> and <code>psb_krylov_mod</code>
must be used by the example program.
</FONT></FONT></FONT>
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">The part of the code concerning the
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">The part of the code concerning the
reading and assembling of the sparse matrix and the right-hand side vector, performed
through the PSBLAS routines for sparse matrix and vector management, is not reported
here for brevity; the statements concerning the deallocation of the PSBLAS
@@ -77,17 +74,17 @@ Section&nbsp;<A HREF="node11.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="node30.html#PSBLASGUIDE">13</A>].
</FONT></FONT></FONT>
HREF="node36.html#PSBLASGUIDE">13</A>].
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">The setup and application of the default multilevel preconditioner
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">The setup and application of the default multilevel preconditioner
for the real single precision and the complex, single and double
precision, versions are obtained with straightforward modifications of the previous
example (see Section&nbsp;<A HREF="node18.html#sec:userinterface">6</A> for details). If these versions are installed,
the corresponding codes are available in <code>examples/fileread/</code>.
</FONT></FONT></FONT>
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<DIV ALIGN="CENTER"><A NAME="fig:ex1"></A><A NAME="907"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 2:</STRONG>
@@ -157,9 +154,9 @@ setup and application of the default multilevel preconditioner (example 1).
</DIV></TD></TR>
</TABLE>
</DIV>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">Different versions of the multilevel preconditioner can be obtained by changing
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">Different versions of the multilevel preconditioner can be obtained by changing
the default values of the preconditioner parameters. The code reported in
Figure&nbsp;<A HREF="#fig:ex2">3</A> shows how to set a V-cycle preconditioner
which applies 1 block-Jacobi sweep as pre- and post-smoother,
@@ -176,24 +173,25 @@ and solves the coarsest-level system with the multifrontal LU factorization
implemented in MUMPS. It is specified that the coarsest-level
matrix is distributed, since MUMPS can be used on both
replicated and distributed matrices, and by default
it is used on replicated ones. The code fragments shown in Figures&nbsp;<A HREF="#fig:ex2">3</A> and <A HREF="#fig:ex3">4</A> are
it is used on replicated ones.
The code fragments shown in Figures&nbsp;<A HREF="#fig:ex2">3</A> and <A HREF="#fig:ex3">4</A> are
included in the example program file <code>mld_dexample_ml.f90</code> too.
</FONT></FONT></FONT>
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">Finally, Figure&nbsp;<A HREF="#fig:ex4">5</A> shows the setup of a one-level
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">Finally, Figure&nbsp;<A HREF="#fig:ex4">5</A> shows the setup of a one-level
additive Schwarz preconditioner, i.e., RAS with overlap 2.
Note also that a Krylov method different from CG must be used to solve
the preconditioned system, since the preconditione in nonsymmetric.
The corresponding example program is available in the file
<code>mld_dexample_1lev.f90</code>.
</FONT></FONT></FONT>
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">For all the previous preconditioners, example programs where the sparse matrix and
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE">For all the previous preconditioners, example programs where the sparse matrix and
the right-hand side are generated by discretizing a PDE with Dirichlet
boundary conditions are also available in the directory <code>examples/pdegen</code>.
</FONT></FONT></FONT>
</BIG></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<DIV ALIGN="CENTER"><A NAME="fig:ex2"></A><A NAME="909"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 3:</STRONG>
@@ -224,9 +222,9 @@ setup of a multilevel preconditioner</CAPTION>
</DIV></TD></TR>
</TABLE>
</DIV>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<DIV ALIGN="CENTER"><A NAME="fig:ex3"></A><A NAME="911"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 4:</STRONG>
@@ -257,9 +255,9 @@ setup of a multilevel preconditioner</CAPTION>
</DIV></TD></TR>
</TABLE>
</DIV>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<DIV ALIGN="CENTER"><A NAME="fig:ex4"></A><A NAME="913"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 5:</STRONG>
@@ -285,31 +283,32 @@ setup of a one-level Schwarz preconditioner.</CAPTION>
</DIV></TD></TR>
</TABLE>
</DIV>
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG>
<P>
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT></FONT><HR>
<BIG CLASS="LARGE"><BIG CLASS="LARGE"><BIG CLASS="LARGE"></BIG></BIG></BIG>
<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html287"
<A NAME="tex2html294"
HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html283"
<A NAME="tex2html290"
HREF="node16.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html279"
<A NAME="tex2html286"
HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html285"
<A NAME="tex2html292"
HREF="node2.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html288"
<B> Next:</B> <A NAME="tex2html295"
HREF="node18.html">User Interface</A>
<B> Up:</B> <A NAME="tex2html284"
<B> Up:</B> <A NAME="tex2html291"
HREF="node16.html">Getting Started</A>
<B> Previous:</B> <A NAME="tex2html280"
<B> Previous:</B> <A NAME="tex2html287"
HREF="node16.html">Getting Started</A>
&nbsp; <B> <A NAME="tex2html286"
HREF="node2.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html293"
HREF="node2.html">Contents</A></B> </DIV>
<!--End of Navigation Panel-->
</BODY>