nonsymmetric dynamics
ML 5.0 Smoothed Aggregation User's Guide - Trilinos - Sandia ...
ML 5.0 Smoothed Aggregation User's Guide - Trilinos - Sandia ...
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
class affects all levels in the multigrid hierarchy. There are two ways to change settings for<br />
a particular level.<br />
The first method for changing a setting on a particular level, such as level d, is to append<br />
the string “(level d)” to the option string (note that a space must separate the option<br />
and the level specification). For instance, assuming decreasing levels starting from 4, one<br />
could set the aggregation schemes as follows:<br />
MLList.set("aggregation: type","Uncoupled");<br />
MLList.set("aggregation: type (level 1)","METIS");<br />
MLList.set("aggregation: type (level 3)","MIS");<br />
If the finest level is 0 and there are 5 levels, ML uses Uncoupled for levels 0, 2 and 4, METIS<br />
for level 1 and MIS for level 3. Parameters that can be set differently on individual levels<br />
are denoted with the symbol ⋆ (this symbol is not part of the parameter name).<br />
The second method for changing a setting on a particular level is by using sublists.<br />
Smoother sublists name must be of the form ”smoother: list (level XX)”, and aggregation<br />
sublist names must be of the form ”aggregation: list (level XX)”, where XX is the level<br />
number (0 is the finest). Parameter names in the sublist do not then need a level number.<br />
Similarly, options for the coarsest level can be specified via the sublist ”coarse: list”. Below<br />
is a short code fragment to illustrate this usage.<br />
ParameterList MLList;<br />
ParameterList &smList = MLList.sublist("smoother: list (level 1)");<br />
smList.set("smoother: type","Jacobi");<br />
smList.set("smoother: sweeps",5);<br />
ParameterList &coarseList = MLList.sublist("coarse: list");<br />
coarseList.set("coarse: type","symmetric Gauss-Seidel");<br />
6.4.2 Parameter Validation<br />
By default, the MultiLevelPreconditioner class validates the input parameter list. A parameter<br />
that is misspelled/unknown or has an incorrect value type will cause an exception<br />
to be thrown and execution to halt. Note that spaces are important within a parameter’s<br />
name. Do not include non-required leading or trailing spaces. Please separate<br />
words by just one space! The option ML print initial list prints the initial list<br />
given to the MultiLevelPreconditioner constructor. The option ML print final list<br />
prints the final list actually used by the MultiLevelPreconditioner constructor. One may<br />
find it useful to print unused parameters by calling PrintUnused() after the construction<br />
of the multilevel hierarchy.<br />
6.4.3 General Options<br />
ML output<br />
[int] Controls the amount of printed information.<br />
Ranges from 0 to 10 (0 is no output, and<br />
10 is incredibly detailed output). Default: 0.<br />
22