mld2p4-2:

docs/html/index.html
 docs/html/node14.html
 docs/html/node15.html
 docs/html/node16.html
 docs/html/node19.html
 docs/html/node2.html
 docs/html/node20.html
 docs/html/node21.html
 docs/html/node22.html
 docs/html/node28.html
 docs/html/userhtml.html
 docs/mld2p4-2.1-guide.pdf
 docs/src/gettingstarted.tex
 docs/src/precs.tex
 docs/src/userinterface.tex

Document name change for smoothers_bld
stopcriterion
Salvatore Filippone 8 years ago
parent 3cbeeda750
commit 0ccf29897a

@ -128,7 +128,7 @@ Mar. 31, 2016
<LI><A NAME="tex2html36"
HREF="node20.html">Subroutine mld_hierarchy_bld</A>
<LI><A NAME="tex2html37"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<LI><A NAME="tex2html38"
HREF="node22.html">Subroutine mld_precaply</A>
<LI><A NAME="tex2html39"

@ -102,7 +102,7 @@ The following steps are required:
Section&nbsp;<A HREF="node16.html#sec:userinterface">6</A>, Tables&nbsp;<A HREF="#tab:p_type">2</A>-<A HREF="#tab:p_coarse">6</A>.
</LI>
<LI><I>Build the preconditioner for a given matrix.</I> This is performed by
the routine <code>mld_ml_prec_bld</code>.
the routine <code>mld_smoothers_bld</code>.
</LI>
<LI><I>Apply the preconditioner at each iteration of a Krylov solver.</I>
This is performed by the routine <code>mld_precaply</code>. When using the PSBLAS Krylov solvers,

