@ -1,4 +1,4 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitio nal//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Fi nal//EN">
<!-- Converted with LaTeX2HTML 2012 (1.2)
<!-- Converted with LaTeX2HTML 2012 (1.2)
original version by: Nikos Drakos, CBLU, University of Leeds
original version by: Nikos Drakos, CBLU, University of Leeds
@ -25,31 +25,30 @@ original version by: Nikos Drakos, CBLU, University of Leeds
< / HEAD >
< / HEAD >
< BODY >
< BODY >
<!-- Navigation Panel -->
< DIV CLASS = "navigation" > <!-- Navigation Panel -->
< A NAME = "tex2html285"
< A NAME = "tex2html284"
HREF="node19.html">
HREF="node19.html">
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next" SRC = "next.png" > < / A >
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next" SRC = "next.png" > < / A >
< A NAME = "tex2html28 0 "
< A NAME = "tex2html28 1 "
HREF="node16.html">
HREF="node16.html">
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up" SRC = "up.png" > < / A >
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up" SRC = "up.png" > < / A >
< A NAME = "tex2html27 4 "
< A NAME = "tex2html27 5 "
HREF="node17.html">
HREF="node17.html">
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous" SRC = "prev.png" > < / A >
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous" SRC = "prev.png" > < / A >
< A NAME = "tex2html28 2 "
< A NAME = "tex2html28 3 "
HREF="node2.html">
HREF="node2.html">
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents" SRC = "contents.png" > < / A >
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents" SRC = "contents.png" > < / A >
< BR >
< BR >
< B > Next:< / B > < A NAME = "tex2html28 5 "
< B > Next:< / B > < A NAME = "tex2html28 6 "
HREF="node19.html">Subroutine mld_precbld< / A >
HREF="node19.html">Subroutine mld_precbld< / A >
< B > Up:< / B > < A NAME = "tex2html28 1 "
< B > Up:< / B > < A NAME = "tex2html28 2 "
HREF="node16.html">User Interface< / A >
HREF="node16.html">User Interface< / A >
< B > Previous:< / B > < A NAME = "tex2html27 5 "
< B > Previous:< / B > < A NAME = "tex2html27 6 "
HREF="node17.html">Subroutine mld_precinit< / A >
HREF="node17.html">Subroutine mld_precinit< / A >
< B > < A NAME = "tex2html28 3 "
< B > < A NAME = "tex2html28 4 "
HREF="node2.html">Contents< / A > < / B >
HREF="node2.html">Contents< / A > < / B >
< BR >
< BR >
< BR > < / DIV >
< BR >
<!-- End of Navigation Panel -->
<!-- End of Navigation Panel -->
< H2 > < A NAME = "SECTION00082000000000000000" > < / A > < A NAME = "sec:precset" > < / A >
< H2 > < A NAME = "SECTION00082000000000000000" > < / A > < A NAME = "sec:precset" > < / A >
@ -89,25 +88,25 @@ the new smoother/solver variable to the setup routine as follows:
< BR > < code > call p%set(solver,info [,ilev])< / code >
< BR > < code > call p%set(solver,info [,ilev])< / code >
< / DIV >
< / DIV >
In this way, the variable will act as a < SPAN CLASS = "textit" > mold< / SPAN > to which the
In this way, the variable will act as a < I> mold< / I > to which the
preconditioner will conform, even though the MLD2P4 library is not
preconditioner will conform, even though the MLD2P4 library is not
modified, and thus has no direct knowledge about the new type.
modified, and thus has no direct knowledge about the new type.
< P >
< P >
< BIG CLASS = "LARGE "> < B > Arguments< / B > < / BIG >
< FONT SIZE = "+1 "> < B > Arguments< / B > < / FONT >
< P >
< P >
< TABLE CELLPADDING = 3 >
< TABLE CELLPADDING = 3 >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > p< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > p< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > type(mld_< / code > < SPAN CLASS = "textit" > x< / SPAN > < code > prec_type), intent(inout)< / code > .< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > type(mld_< / code > < I> x< / I > < code > prec_type), intent(inout)< / code > .< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > The preconditioner data structure. Note that < SPAN CLASS = "textit" > x< / SPAN > must
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > The preconditioner data structure. Note that < I> x< / I > must
be chosen according to the real/complex, single/double precision
be chosen according to the real/complex, single/double precision
version of MLD2P4 under use.< / TD >
version of MLD2P4 under use.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > what< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > what< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > integer, intent(in)< / code > < SPAN CLASS = "textit" > or< / SPAN > < code > character(len=*)< / code > .< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > integer, intent(in)< / code > < I> or< / I > < code > character(len=*)< / code > .< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > The parameter to be set. It can be specified by
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > The parameter to be set. It can be specified by
@ -116,8 +115,8 @@ modified, and thus has no direct knowledge about the new type.
Tables < A HREF = "#tab:p_type" > 2< / A > -< A HREF = "#tab:p_coarse" > 5< / A > .< / TD >
Tables < A HREF = "#tab:p_type" > 2< / A > -< A HREF = "#tab:p_coarse" > 5< / A > .< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > val < / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < code > val < / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > integer< / code > < SPAN CLASS = "textit" > or< / SPAN > < code > character(len=*)< / code > < SPAN CLASS = "textit" > or< / SPAN >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 340 > < code > integer< / code > < I> or< / I > < code > character(len=*)< / code > < I> or< / I >
< code > real(psb_spk_)< / code > < SPAN CLASS = "textit" > or< / SPAN > < code > real(psb_dpk_)< / code > ,
< code > real(psb_spk_)< / code > < I> or< / I > < code > real(psb_dpk_)< / code > ,
< code > intent(in)< / code > .< / TD >
< code > intent(in)< / code > .< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 34 > < / TD >
@ -180,7 +179,7 @@ object is specified its defaults are also set, overriding in both
cases any previous settings even if explicitly specified. Therefore if
cases any previous settings even if explicitly specified. Therefore if
the user sets a new smoother, and wishes to use a solver
the user sets a new smoother, and wishes to use a solver
different from the default one, the call to set the solver must come
different from the default one, the call to set the solver must come
< SPAN CLASS = "textit" > after< / SPAN > the call to set the smoother.
< I> after< / I > the call to set the smoother.
< P >
< P >
The combination of a Jacobi smoother with a Diagonal Scaling local
The combination of a Jacobi smoother with a Diagonal Scaling local
solver is equivalent to the strategy called Point Jacobi in the
solver is equivalent to the strategy called Point Jacobi in the
@ -203,7 +202,7 @@ according to their needs.
< P >
< P >
< BR > < P > < / P >
< BR > < P > < / P >
< DIV ALIGN = "CENTER" > < A NAME = "1 271 "> < / A >
< DIV ALIGN = "CENTER" > < A NAME = "1 30 2"> < / A >
< TABLE >
< TABLE >
< CAPTION > < STRONG > Table 2:< / STRONG >
< CAPTION > < STRONG > Table 2:< / STRONG >
Parameters defining the type of multi-level preconditioner.
Parameters defining the type of multi-level preconditioner.
@ -247,7 +246,7 @@ Parameters defining the type of multi-level preconditioner.
< P >
< P >
< BR > < P > < / P >
< BR > < P > < / P >
< DIV ALIGN = "CENTER" > < A NAME = "1 27 3"> < / A >
< DIV ALIGN = "CENTER" > < A NAME = "1 304 "> < / A >
< TABLE >
< TABLE >
< CAPTION > < STRONG > Table 3:< / STRONG >
< CAPTION > < STRONG > Table 3:< / STRONG >
Parameters defining the one-level preconditioner used as smoother.
Parameters defining the one-level preconditioner used as smoother.
@ -263,10 +262,10 @@ Parameters defining the one-level preconditioner used as smoother.
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_ovr_< / code > < BR > < code > SUB_OVR< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_ovr_< / code > < BR > < code > SUB_OVR< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > any int. num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > any int. num. < IMG
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img90.png"
SRC="img90.png"
ALT="$\ge 0$">< / SPAN> < / TD>
ALT="$\ge 0$">< / TD>
< TD ALIGN = "LEFT" > 1< / TD >
< TD ALIGN = "LEFT" > 1< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Number of overlap layers.< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Number of overlap layers.< / TD >
< / TR >
< / TR >
@ -311,30 +310,30 @@ Parameters defining the one-level preconditioner used as smoother.
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_fillin_< / code > < BR > < code > SUB_FILLIN< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_fillin_< / code > < BR > < code > SUB_FILLIN< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < IMG
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img90.png"
SRC="img90.png"
ALT="$\ge 0$">< / SPAN> < / TD>
ALT="$\ge 0$">< / TD>
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Fill-in level < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Fill-in level < IMG
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img35.png"
SRC="img35.png"
ALT="$p$">< / SPAN > of the incomplete LU factorizations.< / TD >
ALT="$p$"> of the incomplete LU factorizations.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_iluthrs_< / code > < BR > < code > SUB_ILUTHRS< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_iluthrs_< / code > < BR > < code > SUB_ILUTHRS< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < SPAN CLASS = "textit" > kind_parameter< / SPAN > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I> kind_parameter< / I > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any real num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any real num. < IMG
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img90.png"
SRC="img90.png"
ALT="$\ge 0$">< / SPAN> < / TD>
ALT="$\ge 0$">< / TD>
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Drop tolerance < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Drop tolerance < IMG
WIDTH="11" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
WIDTH="11" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img91.png"
SRC="img91.png"
ALT="$t$">< / SPAN > in the ILU(< SPAN CLASS = "MATH" > < IMG
ALT="$t$"> in the ILU(< IMG
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img36.png"
SRC="img36.png"
ALT="$p,t$">< / SPAN > ) factorization.< / TD >
ALT="$p,t$">) factorization.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_ren_< / code > < BR > < code > SUB_REN< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_sub_ren_< / code > < BR > < code > SUB_REN< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
@ -347,7 +346,7 @@ Parameters defining the one-level preconditioner used as smoother.
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_solver_sweeps_< / code > < BR > < code > SOLVER_SWEEPS< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_solver_sweeps_< / code > < BR > < code > SOLVER_SWEEPS< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < IMG
WIDTH="31 " HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32 " HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img92.png"
SRC="img92.png"
ALT="$\ge 1$">< / TD >
ALT="$\ge 1$">< / TD >
< TD ALIGN = "LEFT" > 1< / TD >
< TD ALIGN = "LEFT" > 1< / TD >
@ -363,7 +362,7 @@ Parameters defining the one-level preconditioner used as smoother.
< P >
< P >
< BR > < P > < / P >
< BR > < P > < / P >
< DIV ALIGN = "CENTER" > < A NAME = "1 275 "> < / A >
< DIV ALIGN = "CENTER" > < A NAME = "1 306 "> < / A >
< TABLE >
< TABLE >
< CAPTION > < STRONG > Table 4:< / STRONG >
< CAPTION > < STRONG > Table 4:< / STRONG >
Parameters defining the aggregation algorithm.
Parameters defining the aggregation algorithm.
@ -396,6 +395,16 @@ Parameters defining the aggregation algorithm.
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Aggregation algorithm. Currently, only the
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Aggregation algorithm. Currently, only the
decoupled aggregation is available.< / TD >
decoupled aggregation is available.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_ord_< / code > < BR > < code > AGGR_ORD< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'NAT'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'DEGREE'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Initial ordering of indices for aggregation
algorithm: natural ordering or sorted by
descending degree of the node in the
matrix graph. Since aggregation is
heuristics, results will be different.< / TD >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_kind_< / code > < BR > < code > AGGR_KIND< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_kind_< / code > < BR > < code > AGGR_KIND< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'SMOOTHED'< / TT > < TT > 'NONSMOOTHED'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'SMOOTHED'< / TT > < TT > 'NONSMOOTHED'< / TT > < / TD >
@ -404,16 +413,16 @@ Parameters defining the aggregation algorithm.
(i.e. using the tentative prolongator).< / TD >
(i.e. using the tentative prolongator).< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_thresh_< / code > < BR > < code > AGGR_THRESH< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_thresh_< / code > < BR > < code > AGGR_THRESH< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < SPAN CLASS = "textit" > kind_parameter< / SPAN > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I> kind_parameter< / I > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > Any real num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > Any real num. < IMG
WIDTH="56" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
WIDTH="56" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img93.png"
SRC="img93.png"
ALT="$\in [0, 1]$">< / SPAN> < / TD>
ALT="$\in [0, 1]$">< / TD>
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > 0.05< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > 0.05< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Threshold < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Threshold < IMG
WIDTH="13" HEIGHT="16" ALIGN="BOTTOM" BORDER="0"
WIDTH="13" HEIGHT="16" ALIGN="BOTTOM" BORDER="0"
SRC="img94.png"
SRC="img94.png"
ALT="$\theta$">< / SPAN > in the aggregation algorithm.< / TD >
ALT="$\theta$"> in the aggregation algorithm.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_scale_< / code > < BR > < code > AGGR_SCALE< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_scale_< / code > < BR > < code > AGGR_SCALE< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I > kind_parameter< / I > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I > kind_parameter< / I > < code > )< / code > < / TD >
@ -435,55 +444,55 @@ Parameters defining the aggregation algorithm.
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'EIG_EST'< / TT > < TT > 'USER_CHOICE'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'EIG_EST'< / TT > < TT > 'USER_CHOICE'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'EIG_EST'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'EIG_EST'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > How the damping parameter < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > How the damping parameter < IMG
WIDTH="16" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
WIDTH="16" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img86.png"
SRC="img86.png"
ALT="$\omega$">< / SPAN > in the
ALT="$\omega$"> in the
smoothed aggregation should be computed:
smoothed aggregation should be computed:
either via an estimate of the spectral radius of
either via an estimate of the spectral radius of
< SPAN CLASS = "MATH" > < IMG
< IMG
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
SRC="img87.png"
SRC="img87.png"
ALT="$D^{-1}A$">< / SPAN > , or explicily
ALT="$D^{-1}A$">, or explicily
specified by the user.< / TD >
specified by the user.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_eig_< / code > < BR > < code > AGGR_EIG< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_eig_< / code > < BR > < code > AGGR_EIG< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" > < code > character(len=*)< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'A_NORMI'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'A_NORMI'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'A_NORMI'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > < TT > 'A_NORMI'< / TT > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > How to estimate the spectral radius of < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > How to estimate the spectral radius of < IMG
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
SRC="img87.png"
SRC="img87.png"
ALT="$D^{-1}A$">< / SPAN > .
ALT="$D^{-1}A$">.
Currently only the infinity norm estimate
Currently only the infinity norm estimate
is available.< / TD >
is available.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_omega_val_< / code > < BR > < code > AGGR_OMEGA_VAL< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > < code > mld_aggr_omega_val_< / code > < BR > < code > AGGR_OMEGA_VAL< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < SPAN CLASS = "textit" > kind_parameter< / SPAN > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I> kind_parameter< / I > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > Any nonnegative real num.< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > Any nonnegative real num.< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > <!-- MATH
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 68 > <!-- MATH
$4/(3\rho(D^{-1}A))$
$4/(3\rho(D^{-1}A))$
-->
-->
< SPAN CLASS = "MATH" > < IMG
< IMG
WIDTH="113" HEIGHT="39" ALIGN="MIDDLE" BORDER="0"
WIDTH="113" HEIGHT="39" ALIGN="MIDDLE" BORDER="0"
SRC="img97.png"
SRC="img97.png"
ALT="$4/(3\rho(D^{-1}A))$">< / SPAN> < / TD>
ALT="$4/(3\rho(D^{-1}A))$">< / TD>
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Damping parameter < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 170 > Damping parameter < IMG
WIDTH="16" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
WIDTH="16" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img86.png"
SRC="img86.png"
ALT="$\omega$">< / SPAN > in the smoothed aggregation algorithm.
ALT="$\omega$"> in the smoothed aggregation algorithm.
It must be set by the user if
It must be set by the user if
< code > USER_CHOICE< / code > was specified for
< code > USER_CHOICE< / code > was specified for
< code > mld_aggr_omega_alg_< / code > ,
< code > mld_aggr_omega_alg_< / code > ,
otherwise it is computed by the library, using the
otherwise it is computed by the library, using the
selected estimate of the spectral radius < SPAN CLASS = "MATH" > < IMG
selected estimate of the spectral radius < IMG
WIDTH="73" HEIGHT="39" ALIGN="MIDDLE" BORDER="0"
WIDTH="73" HEIGHT="39" ALIGN="MIDDLE" BORDER="0"
SRC="img98.png"
SRC="img98.png"
ALT="$\rho(D^{-1}A)$">< / SPAN > of
ALT="$\rho(D^{-1}A)$"> of
< SPAN CLASS = "MATH" > < IMG
< IMG
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
WIDTH="50" HEIGHT="21" ALIGN="BOTTOM" BORDER="0"
SRC="img87.png"
SRC="img87.png"
ALT="$D^{-1}A$">< / SPAN > .< / TD >
ALT="$D^{-1}A$">.< / TD >
< / TR >
< / TR >
< / TABLE >
< / TABLE >
< / DIV >
< / DIV >
@ -494,7 +503,7 @@ Parameters defining the aggregation algorithm.
< P >
< P >
< BR > < P > < / P >
< BR > < P > < / P >
< DIV ALIGN = "CENTER" > < A NAME = "1 278 "> < / A >
< DIV ALIGN = "CENTER" > < A NAME = "1 309 "> < / A >
< TABLE >
< TABLE >
< CAPTION > < STRONG > Table 5:< / STRONG >
< CAPTION > < STRONG > Table 5:< / STRONG >
Parameters defining the coarse-space correction at the coarsest
Parameters defining the coarse-space correction at the coarsest
@ -535,63 +544,63 @@ level.</CAPTION>
< TD ALIGN = "LEFT" > See note< / TD >
< TD ALIGN = "LEFT" > See note< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Solver for the diagonal blocks of the coarse matrix,
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Solver for the diagonal blocks of the coarse matrix,
in case the block Jacobi solver
in case the block Jacobi solver
is chosen as coarsest-level solver: ILU(< SPAN CLASS = "MATH" > < IMG
is chosen as coarsest-level solver: ILU(< IMG
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img35.png"
SRC="img35.png"
ALT="$p$">< / SPAN > ), MILU(< SPAN CLASS = "MATH" > < IMG
ALT="$p$">), MILU(< IMG
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img35.png"
SRC="img35.png"
ALT="$p$">< / SPAN > ),
ALT="$p$">),
ILU(< SPAN CLASS = "MATH" > < IMG
ILU(< IMG
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img36.png"
SRC="img36.png"
ALT="$p,t$">< / SPAN > ), LU from UMFPACK,
ALT="$p,t$">), LU from UMFPACK,
LU from SuperLU, plus triangular solve.< / TD >
LU from SuperLU, plus triangular solve.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_sweeps_< / code > < BR > < code > COARSE_SWEEPS< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_sweeps_< / code > < BR > < code > COARSE_SWEEPS< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < IMG
WIDTH="32 " HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="31 " HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img99.png"
SRC="img99.png"
ALT="$> 0$">< / SPAN> < / TD>
ALT="$> 0$">< / TD>
< TD ALIGN = "LEFT" > 4< / TD >
< TD ALIGN = "LEFT" > 4< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Number of Block-Jacobi sweeps when 'BJAC' is used as
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Number of Block-Jacobi sweeps when 'BJAC' is used as
coarsest-level solver.< / TD >
coarsest-level solver.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_fillin_< / code > < BR > < code > COARSE_FILLIN< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_fillin_< / code > < BR > < code > COARSE_FILLIN< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" > < code > integer< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any int. num. < IMG
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img90.png"
SRC="img90.png"
ALT="$\ge 0$">< / SPAN> < / TD>
ALT="$\ge 0$">< / TD>
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Fill-in level < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Fill-in level < IMG
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="13" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img35.png"
SRC="img35.png"
ALT="$p$">< / SPAN > of the incomplete LU factorizations.< / TD >
ALT="$p$"> of the incomplete LU factorizations.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_iluthrs_< / code > < BR > < code > COARSE_ILUTHRS< / code > < / TD >
< TR > < TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 99 > < code > mld_coarse_iluthrs_< / code > < BR > < code > COARSE_ILUTHRS< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < SPAN CLASS = "textit" > kind_parameter< / SPAN > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" > < code > real(< / code > < I> kind_parameter< / I > < code > )< / code > < / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any real. num. < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 91 > Any real. num. < IMG
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="32" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img90.png"
SRC="img90.png"
ALT="$\ge 0$">< / SPAN> < / TD>
ALT="$\ge 0$">< / TD>
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" > 0< / TD >
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Drop tolerance < SPAN CLASS = "MATH" > < IMG
< TD ALIGN = "LEFT" VALIGN = "TOP" WIDTH = 142 > Drop tolerance < IMG
WIDTH="11" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
WIDTH="11" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
SRC="img91.png"
SRC="img91.png"
ALT="$t$">< / SPAN > in the ILU(< SPAN CLASS = "MATH" > < IMG
ALT="$t$"> in the ILU(< IMG
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
WIDTH="27" HEIGHT="31" ALIGN="MIDDLE" BORDER="0"
SRC="img36.png"
SRC="img36.png"
ALT="$p,t$">< / SPAN > ) factorization.< / TD >
ALT="$p,t$">) factorization.< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > < SPAN> < B> Note:< / B > defaults for
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > < B> Note:< / B > defaults for
< TT > m< / TT > ld_coarse_subsolve_ are chosen as < / SPAN > < / TD >
< TT > m< / TT > ld_coarse_subsolve_ are chosen as< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > < SPAN > single precision version: 'SLU' if installed, 'ILU' otherwise< / SPAN > < / TD >
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > single precision version: 'SLU' if installed, 'ILU' otherwise< / TD >
< / TR >
< / TR >
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > < SPAN > double precision version: 'UMF' if installed,
< TR > < TD ALIGN = "LEFT" COLSPAN = 5 > double precision version: 'UMF' if installed,
else 'SLU' if installed, 'ILU' otherwise< / SPAN> < / TD>
else 'SLU' if installed, 'ILU' otherwise< / TD>
< / TR >
< / TR >
< / TABLE >
< / TABLE >
< / DIV >
< / DIV >
@ -603,30 +612,29 @@ level.</CAPTION>
< P >
< P >
< P >
< P >
< HR >
< DIV CLASS = "navigation" > < HR >
<!-- Navigation Panel -->
<!-- Navigation Panel -->
< A NAME = "tex2html28 4 "
< A NAME = "tex2html28 5 "
HREF="node19.html">
HREF="node19.html">
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next" SRC = "next.png" > < / A >
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next" SRC = "next.png" > < / A >
< A NAME = "tex2html28 0 "
< A NAME = "tex2html28 1 "
HREF="node16.html">
HREF="node16.html">
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up" SRC = "up.png" > < / A >
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up" SRC = "up.png" > < / A >
< A NAME = "tex2html27 4 "
< A NAME = "tex2html27 5 "
HREF="node17.html">
HREF="node17.html">
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous" SRC = "prev.png" > < / A >
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous" SRC = "prev.png" > < / A >
< A NAME = "tex2html28 2 "
< A NAME = "tex2html28 3 "
HREF="node2.html">
HREF="node2.html">
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents" SRC = "contents.png" > < / A >
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents" SRC = "contents.png" > < / A >
< BR >
< BR >
< B > Next:< / B > < A NAME = "tex2html28 5 "
< B > Next:< / B > < A NAME = "tex2html28 6 "
HREF="node19.html">Subroutine mld_precbld< / A >
HREF="node19.html">Subroutine mld_precbld< / A >
< B > Up:< / B > < A NAME = "tex2html28 1 "
< B > Up:< / B > < A NAME = "tex2html28 2 "
HREF="node16.html">User Interface< / A >
HREF="node16.html">User Interface< / A >
< B > Previous:< / B > < A NAME = "tex2html27 5 "
< B > Previous:< / B > < A NAME = "tex2html27 6 "
HREF="node17.html">Subroutine mld_precinit< / A >
HREF="node17.html">Subroutine mld_precinit< / A >
< B > < A NAME = "tex2html28 3 "
< B > < A NAME = "tex2html28 4 "
HREF="node2.html">Contents< / A > < / B > < / DIV >
HREF="node2.html">Contents< / A > < / B >
<!-- End of Navigation Panel -->
<!-- End of Navigation Panel -->
< / BODY >
< / BODY >