|
void | SetParameterList (const Teuchos::ParameterList ¶mList) |
| Set parameters from a parameter list and return with default values. More...
|
|
RCP< Ifpack2::Preconditioner< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | getPreconditioner () |
| For diagnostic purposes. More...
|
|
size_t | getNodeSmootherComplexity () const |
| Get a rough estimate of cost per iteration. More...
|
|
| SmootherPrototype () |
| /Destructors. More...
|
|
virtual | ~SmootherPrototype () |
|
bool | IsSetup () const |
| Get the state of a smoother prototype. More...
|
|
void | IsSetup (bool const &ToF) |
| Set the state of a smoother prototype. More...
|
|
virtual void | CallBuild (Level &) const |
|
virtual void | CallDeclareInput (Level &requestedLevel) const |
|
| SmootherBase () |
|
virtual | ~SmootherBase () |
|
void | declareConstructionOutcome (bool fail, std::string msg) |
|
bool | constructionSuccessful () |
|
std::string | constructionErrorMsg () |
|
virtual | ~BaseClass () |
| Destructor. More...
|
|
VerbLevel | GetVerbLevel () const |
| Get the verbosity level. More...
|
|
void | SetVerbLevel (const VerbLevel verbLevel) |
| Set the verbosity level of this object. More...
|
|
int | GetProcRankVerbose () const |
| Get proc rank used for printing. Do not use this information for any other purpose. More...
|
|
int | SetProcRankVerbose (int procRank) const |
| Set proc rank used for printing. More...
|
|
bool | IsPrint (MsgType type, int thisProcRankOnly=-1) const |
| Find out whether we need to print out information for a specific message type. More...
|
|
Teuchos::FancyOStream & | GetOStream (MsgType type, int thisProcRankOnly=0) const |
| Get an output stream for outputting the input message type. More...
|
|
Teuchos::FancyOStream & | GetBlackHole () const |
|
| VerboseObject () |
|
virtual | ~VerboseObject () |
| Destructor. More...
|
|
virtual | ~Describable () |
| Destructor. More...
|
|
virtual std::string | ShortClassName () const |
| Return the class name of the object, without template parameters and without namespace. More...
|
|
virtual void | describe (Teuchos::FancyOStream &out_arg, const VerbLevel verbLevel=Default) const |
|
void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const |
| Print the object with some verbosity level to an FancyOStream object. More...
|
|
virtual RCP< const ParameterList > | GetValidParameterList () const |
| Return a const parameter list of valid parameters that setParameterList() will accept. More...
|
|
void | EnableMultipleCallCheck () const |
|
void | DisableMultipleCallCheck () const |
|
void | ResetDebugData () const |
|
| Factory () |
| Constructor. More...
|
|
virtual | ~Factory () |
| Destructor. More...
|
|
virtual void | SetFactory (const std::string &varName, const RCP< const FactoryBase > &factory) |
| Configuration. More...
|
|
const RCP< const FactoryBase > | GetFactory (const std::string &varName) const |
| Default implementation of FactoryAcceptor::GetFactory() More...
|
|
RCP< ParameterList > | RemoveFactoriesFromList (const ParameterList &list) const |
|
| FactoryBase () |
| Constructor. More...
|
|
virtual | ~FactoryBase () |
| Destructor. More...
|
|
int | GetID () const |
| return unique factory id More...
|
|
virtual | ~FactoryAcceptor () |
|
| ParameterListAcceptorImpl () |
|
virtual | ~ParameterListAcceptorImpl ()=default |
|
virtual const Teuchos::ParameterList & | GetParameterList () const |
|
void | SetParameter (const std::string &name, const ParameterEntry &entry) |
| Set a parameter directly as a ParameterEntry. More...
|
|
const ParameterEntry & | GetParameter (const std::string &name) const |
| Retrieves a const entry with the name name. More...
|
|
virtual void | GetDocumentation (std::ostream &os) const |
|
| ParameterListAcceptor () |
|
virtual | ~ParameterListAcceptor ()=default |
|
template<class Scalar = SmootherPrototype<>::scalar_type, class LocalOrdinal = typename SmootherPrototype<Scalar>::local_ordinal_type, class GlobalOrdinal = typename SmootherPrototype<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
class MueLu::Ifpack2Smoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >
Class that encapsulates Ifpack2 smoothers.
This class creates an Ifpack2 preconditioner factory. The factory creates a smoother based on the type and ParameterList passed into the constructor. See the constructor for more information.
Definition at line 93 of file MueLu_Ifpack2Smoother_decl.hpp.
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
template<class Scalar = SmootherPrototype<>::scalar_type, class LocalOrdinal = typename SmootherPrototype<Scalar>::local_ordinal_type, class GlobalOrdinal = typename SmootherPrototype<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
template<class Scalar2 , class LocalOrdinal2 , class GlobalOrdinal2 , class Node2 >
Constructor.
The options passed into Ifpack2Smoother are those given in the Ifpack2 user's manual.
- Parameters
-
type | smoother type |
list | options for the particular smoother (e.g., fill factor or damping parameter) |
Here is how to select some of the most common smoothers.
- Gauss-Seidel
type
= point relaxation stand-alone
- parameter list options
relaxation: type
= Gauss-Seidel
relaxation: damping factor
- symmetric Gauss-Seidel
type
= point relaxation stand-alone
- parameter list options
relaxation: type
= symmetric Gauss-Seidel
relaxation: damping factor
- Chebyshev
type
= Chebyshev
- parameter list options
chebyshev: ratio eigenvalue
chebyshev: min eigenvalue
chebyshev: max eigenvalue
chebyshev: degree
chebyshev: zero starting solution
(defaults to true
)
- ILU
type
= ILU
- parameter list options
See also Ifpack2::Relaxation, Ifpack2::Chebyshev, or Ifpack2::ILUT.
Definition at line 140 of file MueLu_Ifpack2Smoother_decl.hpp.
template<class Scalar = SmootherPrototype<>::scalar_type, class LocalOrdinal = typename SmootherPrototype<Scalar>::local_ordinal_type, class GlobalOrdinal = typename SmootherPrototype<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
template<class Scalar = SmootherPrototype<>::scalar_type, class LocalOrdinal = typename SmootherPrototype<Scalar>::local_ordinal_type, class GlobalOrdinal = typename SmootherPrototype<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
template<class Scalar = SmootherPrototype<>::scalar_type, class LocalOrdinal = typename SmootherPrototype<Scalar>::local_ordinal_type, class GlobalOrdinal = typename SmootherPrototype<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename SmootherPrototype<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>