@ -129,7 +129,7 @@ Setup and application of the default multi-level Schwarz preconditioner.
!
! build the preconditioner
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
!
! set the solver parameters and the initial guess
@ -219,13 +219,13 @@ Setup of a hybrid three-level Schwarz preconditioner.</CAPTION>
! a coarsest matrix replicated on the processors, and the
! LU factorization from UMFPACK as coarse-level solver
call mld_precinit(P,'ML',info)
call mld_hierarchy_bld(A,desc_A,P,info)
call_mld_precset(P,'SMOOTHER_TYPE','BJAC',info)
call_mld_precset(P,'SMOOTHER_POS,'POST'w,info)
call mld_precset(P,'COARSE_MAT','REPL',info)
call mld_precset(P,'COARSE_SOLVE','UMF',info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
</PRE>
</TD></TR>
@ -256,12 +256,11 @@ Setup of a hybrid three-level Schwarz preconditioner.</CAPTION>
! multifrontal solver in MUMPS as coarse-level solver
call mld_precinit(P,'ML',info,nlev=3)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_precset(P,mld_smoother_type_,'BJAC',info)
call mld_precset(P,mld_coarse_mat_,'REPL',info)
call mld_precset(P,mld_coarse_solve_,'MUMPS',info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
</PRE>
</TD></TR>
@ -291,11 +290,11 @@ Setup of an additive three-level Schwarz preconditioner.</CAPTION>
! post-smoother, and 5 block-Jacobi sweeps (with UMFPACK LU
! on the blocks) as distributed coarsest-level solver
call mld_precinit(P,'ML',info,nlev=3)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_precset(P,'ML_TYPE','ADD',info)
call_mld_precset(P,'SMOOTHER_POS','TWOSIDE',info)
call mld_precset(P,'COARSE_SWEEPS',5,info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
</PRE>
</TD></TR>

@ -122,7 +122,7 @@ A description of each routine is given in the remainder of this section.
<LI><A NAME="tex2html265"
HREF="node20.html">Subroutine mld_hierarchy_bld</A>
<LI><A NAME="tex2html266"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<LI><A NAME="tex2html267"
HREF="node22.html">Subroutine mld_precaply</A>
<LI><A NAME="tex2html268"

@ -69,7 +69,7 @@ the user through the routines <code>mld_precinit</code> and <code>mld_precset</c
<P>
For multilevel preconditioner this routine is supported for backward
compatibility, but we recommend to use the routines of
Sec.&nbsp;<A HREF="node20.html#sec:hier_bld">6.4</A> and&nbsp;<A HREF="node21.html#sec:ml_prec_bld">6.5</A>.
Sec.&nbsp;<A HREF="node20.html#sec:hier_bld">6.4</A> and&nbsp;<A HREF="node21.html#sec:smoothers_bld">6.5</A>.
<FONT SIZE="+1"><B>Arguments</B></FONT>
<P>

@ -100,7 +100,7 @@ Contents</A>
<LI><A NAME="tex2html84"
HREF="node20.html">Subroutine mld_hierarchy_bld</A>
<LI><A NAME="tex2html85"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<LI><A NAME="tex2html86"
HREF="node22.html">Subroutine mld_precaply</A>
<LI><A NAME="tex2html87"

@ -40,7 +40,7 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html317"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<B> Up:</B> <A NAME="tex2html313"
HREF="node16.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html307"
@ -122,7 +122,7 @@ single/double precision version of MLD2P4 under use.
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html317"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<B> Up:</B> <A NAME="tex2html313"
HREF="node16.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html307"

@ -7,8 +7,8 @@ original version by: Nikos Drakos, CBLU, University of Leeds
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Subroutine mld_ml_prec_bld</TITLE>
<META NAME="description" CONTENT="Subroutine mld_ml_prec_bld">
<TITLE>Subroutine mld_smoothers_bld</TITLE>
<META NAME="description" CONTENT="Subroutine mld_smoothers_bld">
<META NAME="keywords" CONTENT="userhtml">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
@ -51,14 +51,14 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION00085000000000000000"></A><A NAME="sec:ml_prec_bld"></A>
<H2><A NAME="SECTION00085000000000000000"></A><A NAME="sec:smoothers_bld"></A>
<BR>
Subroutine mld_ml_prec_bld
Subroutine mld_smoothers_bld
</H2>
<P>
<DIV ALIGN="CENTER">
<code>mld_ml_prec_bld(a,desc_a,p,info)</code>
<code>mld_smoothers_bld(a,desc_a,p,info)</code>
<BR>
</DIV>

@ -44,7 +44,7 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<B> Up:</B> <A NAME="tex2html337"
HREF="node16.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html331"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
&nbsp; <B> <A NAME="tex2html339"
HREF="node2.html">Contents</A></B>
<BR>
@ -202,7 +202,7 @@ and hence it is completely transparent to the user.
<B> Up:</B> <A NAME="tex2html337"
HREF="node16.html">User Interface</A>
<B> Previous:</B> <A NAME="tex2html331"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
&nbsp; <B> <A NAME="tex2html339"
HREF="node2.html">Contents</A></B>
<!--End of Navigation Panel-->

@ -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 2016-06-09
The translation was initiated by Salvatore Filippone on 2016-10-04
<BR><HR>
</BODY>

@ -128,7 +128,7 @@ Mar. 31, 2016
<LI><A NAME="tex2html36"
HREF="node20.html">Subroutine mld_hierarchy_bld</A>
<LI><A NAME="tex2html37"
HREF="node21.html">Subroutine mld_ml_prec_bld</A>
HREF="node21.html">Subroutine mld_smoothers_bld</A>
<LI><A NAME="tex2html38"
HREF="node22.html">Subroutine mld_precaply</A>
<LI><A NAME="tex2html39"

@ -83,7 +83,7 @@ endstream
endobj
162 0 obj
<<
/Length 7620
/Length 7503
>>
stream
0 g 0 G
@ -246,28 +246,21 @@ q
[]0 d 0 J 0.398 w 0 0 m 3.273 0 l S
Q
BT
/F15 10.9091 Tf 212.952 356.789 Td [(ml)]TJ
/F15 10.9091 Tf 212.952 356.789 Td [(smo)-28(others)]TJ
ET
q
1 0 0 1 225.728 356.988 cm
1 0 0 1 261.94 356.988 cm
[]0 d 0 J 0.398 w 0 0 m 3.273 0 l S
Q
BT
/F15 10.9091 Tf 229 356.789 Td [(prec)]TJ
ET
q
1 0 0 1 249.685 356.988 cm
[]0 d 0 J 0.398 w 0 0 m 3.273 0 l S
Q
BT
/F15 10.9091 Tf 252.958 356.789 Td [(bld)]TJ
/F15 10.9091 Tf 265.213 356.789 Td [(bld)]TJ
0 g 0 G
[-586(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ
[-1018(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)]TJ
0 g 0 G
[-1280(32)]TJ
0 g 0 G
0 0 1 rg 0 0 1 RG
-142.994 -13.55 Td [(6.6)-1022(Subroutine)-333(mld)]TJ
-155.249 -13.55 Td [(6.6)-1022(Subroutine)-333(mld)]TJ
ET
q
1 0 0 1 209.679 343.439 cm
@ -331,19 +324,19 @@ endobj
/Type /ObjStm
/N 100
/First 815
/Length 8644
/Length 8642
>>
stream
1 0 5 38 6 84 9 125 10 146 13 187 14 219 17 260 18 293 21 334
22 381 25 427 26 458 29 504 30 552 33 598 34 637 37 683 38 714 41 760
42 803 45 844 46 903 49 949 50 1002 53 1048 54 1086 57 1127 58 1158 61 1204
62 1230 65 1271 66 1301 69 1347 70 1391 73 1437 74 1480 77 1526 78 1569 81 1615
82 1667 85 1713 86 1766 89 1812 90 1856 93 1902 94 1946 97 1992 98 2037 101 2078
102 2109 105 2152 106 2176 109 2219 110 2244 111 2289 114 2403 115 2457 3 2511 112 2563
121 2656 123 2770 120 2824 125 2860 127 2974 7 3028 124 3080 131 3173 133 3287 130 3341
161 3408 134 3742 135 3888 136 4034 137 4180 138 4326 139 4478 140 4630 141 4782 142 4933
143 5084 144 5230 145 5382 146 5534 147 5680 148 5832 149 5977 150 6129 151 6281 152 6431
153 6581 154 6733 155 6885 156 7037 157 7189 158 7335 159 7482 163 7628 164 7682 160 7736
82 1667 85 1713 86 1765 89 1811 90 1855 93 1901 94 1945 97 1991 98 2036 101 2077
102 2108 105 2151 106 2175 109 2218 110 2243 111 2288 114 2402 115 2456 3 2510 112 2562
121 2655 123 2769 120 2823 125 2859 127 2973 7 3027 124 3079 131 3172 133 3286 130 3340
161 3407 134 3741 135 3887 136 4033 137 4179 138 4325 139 4477 140 4629 141 4781 142 4932
143 5083 144 5229 145 5381 146 5533 147 5679 148 5831 149 5976 150 6128 151 6280 152 6430
153 6580 154 6731 155 6883 156 7035 157 7187 158 7333 159 7480 163 7626 164 7680 160 7734
% 1 0 obj
<< /S /GoTo /D (title.0) >>
% 5 0 obj
@ -427,7 +420,7 @@ stream
% 82 0 obj
<< /S /GoTo /D (subsection.6.5) >>
% 85 0 obj
(6.5 Subroutine mld\137ml\137prec\137bld)
(6.5 Subroutine mld\137smoothers\137bld)
% 86 0 obj
<< /S /GoTo /D (subsection.6.6) >>
% 89 0 obj
@ -699,7 +692,7 @@ stream
/Type /Annot
/Subtype /Link
/Border[0 0 0]/H/I/C[1 0 0]
/Rect [108.968 353.671 269.106 365.361]
/Rect [108.968 355.792 281.36 365.361]
/A << /S /GoTo /D (subsection.6.5) >>
>>
% 154 0 obj
@ -2125,7 +2118,7 @@ endstream
endobj
361 0 obj
<<
/Length 8404
/Length 8407
>>
stream
0 g 0 G
@ -2196,9 +2189,9 @@ BT
0 g 0 G
-13.94 -25.358 Td [(6.)]TJ
0 g 0 G
/F18 10.9091 Tf 13.94 0 Td [(Build)-457(the)-457(pr)51(e)51(c)51(onditioner)-457(for)-457(a)-457(given)-457(matrix.)]TJ/F15 10.9091 Tf 223.323 0 Td [(This)-441(is)-441(p)-28(erformed)-441(b)27(y)-441(the)-441(routine)]TJ/F44 10.9091 Tf -223.323 -13.55 Td [(mld_ml_prec_bld)]TJ/F15 10.9091 Tf 85.908 0 Td [(.)]TJ
/F18 10.9091 Tf 13.94 0 Td [(Build)-457(the)-457(pr)51(e)51(c)51(onditioner)-457(for)-457(a)-457(given)-457(matrix.)]TJ/F15 10.9091 Tf 223.323 0 Td [(This)-441(is)-441(p)-28(erformed)-441(b)27(y)-441(the)-441(routine)]TJ/F44 10.9091 Tf -223.323 -13.55 Td [(mld_smoothers_bld)]TJ/F15 10.9091 Tf 97.362 0 Td [(.)]TJ
0 g 0 G
-99.848 -25.357 Td [(7.)]TJ
-111.302 -25.357 Td [(7.)]TJ
0 g 0 G
/F18 10.9091 Tf 13.94 0 Td [(Apply)-282(the)-281(pr)51(e)51(c)51(onditioner)-281(at)-282(e)51(ach)-282(iter)52(ation)-282(of)-282(a)-281(Krylov)-282(solver.)]TJ/F15 10.9091 Tf 288.311 0 Td [(This)-251(is)-250(p)-28(erformed)-250(b)27(y)]TJ -288.311 -13.55 Td [(the)-340(routine)]TJ/F44 10.9091 Tf 56.544 0 Td [(mld_precaply)]TJ/F15 10.9091 Tf 68.727 0 Td [(.)-465(When)-340(using)-340(the)-341(PSBLAS)-340(Krylo)28(v)-340(solv)28(ers,)-342(this)-341(step)-340(is)]TJ -125.271 -13.549 Td [(completely)-302(transparen)28(t)-301(to)-302(the)-302(user,)-308(since)]TJ/F44 10.9091 Tf 196.451 0 Td [(mld_precaply)]TJ/F15 10.9091 Tf 72.018 0 Td [(is)-302(called)-301(b)27(y)-301(the)-302(PSBLAS)]TJ -268.469 -13.549 Td [(routine)-333(implemen)28(ting)-334(the)-333(Krylo)28(v)-333(s)-1(ol)1(v)27(er)-333(\050)]TJ/F44 10.9091 Tf 195.909 0 Td [(psb_krylov)]TJ/F15 10.9091 Tf 57.272 0 Td [(\051.)]TJ
0 g 0 G
@ -2279,7 +2272,7 @@ endstream
endobj
399 0 obj
<<
/Length 3481
/Length 3483
>>
stream
0 g 0 G
@ -2291,7 +2284,7 @@ BT
0 g 0 G
0 g 0 G
0 g 0 G
/F44 9.9626 Tf -172.181 -30.995 Td [(use)-525(psb_base_mod)]TJ 0 -11.955 Td [(use)-525(mld_prec_mod)]TJ 0 -11.955 Td [(use)-525(psb_krylov_mod)]TJ -10.46 -11.956 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(sparse)-525(matrix)]TJ 10.46 -11.955 Td [(type\050psb_dspmat_type\051)-525(::)-525(A)]TJ -10.46 -11.955 Td [(!)-525(sparse)-525(matrix)-525(descriptor)]TJ 10.46 -11.955 Td [(type\050psb_desc_type\051)-1575(::)-525(desc_A)]TJ -10.46 -11.956 Td [(!)-525(preconditioner)]TJ 10.46 -11.955 Td [(type\050mld_dprec_type\051)-1050(::)-525(P)]TJ -10.46 -11.955 Td [(!)-525(right-hand)-525(side)-525(and)-525(solution)-525(vectors)]TJ 10.46 -11.955 Td [(type\050psb_d_vect_type\051)-525(::)-525(b,)-525(x)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.956 Td [(!)-525(initialize)-525(the)-525(parallel)-525(environment)]TJ 10.46 -11.955 Td [(call)-525(psb_init\050ictxt\051)]TJ 0 -11.955 Td [(call)-525(psb_info\050ictxt,iam,np\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(read)-525(and)-525(assemble)-525(the)-525(matrix)-525(A)-525(and)-525(the)-525(right-hand)-525(side)-525(b)]TJ 0 -11.956 Td [(!)-525(using)-525(PSBLAS)-525(routines)-525(for)-525(sparse)-525(matrix)-525(/)-525(vector)-525(management)]TJ 0 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(initialize)-525(the)-525(default)-525(multi-level)-525(preconditioner,)-525(i.e.)-525(hybrid)]TJ 0 -11.955 Td [(!)-525(Schwarz,)-525(using)-525(RAS)-525(\050with)-525(overlap)-525(1)-525(and)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)]TJ 0 -11.956 Td [(!)-525(as)-525(pre-)-525(and)-525(post-smoother)-525(and)-525(4)-525(block-Jacobi)-525(sweeps)]TJ 0 -11.955 Td [(!)-525(\050with)-525(UMFPACK)-525(LU)-525(on)-525(the)-525(blocks\051)-525(as)-525(distributed)-525(coarse-level)]TJ 0 -11.955 Td [(!)-525(solver.)]TJ 10.46 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info\051)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(build)-525(the)-525(preconditioner)]TJ 10.46 -11.956 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -11.955 Td [(call)-525(mld_ml_prec_bld\050A,desc_A,P,info\051)]TJ -10.46 -23.91 Td [(!)]TJ 0 -11.955 Td [(!)-525(set)-525(the)-525(solver)-525(parameters)-525(and)-525(the)-525(initial)-525(guess)]TJ 10.46 -11.955 Td [(...)-525(...)]TJ -10.46 -11.956 Td [(!)]TJ 0 -11.955 Td [(!)-525(solve)-525(Ax=b)-525(with)-525(preconditioned)-525(BiCGSTAB)]TJ 10.46 -11.955 Td [(call)-525(psb_krylov\050'BICGSTAB',A,P,b,x,tol,desc_A,info\051)]TJ 0 -11.955 Td [(...)-525(...)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(deallocate)-525(the)-525(preconditioner)]TJ 10.46 -11.956 Td [(call)-525(mld_precfree\050P,info\051)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(deallocate)-525(other)-525(data)-525(structures)]TJ 10.46 -11.955 Td [(...)-525(...)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.956 Td [(!)-525(exit)-525(the)-525(parallel)-525(environment)]TJ 10.46 -11.955 Td [(call)-525(psb_exit\050ictxt\051)]TJ 0 -11.955 Td [(stop)]TJ
/F44 9.9626 Tf -172.181 -30.995 Td [(use)-525(psb_base_mod)]TJ 0 -11.955 Td [(use)-525(mld_prec_mod)]TJ 0 -11.955 Td [(use)-525(psb_krylov_mod)]TJ -10.46 -11.956 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(sparse)-525(matrix)]TJ 10.46 -11.955 Td [(type\050psb_dspmat_type\051)-525(::)-525(A)]TJ -10.46 -11.955 Td [(!)-525(sparse)-525(matrix)-525(descriptor)]TJ 10.46 -11.955 Td [(type\050psb_desc_type\051)-1575(::)-525(desc_A)]TJ -10.46 -11.956 Td [(!)-525(preconditioner)]TJ 10.46 -11.955 Td [(type\050mld_dprec_type\051)-1050(::)-525(P)]TJ -10.46 -11.955 Td [(!)-525(right-hand)-525(side)-525(and)-525(solution)-525(vectors)]TJ 10.46 -11.955 Td [(type\050psb_d_vect_type\051)-525(::)-525(b,)-525(x)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.956 Td [(!)-525(initialize)-525(the)-525(parallel)-525(environment)]TJ 10.46 -11.955 Td [(call)-525(psb_init\050ictxt\051)]TJ 0 -11.955 Td [(call)-525(psb_info\050ictxt,iam,np\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(read)-525(and)-525(assemble)-525(the)-525(matrix)-525(A)-525(and)-525(the)-525(right-hand)-525(side)-525(b)]TJ 0 -11.956 Td [(!)-525(using)-525(PSBLAS)-525(routines)-525(for)-525(sparse)-525(matrix)-525(/)-525(vector)-525(management)]TJ 0 -11.955 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(initialize)-525(the)-525(default)-525(multi-level)-525(preconditioner,)-525(i.e.)-525(hybrid)]TJ 0 -11.955 Td [(!)-525(Schwarz,)-525(using)-525(RAS)-525(\050with)-525(overlap)-525(1)-525(and)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)]TJ 0 -11.956 Td [(!)-525(as)-525(pre-)-525(and)-525(post-smoother)-525(and)-525(4)-525(block-Jacobi)-525(sweeps)]TJ 0 -11.955 Td [(!)-525(\050with)-525(UMFPACK)-525(LU)-525(on)-525(the)-525(blocks\051)-525(as)-525(distributed)-525(coarse-level)]TJ 0 -11.955 Td [(!)-525(solver.)]TJ 10.46 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info\051)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(build)-525(the)-525(preconditioner)]TJ 10.46 -11.956 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -11.955 Td [(call)-525(mld_smoothers_bld\050A,desc_A,P,info\051)]TJ -10.46 -23.91 Td [(!)]TJ 0 -11.955 Td [(!)-525(set)-525(the)-525(solver)-525(parameters)-525(and)-525(the)-525(initial)-525(guess)]TJ 10.46 -11.955 Td [(...)-525(...)]TJ -10.46 -11.956 Td [(!)]TJ 0 -11.955 Td [(!)-525(solve)-525(Ax=b)-525(with)-525(preconditioned)-525(BiCGSTAB)]TJ 10.46 -11.955 Td [(call)-525(psb_krylov\050'BICGSTAB',A,P,b,x,tol,desc_A,info\051)]TJ 0 -11.955 Td [(...)-525(...)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(deallocate)-525(the)-525(preconditioner)]TJ 10.46 -11.956 Td [(call)-525(mld_precfree\050P,info\051)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.955 Td [(!)-525(deallocate)-525(other)-525(data)-525(structures)]TJ 10.46 -11.955 Td [(...)-525(...)]TJ -10.46 -11.955 Td [(!)]TJ 0 -11.956 Td [(!)-525(exit)-525(the)-525(parallel)-525(environment)]TJ 10.46 -11.955 Td [(call)-525(psb_exit\050ictxt\051)]TJ 0 -11.955 Td [(stop)]TJ
0 g 0 G
/F15 10.9091 Tf -23.026 -20.748 Td [(Figure)-333(2:)-445(Setup)-333(and)-333(application)-333(of)-334(the)-333(default)-333(m)28(ulti-lev)27(el)-333(Sc)28(h)28(w)27(arz)-333(preconditioner.)]TJ
0 g 0 G
@ -2553,7 +2546,7 @@ endstream
endobj
419 0 obj
<<
/Length 3583
/Length 3588
>>
stream
0 g 0 G
@ -2566,7 +2559,7 @@ BT
0 g 0 G
0 g 0 G
0 g 0 G
/F44 9.9626 Tf -280.345 -15.625 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(hybrid)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.955 Td [(!)-525(block)-525(Jacobi)-525(\050with)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(post-smoother,)]TJ 0 -11.955 Td [(!)-525(a)-525(coarsest)-525(matrix)-525(replicated)-525(on)-525(the)-525(processors,)-525(and)-525(the)]TJ 0 -11.956 Td [(!)-525(LU)-525(factorization)-525(from)-525(UMFPACK)-525(as)-525(coarse-level)-525(solver)]TJ 10.46 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info\051)]TJ 0 -11.955 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -23.91 Td [(call_mld_precset\050P,'SMOOTHER_TYPE','BJAC',info\051)]TJ 0 -11.956 Td [(call_mld_precset\050P,'SMOOTHER_POS,'POST'w,info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'COARSE_MAT','REPL',info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'COARSE_SOLVE','UMF',info\051)]TJ 0 -11.955 Td [(call)-525(mld_ml_prec_bld\050A,desc_A,P,info\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ
/F44 9.9626 Tf -280.345 -15.625 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(hybrid)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.955 Td [(!)-525(block)-525(Jacobi)-525(\050with)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(post-smoother,)]TJ 0 -11.955 Td [(!)-525(a)-525(coarsest)-525(matrix)-525(replicated)-525(on)-525(the)-525(processors,)-525(and)-525(the)]TJ 0 -11.956 Td [(!)-525(LU)-525(factorization)-525(from)-525(UMFPACK)-525(as)-525(coarse-level)-525(solver)]TJ 10.46 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info\051)]TJ 0 -11.955 Td [(call_mld_precset\050P,'SMOOTHER_TYPE','BJAC',info\051)]TJ 0 -11.955 Td [(call_mld_precset\050P,'SMOOTHER_POS,'POST'w,info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'COARSE_MAT','REPL',info\051)]TJ 0 -11.956 Td [(call)-525(mld_precset\050P,'COARSE_SOLVE','UMF',info\051)]TJ 0 -11.955 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -23.91 Td [(call)-525(mld_smoothers_bld\050A,desc_A,P,info\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ
0 g 0 G
/F15 10.9091 Tf 34.98 -18.535 Td [(Figure)-333(3:)-445(Setup)-333(of)-333(a)-334(h)28(ybrid)-333(three-lev)28(el)-334(S)1(c)27(h)28(w)28(arz)-334(p)1(rec)-1(on)1(ditioner.)]TJ
0 g 0 G
@ -2576,7 +2569,7 @@ BT
0 g 0 G
0 g 0 G
0 g 0 G
/F44 9.9626 Tf -34.98 -39.232 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(hybrid)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.955 Td [(!)-525(block)-525(Jacobi)-525(\050with)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(post-smoother,)]TJ 0 -11.955 Td [(!)-525(a)-525(coarsest)-525(matrix)-525(replicated)-525(on)-525(the)-525(processors,)-525(and)-525(the)]TJ 0 -11.956 Td [(!)-525(multifrontal)-525(solver)-525(in)-525(MUMPS)-525(as)-525(coarse-level)-525(solver)]TJ 10.46 -23.91 Td [(call)-525(mld_precinit\050P,'ML',info,nlev=3\051)]TJ 0 -11.955 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -23.91 Td [(call)-525(mld_precset\050P,mld_smoother_type_,'BJAC',info\051)]TJ 0 -11.956 Td [(call)-525(mld_precset\050P,mld_coarse_mat_,'REPL',info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,mld_coarse_solve_,'MUMPS',info\051)]TJ 0 -11.955 Td [(call)-525(mld_ml_prec_bld\050A,desc_A,P,info\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ
/F44 9.9626 Tf -34.98 -39.232 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(hybrid)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.955 Td [(!)-525(block)-525(Jacobi)-525(\050with)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(post-smoother,)]TJ 0 -11.955 Td [(!)-525(a)-525(coarsest)-525(matrix)-525(replicated)-525(on)-525(the)-525(processors,)-525(and)-525(the)]TJ 0 -11.956 Td [(!)-525(multifrontal)-525(solver)-525(in)-525(MUMPS)-525(as)-525(coarse-level)-525(solver)]TJ 10.46 -23.91 Td [(call)-525(mld_precinit\050P,'ML',info,nlev=3\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,mld_smoother_type_,'BJAC',info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,mld_coarse_mat_,'REPL',info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,mld_coarse_solve_,'MUMPS',info\051)]TJ 0 -11.956 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -11.955 Td [(call)-525(mld_smoothers_bld\050A,desc_A,P,info\051)]TJ -10.46 -11.955 Td [(...)-525(...)]TJ
0 g 0 G
/F15 10.9091 Tf 34.98 -18.535 Td [(Figure)-333(4:)-445(Setup)-333(of)-333(a)-334(h)28(ybrid)-333(three-lev)28(el)-334(S)1(c)27(h)28(w)28(arz)-334(p)1(rec)-1(on)1(ditioner.)]TJ
0 g 0 G
@ -2589,7 +2582,7 @@ endstream
endobj
424 0 obj
<<
/Length 2092
/Length 2096
>>
stream
0 g 0 G
@ -2604,7 +2597,7 @@ BT
0 g 0 G
0 g 0 G
0 g 0 G
/F44 9.9626 Tf -380.918 -107.804 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(additive)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.956 Td [(!)-525(RAS)-525(\050with)-525(overlap)-525(1)-525(and)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(pre-)-525(and)]TJ 0 -11.955 Td [(!)-525(post-smoother,)-525(and)-525(5)-525(block-Jacobi)-525(sweeps)-525(\050with)-525(UMFPACK)-525(LU)]TJ 0 -11.955 Td [(!)-525(on)-525(the)-525(blocks\051)-525(as)-525(distributed)-525(coarsest-level)-525(solver)]TJ 10.461 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info,nlev=3\051)]TJ 0 -11.955 Td [(call)-525(mld_ml_prec_bld\050A,desc_A,P,info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'ML_TYPE','ADD',info\051)]TJ 0 -11.956 Td [(call_mld_precset\050P,'SMOOTHER_POS','TWOSIDE',info\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'COARSE_SWEEPS',5,info\051)]TJ 0 -11.955 Td [(call)-525(mld_ml_prec_bld\050A,desc_A,P,info\051)]TJ -10.461 -11.955 Td [(...)-525(...)]TJ
/F44 9.9626 Tf -380.918 -107.804 Td [(...)-525(...)]TJ 0 -11.955 Td [(!)-525(set)-525(a)-525(three-level)-525(additive)-525(Schwarz)-525(preconditioner,)-525(which)-525(uses)]TJ 0 -11.956 Td [(!)-525(RAS)-525(\050with)-525(overlap)-525(1)-525(and)-525(ILU\0500\051)-525(on)-525(the)-525(blocks\051)-525(as)-525(pre-)-525(and)]TJ 0 -11.955 Td [(!)-525(post-smoother,)-525(and)-525(5)-525(block-Jacobi)-525(sweeps)-525(\050with)-525(UMFPACK)-525(LU)]TJ 0 -11.955 Td [(!)-525(on)-525(the)-525(blocks\051)-525(as)-525(distributed)-525(coarsest-level)-525(solver)]TJ 10.461 -11.955 Td [(call)-525(mld_precinit\050P,'ML',info,nlev=3\051)]TJ 0 -11.955 Td [(call)-525(mld_precset\050P,'ML_TYPE','ADD',info\051)]TJ 0 -11.955 Td [(call_mld_precset\050P,'SMOOTHER_POS','TWOSIDE',info\051)]TJ 0 -11.956 Td [(call)-525(mld_precset\050P,'COARSE_SWEEPS',5,info\051)]TJ 0 -11.955 Td [(call)-525(mld_hierarchy_bld\050A,desc_A,P,info\051)]TJ 0 -11.955 Td [(call)-525(mld_smoothers_bld\050A,desc_A,P,info\051)]TJ -10.461 -11.955 Td [(...)-525(...)]TJ
0 g 0 G
/F15 10.9091 Tf 28.329 -18.535 Td [(Figure)-333(5:)-445(Setup)-333(of)-333(an)-333(additiv)27(e)-333(three-lev)28(el)-334(Sc)28(h)28(w)28(arz)-334(p)1(re)-1(cond)1(itioner.)]TJ
0 g 0 G
@ -2989,7 +2982,7 @@ stream
>>
% 369 0 obj
<<
/D [360 0 R /XYZ 86.4 179.198 null]
/D [360 0 R /XYZ 86.4 180.584 null]
>>
% 359 0 obj
<<
@ -3283,7 +3276,7 @@ stream
>>
% 414 0 obj
<<
/D [418 0 R /XYZ 189.762 274.277 null]
/D [418 0 R /XYZ 189.762 286.233 null]
>>
% 417 0 obj
<<
@ -5350,7 +5343,7 @@ endstream
endobj
506 0 obj
<<
/Length 5866
/Length 5762
>>
stream
0 g 0 G
@ -5376,24 +5369,17 @@ q
[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S
Q
BT
/F17 11.9552 Tf 213.457 500.843 Td [(ml)]TJ
ET
q
1 0 0 1 229.208 501.042 cm
[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S
Q
BT
/F17 11.9552 Tf 233.243 500.843 Td [(prec)]TJ
/F17 11.9552 Tf 213.457 500.843 Td [(smo)-31(others)]TJ
ET
q
1 0 0 1 259.129 501.042 cm
1 0 0 1 274.238 501.042 cm
[]0 d 0 J 0.398 w 0 0 m 4.035 0 l S
Q
BT
/F17 11.9552 Tf 263.164 500.843 Td [(bld)]TJ
/F17 11.9552 Tf 278.272 500.843 Td [(bld)]TJ
0 g 0 G
0 g 0 G
/F44 10.9091 Tf -62.174 -20.595 Td [(mld_ml_prec_bld\050a,desc_a,p,info\051)]TJ/F15 10.9091 Tf -114.59 -25.504 Td [(This)-318(routine)-319(builds)-318(the)-319(preconditioner)-318(according)-318(to)-319(the)-318(requiremen)27(ts)-318(made)-319(b)28(y)-318(the)-319(user)]TJ 0 -13.549 Td [(through)-230(the)-230(routines)]TJ/F44 10.9091 Tf 98.562 0 Td [(mld_precinit)]TJ/F15 10.9091 Tf 71.237 0 Td [(and)]TJ/F44 10.9091 Tf 20.086 0 Td [(mld_precset)]TJ/F15 10.9091 Tf 63 0 Td [(,)-251(based)-230(on)-230(the)-230(aggregation)-230(hierah)28(y)]TJ -252.885 -13.549 Td [(pro)-28(duced)-333(b)28(y)-333(a)-334(previous)-333(call)-333(to)]TJ/F44 10.9091 Tf 148.606 0 Td [(mld_hierarchy_bld)]TJ/F15 10.9091 Tf 100.999 0 Td [(\050see)-333(Sec.)]TJ
/F44 10.9091 Tf -83.009 -20.595 Td [(mld_smoothers_bld\050a,desc_a,p,info\051)]TJ/F15 10.9091 Tf -108.863 -25.504 Td [(This)-318(routine)-319(builds)-318(the)-319(preconditioner)-318(according)-318(to)-319(the)-318(requiremen)27(ts)-318(made)-319(b)28(y)-318(the)-319(user)]TJ 0 -13.549 Td [(through)-230(the)-230(routines)]TJ/F44 10.9091 Tf 98.562 0 Td [(mld_precinit)]TJ/F15 10.9091 Tf 71.237 0 Td [(and)]TJ/F44 10.9091 Tf 20.086 0 Td [(mld_precset)]TJ/F15 10.9091 Tf 63 0 Td [(,)-251(based)-230(on)-230(the)-230(aggregation)-230(hierah)28(y)]TJ -252.885 -13.549 Td [(pro)-28(duced)-333(b)28(y)-333(a)-334(previous)-333(call)-333(to)]TJ/F44 10.9091 Tf 148.606 0 Td [(mld_hierarchy_bld)]TJ/F15 10.9091 Tf 100.999 0 Td [(\050see)-333(Sec.)]TJ
0 0 1 rg 0 0 1 RG
[-334(6.4)]TJ
0 g 0 G
@ -5579,19 +5565,19 @@ endobj
/Type /ObjStm
/N 100
/First 887
/Length 11999
/Length 11996
>>
stream
421 0 425 146 415 200 416 257 422 314 429 407 427 541 431 692 63 746 428 799
436 970 434 1120 432 1266 433 1409 438 1556 67 1610 435 1663 445 1782 439 1948 440 2092
441 2237 442 2381 443 2525 447 2672 71 2726 444 2779 453 2898 451 3056 448 3202 449 3345
450 3490 455 3637 456 3691 457 3745 458 3799 459 3853 452 3907 462 4013 464 4127 371 4181
461 4239 467 4332 465 4466 469 4612 470 4666 466 4724 472 4856 474 4970 475 5024 471 5083
478 5202 476 5336 480 5482 481 5536 477 5594 483 5752 485 5866 372 5920 482 5979 496 6124
494 6298 486 6444 487 6596 488 6748 489 6902 490 7055 498 7201 75 7255 79 7308 495 7361
505 7480 491 7662 492 7816 493 7969 500 8115 501 8267 502 8417 503 8571 507 8718 83 8772
504 8825 511 8944 509 9086 508 9232 513 9378 87 9432 510 9485 516 9656 514 9790 518 9937
91 9991 515 10044 522 10163 520 10305 519 10451 524 10598 95 10652 521 10705 527 10824 525 10958
461 4239 467 4332 465 4466 469 4612 470 4666 466 4724 472 4856 474 4970 475 5024 471 5080
478 5199 476 5333 480 5479 481 5533 477 5591 483 5749 485 5863 372 5917 482 5976 496 6121
494 6295 486 6441 487 6593 488 6745 489 6899 490 7052 498 7198 75 7252 79 7305 495 7358
505 7477 491 7659 492 7813 493 7966 500 8112 501 8264 502 8414 503 8568 507 8715 83 8769
504 8822 511 8941 509 9083 508 9229 513 9375 87 9429 510 9482 516 9653 514 9787 518 9934
91 9988 515 10041 522 10160 520 10302 519 10448 524 10595 95 10649 521 10702 527 10821 525 10955
% 421 0 obj
<<
/Type /Annot
@ -5865,7 +5851,7 @@ stream
>>
% 470 0 obj
<<
/D [467 0 R /XYZ 491.768 4358.278 null]
/D [467 0 R /XYZ 491.687 4358.278 null]
>>
% 466 0 obj
<<
@ -5886,7 +5872,7 @@ stream
>>
% 475 0 obj
<<
/D [472 0 R /XYZ -4005.855 511.808 null]
/D [472 0 R /XYZ 74.842 511.808 null]
>>
% 471 0 obj
<<
@ -9326,8 +9312,8 @@ endobj
643 0 obj
<<
/Title (MultiLevel Domain Decomposition Parallel Preconditioners Package based on PSBLAS, V. 2.1) /Subject (MultiLevel Domain Decomposition Parallel Preconditioners Package) /Keywords (Parallel Numerical Software, Algebraic Multilevel Preconditioners, Sparse Iterative Solvers, PSBLAS, MPI) /Creator (pdfLaTeX) /Producer ($Id: userguide.tex 2008-04-08 Pasqua D'Ambra, Daniela di Serafino, Salvatore Filippone$) /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.15)/Keywords()
/CreationDate (D:20160609154856+01'00')
/ModDate (D:20160609154856+01'00')
/CreationDate (D:20161004163334+01'00')
/ModDate (D:20161004163334+01'00')
/Trapped /False
/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014) kpathsea version 6.2.0)
>>
@ -9834,20 +9820,19 @@ endobj
/W [1 3 1]
/Root 642 0 R
/Info 643 0 R
/ID [<9145649AAA5BD0221CB04B6166F54681> <9145649AAA5BD0221CB04B6166F54681>]
/ID [<51E6B8BFBA392FF051915CB78826516F> <51E6B8BFBA392FF051915CB78826516F>]
/Length 3225
>>
stream
ÿ2´:`(A`'ª `&ª`%ª(`$ 
ª)`#  ª*`" ª2`!ªA` ªB`ªK`ª[`6 `6/`6H`ª` ª`!"ª`#$ªC`%&ªD`'(ªO`)*ªU`+,ªZ`-.ª``/0`12`34 `567;89U`]`><×=B?3@\VEC)DGHIJKLMNOPQRSTUVWXYZ[\]^_`cF´abTªªªŽ¢ªªªªª ª
ª ªªªU]cª X``'."! (ªªªªªªªªªu^ªªªª‡âª`ªª ª!ª"ª#ª$ª%ª&ª+ªŽ°ª'$#ª.ª/ª0ª-ª3ª,¨•ª1%ª6ª4¾ª5ª8ª:ª7ÍHª9`ª=ª;Üëª<ª?ªCª>﹪@ªEªFªGªHªIªOªLªDýùªJªPªQªRªSªTªUªVªWªXªYªaªbªNª_ªM ªZ[b_YWª\ª]ª^,-&ªc66ª`XX6´<>66666 66 6Âo6
`66666666 ï6^Za66666666"6ì666 6!6$6%6&6'6(6)6*6+6,6-676#'w6.606162636465666\ª'ª96:6;6<6=6>6?6@6A6B6C6D6E6P6Q6R6S696I68H‡6F6G6L6`6M6J6K6T6U6V6W6X6Y6Z6O6]6N6[`6aªª6b6^<02>ì6_ªª6c¬'ªTªª ªçƪª ª ª ªª
ÿBªªªªªªªª
Yªªªªªª$ª%%ªª ª!ª"ª#`ª(ª%ª&ª*ª-ª)Jª+ª,ª1ª.ª/ª0ª3ª6ª28ª4ª5ª:ª7ƪ8ª=ª>ª?ª@ªAªGªHªIª<ªEª;ñªB`ªJªKªLªMªPªFªNªSªRªVªQ»ªTªXª[ªW=_ªYª^ª]ªaª\ª_ªcªbŠ\ƒX` 
“*   )­/*Æý+0123456789:;<=>?@AÍÀBC]`DœE¾™FûYGžHIgÿJÎÈKLMNjO†çP¤kQþRSÛÛ`
` ` ` `)`*`+`,`-`.`/`0`1`2`3`4`5`6`7`8`9`:`;`<`=`>`?`@`A`B`C`D`E`FØÿ 6
ÿ2?:`(A`'ª `&ª`%ª(`$ 
ª)`#  ª*`" ª2`!ªA` ªB`ªK`ª[`6 `6/`6H`ª` ª`!"ª`#$ªC`%&ªD`'(ªO`)*ªU`+,ªZ`-.ª``/0`12`34 `567;89U`]`><×=B?3@\VEC)DGHIJKLMNOPQRSTUVWXYZ[\]^_`cF´abTªªT[ªŽ+ªªªªª ª
ª ªªªcª X``'."! (ªªªªªªªªªªªªª‡kª`ªª ª!ª"ª#ª$ª%ª&ª+ªŽ9ª'$#ª.ª/ª0ª-ª3ª,¨ª1%ª6ª4½<>ª5ª8ª:ª7ÌѪ9`ª=ª;Ütª<ª?ªCª>ïBª@ªEªFªGªHªIªOªLªDý‚ªJªPªQªRªSªTªUªVªWªXªYªaªbªNª_ªMªZ[b_YWª\ª]ª^,-&ªc66ª`6´&66666 66 6Áø6
`66666666 îŸ6^Za66666666"6u666 6!6$6%6&6'6(6)6*6+6,6-676#'6.606162636465666\ª'ª96:6;6<6=6>6?6@6A6B6C6D6E6P6Q6R6S696I68H6F6G6L6`6M6Jii6K6T6U6V6W6X6Y6Z6O6]6Nw@6[`6aªª6b6^<02>z6_ªª6c«ºªSLªª ªç]ªª ª ª ªª
þÙªªªªªªªª 𪪪ªªª$ªªª ª!ª"ª#`ª(ª%8wª&ª*ª-ª)J(ª+ª,ª1ª.vmª/ª0ª3ª6ª2šÏª4ª5ª:ª7Å°ª8ª=ª>ª?ª@ªAªGªHªIª<ªEª;ð«ªB`ªJªKªLªMªPªF,ªNªSªRªVªQêªTªXª[ªWªYª^ª]ªaª\ª_ªcªbL‰ˆ‚„` 
V  “@ )¬H/*Æ)+0123456789:;<=>?@AÌìBJCD=E½ÅFú…GÊH:%Ig+JÍôK¬L%MNiEOP£—Qý:R1 SÛ`
` ` ` `)`*`+`,`-`.`/`0`1`2`3`4`5`6`7`8`9`:`;`<`=`>`?`@`A`B`C`D`E`FØ+ÿb
endstream
endobj
startxref
589878
589666
%%EOF

@ -40,7 +40,7 @@ The following steps are required:
preconditioner parameters and their allowed and default values is provided in
Section~\ref{sec:userinterface}, Tables~\ref{tab:p_type}-\ref{tab:p_coarse}.
\item \emph{Build the preconditioner for a given matrix.} This is performed by
the routine \verb|mld_ml_prec_bld|.
the routine \verb|mld_smoothers_bld|.
\item \emph{Apply the preconditioner at each iteration of a Krylov solver.}
This is performed by the routine \verb|mld_precaply|. When using the PSBLAS Krylov solvers,
this step is completely transparent to the user, since \verb|mld_precaply| is called
@ -183,7 +183,7 @@ the corresponding Fortran 95 codes are available in \verb|examples/fileread/|.
!
! build the preconditioner
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
!
! set the solver parameters and the initial guess
@ -270,13 +270,13 @@ boundary conditions are also available in the directory \verb|examples/pdegen|.
! a coarsest matrix replicated on the processors, and the
! LU factorization from UMFPACK as coarse-level solver
call mld_precinit(P,'ML',info)
call mld_hierarchy_bld(A,desc_A,P,info)
call_mld_precset(P,'SMOOTHER_TYPE','BJAC',info)
call_mld_precset(P,'SMOOTHER_POS,'POST'w,info)
call mld_precset(P,'COARSE_MAT','REPL',info)
call mld_precset(P,'COARSE_SOLVE','UMF',info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
\end{verbatim}
}
@ -298,12 +298,11 @@ boundary conditions are also available in the directory \verb|examples/pdegen|.
! multifrontal solver in MUMPS as coarse-level solver
call mld_precinit(P,'ML',info,nlev=3)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_precset(P,mld_smoother_type_,'BJAC',info)
call mld_precset(P,mld_coarse_mat_,'REPL',info)
call mld_precset(P,mld_coarse_solve_,'MUMPS',info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
\end{verbatim}
}
@ -325,11 +324,11 @@ boundary conditions are also available in the directory \verb|examples/pdegen|.
! post-smoother, and 5 block-Jacobi sweeps (with UMFPACK LU
! on the blocks) as distributed coarsest-level solver
call mld_precinit(P,'ML',info,nlev=3)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_precset(P,'ML_TYPE','ADD',info)
call_mld_precset(P,'SMOOTHER_POS','TWOSIDE',info)
call mld_precset(P,'COARSE_SWEEPS',5,info)
call mld_ml_prec_bld(A,desc_A,P,info)
call mld_hierarchy_bld(A,desc_A,P,info)
call mld_smoothers_bld(A,desc_A,P,info)
... ...
\end{verbatim}
}

@ -169,6 +169,98 @@ of \verb|what| input as follows
\item[mld\_coarse\_mat\_]
\end{description}
\subroutine{mld\_hierarchy\_bld}{Builds a matrix hierarchy}
\syntax{call mld\_hierarchy\_bld}{a, desc\_a, prec, info}
\begin{description}
\item[Type:] Synchronous.
\item[\bf On Entry]
\item[a] the system sparse matrix.
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf in}, target.\\
Specified as: a sparse matrix data structure \spdata.
\item[prec] the preconditioner.\\
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf inout}.\\
Specified as: an already initialized precondtioner data structure \precdata\\
\item[desc\_a] the problem communication descriptor.
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf in}, target.\\
Specified as: a communication descriptor data structure \descdata.
%% \item[upd]
%% Scope: {\bf global} \\
%% Type: {\bf optional}\\
%% Intent: {\bf in}.\\
%% Specified as: a character.
\end{description}
\begin{description}
\item[\bf On Return]
\item[prec] the preconditioner, with all the matrices and transfer
operators updated.\\
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf inout}.\\
Specified as: a precondtioner data structure \precdata\\
\item[info] Error code.\\
Scope: {\bf local} \\
Type: {\bf required} \\
Intent: {\bf out}.\\
An integer value; 0 means no error has been detected.
\end{description}
\subroutine{mld\_smoothers\_bld}{Builds the smoothers}
\syntax{call mld\_smoothers\_bld}{a, desc\_a, prec, info}
\begin{description}
\item[Type:] Synchronous.
\item[\bf On Entry]
\item[a] the system sparse matrix.
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf in}, target.\\
Specified as: a sparse matrix data structure \spdata.
\item[prec] the preconditioner.\\
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf inout}.\\
Specified as: an already initialized precondtioner data structure
\precdata\ with an already built matrix hierarchy \\
\item[desc\_a] the problem communication descriptor.
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf in}, target.\\
Specified as: a communication descriptor data structure \descdata.
%% \item[upd]
%% Scope: {\bf global} \\
%% Type: {\bf optional}\\
%% Intent: {\bf in}.\\
%% Specified as: a character.
\end{description}
\begin{description}
\item[\bf On Return]
\item[prec] the preconditioner, with all the smoothers and solvers
updated.\\
Scope: {\bf local} \\
Type: {\bf required}\\
Intent: {\bf inout}.\\
Specified as: a precondtioner data structure \precdata\\
\item[info] Error code.\\
Scope: {\bf local} \\
Type: {\bf required} \\
Intent: {\bf out}.\\
An integer value; 0 means no error has been detected.
\end{description}
\subroutine{mld\_precbld}{Builds a preconditioner}
@ -214,6 +306,10 @@ An integer value; 0 means no error has been detected.
\end{description}
\subsection*{Usage Notes}
A call to this routine is equivalent to a call to
\verb|mld_hierarchy_bld| followed by a call to \verb|mld_smnoothers_bld|.
\subroutine{mld\_precaply}{Preconditioner application routine}

@ -494,7 +494,7 @@ the user through the routines \verb|mld_precinit| and \verb|mld_precset|.
For multilevel preconditioner this routine is supported for backward
compatibility, but we recommend to use the routines of
Sec.~\ref{sec:hier_bld} and~\ref{sec:ml_prec_bld}.
Sec.~\ref{sec:hier_bld} and~\ref{sec:smoothers_bld}.
{\vskip2\baselineskip\noindent\large\bfseries Arguments}
\begin{tabular}{p{1.2cm}p{12cm}}
@ -544,10 +544,10 @@ single/double precision version of MLD2P4 under use.
\end{tabular}
\subsection{Subroutine mld\_ml\_prec\_bld\label{sec:ml_prec_bld}}
\subsection{Subroutine mld\_smoothers\_bld\label{sec:smoothers_bld}}
\begin{center}
\verb|mld_ml_prec_bld(a,desc_a,p,info)|\\
\verb|mld_smoothers_bld(a,desc_a,p,info)|\\
\end{center}
\noindent

Loading…
Cancel
Save