|
MueLu
Version of the Day
|
Class that encapsulates external library smoothers. More...
#include <MueLu_TrilinosSmoother_decl.hpp>
Public Member Functions | |
| void | SetFactory (const std::string &varName, const RCP< const FactoryBase > &factory) |
| Custom SetFactory. More... | |
| RCP< SmootherPrototype > | Copy () const |
| When this prototype is cloned using Copy(), the clone is an Ifpack or an Ifpack2 smoother. More... | |
Public Member Functions inherited from MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| 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 |
Public Member Functions inherited from MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| SmootherBase () | |
| virtual | ~SmootherBase () |
| void | declareConstructionOutcome (bool fail, std::string msg) |
| bool | constructionSuccessful () |
| std::string | constructionErrorMsg () |
Public Member Functions inherited from MueLu::BaseClass | |
| virtual | ~BaseClass () |
| Destructor. More... | |
Public Member Functions inherited from MueLu::VerboseObject | |
| 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... | |
Public Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
| VerboseObject (const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null) | |
| virtual const VerboseObject & | setVerbLevel (const EVerbosityLevel verbLevel) const |
| virtual const VerboseObject & | setOverridingVerbLevel (const EVerbosityLevel verbLevel) const |
| virtual EVerbosityLevel | getVerbLevel () const |
| TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT RCP< const ParameterList > | getValidVerboseObjectSublist () |
| TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void | setupVerboseObjectSublist (ParameterList *paramList) |
| TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void | readVerboseObjectSublist (ParameterList *paramList, RCP< FancyOStream > *oStream, EVerbosityLevel *verbLevel) |
| void | readVerboseObjectSublist (ParameterList *paramList, VerboseObject< ObjectType > *verboseObject) |
Public Member Functions inherited from Teuchos::VerboseObjectBase | |
| virtual | ~VerboseObjectBase () |
| VerboseObjectBase (const RCP< FancyOStream > &oStream=Teuchos::null) | |
| virtual const VerboseObjectBase & | setOStream (const RCP< FancyOStream > &oStream) const |
| virtual const VerboseObjectBase & | setOverridingOStream (const RCP< FancyOStream > &oStream) const |
| virtual VerboseObjectBase & | setLinePrefix (const std::string &linePrefix) |
| virtual RCP< FancyOStream > | getOStream () const |
| virtual RCP< FancyOStream > | getOverridingOStream () const |
| virtual std::string | getLinePrefix () const |
| virtual OSTab | getOSTab (const int tabs=1, const std::string &linePrefix="") const |
Public Member Functions inherited from MueLu::Describable | |
| 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... | |
Public Member Functions inherited from Teuchos::Describable | |
| void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
| LabeledObject () | |
| virtual | ~LabeledObject () |
| virtual void | setObjectLabel (const std::string &objectLabel) |
| virtual std::string | getObjectLabel () const |
| DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
| std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
Public Member Functions inherited from MueLu::Factory | |
| void | EnableMultipleCallCheck () const |
| Constructor. More... | |
| void | DisableMultipleCallCheck () const |
| void | ResetDebugData () const |
Public Member Functions inherited from MueLu::FactoryBase | |
| FactoryBase () | |
| Constructor. More... | |
| virtual | ~FactoryBase () |
| Destructor. More... | |
| int | GetID () const |
| return unique factory id More... | |
Public Member Functions inherited from MueLu::FactoryAcceptor | |
| virtual | ~FactoryAcceptor () |
| virtual const RCP< const FactoryBase > | GetFactory (const std::string &varName) const =0 |
Public Member Functions inherited from MueLu::ParameterListAcceptorImpl | |
| ParameterListAcceptorImpl () | |
| virtual | ~ParameterListAcceptorImpl ()=default |
| virtual void | SetParameterList (const Teuchos::ParameterList ¶mList) |
| Set parameters from a parameter list and return with default values. More... | |
| 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 |
Public Member Functions inherited from MueLu::ParameterListAcceptor | |
| ParameterListAcceptor () | |
| virtual | ~ParameterListAcceptor ()=default |
| virtual Teuchos::RCP< const Teuchos::ParameterList > | GetValidParameterList () const =0 |
| Return a const parameter list of valid parameters that setParameterList() will accept. More... | |
Static Public Member Functions | |
| static std::string | Ifpack2ToIfpack1Type (const std::string &type) |
| Convert an Ifpack2 preconditioner name to Ifpack. More... | |
| static Teuchos::ParameterList | Ifpack2ToIfpack1Param (const Teuchos::ParameterList &ifpack2List) |
| Convert an Ifpack2 parameter list to Ifpack. More... | |
Static Public Member Functions inherited from MueLu::VerboseObject | |
| static void | SetMueLuOStream (const Teuchos::RCP< Teuchos::FancyOStream > &mueluOStream) |
| static void | SetMueLuOFileStream (const std::string &filename) |
| static Teuchos::RCP < Teuchos::FancyOStream > | GetMueLuOStream () |
| static void | SetDefaultVerbLevel (const VerbLevel defaultVerbLevel) |
| Set the default (global) verbosity level. More... | |
| static VerbLevel | GetDefaultVerbLevel () |
| Get the default (global) verbosity level. More... | |
Static Public Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
| static void | setDefaultVerbLevel (const EVerbosityLevel defaultVerbLevel) |
| static EVerbosityLevel | getDefaultVerbLevel () |
Static Public Member Functions inherited from Teuchos::VerboseObjectBase | |
| static void | setDefaultOStream (const RCP< FancyOStream > &defaultOStream) |
| static RCP< FancyOStream > | getDefaultOStream () |
Static Public Member Functions inherited from MueLu::Factory | |
| static void | EnableMultipleCheckGlobally () |
| static void | DisableMultipleCheckGlobally () |
Private Attributes | |
| std::string | type_ |
| ifpack1/2-specific key phrase that denote smoother type More... | |
| LO | overlap_ |
| overlap when using the smoother in additive Schwarz mode More... | |
| RCP< FactoryBase > | AFact_ |
| A Factory. More... | |
| RCP< SmootherPrototype > | sEpetra_ |
| Smoother. More... | |
| RCP< SmootherPrototype > | sTpetra_ |
| RCP< SmootherPrototype > | sBelos_ |
| RCP< SmootherPrototype > | sStratimikos_ |
| RCP< SmootherPrototype > | s_ |
| bool | triedEpetra_ |
| bool | triedTpetra_ |
| bool | triedBelos_ |
| bool | triedStratimikos_ |
| std::string | errorEpetra_ |
| std::string | errorTpetra_ |
| std::string | errorBelos_ |
| std::string | errorStratimikos_ |
Friends | |
| template<class Scalar2 , class LocalOrdinal2 , class GlobalOrdinal2 , class Node2 > | |
| class | TrilinosSmoother |
| Friend declaration required for clone() functionality. More... | |
Constructors / destructors | |
| TrilinosSmoother (const std::string &type="", const Teuchos::ParameterList ¶mList=Teuchos::ParameterList(), const LO &overlap=0) | |
| Constructor. More... | |
| virtual | ~TrilinosSmoother () |
| Destructor. More... | |
| void | DeclareInput (Level ¤tLevel) const |
| Input. More... | |
Setup and Apply methods. | |
| void | Setup (Level ¤tLevel) |
| TrilinosSmoother cannot be turned into a smoother using Setup(). Setup() always returns a RuntimeError exception. More... | |
| void | Apply (MultiVector &X, const MultiVector &B, bool InitialGuessIsZero=false) const |
| TrilinosSmoother cannot be applied. Apply() always returns a RuntimeError exception. More... | |
Overridden from Teuchos::Describable | |
| std::string | description () const |
| Return a simple one-line description of this object. More... | |
| void | print (Teuchos::FancyOStream &out, const VerbLevel verbLevel=Default) const |
| Print the object with some verbosity level to an FancyOStream object. More... | |
| RCP< SmootherPrototype > | getSmoother () |
| For diagnostic purposes. More... | |
| size_t | getNodeSmootherComplexity () const |
| Get a rough estimate of cost per iteration. More... | |
Class that encapsulates external library smoothers.
Autoselection of Ifpack or Ifpack2 according to the underlying linear algebra library.
Definition at line 91 of file MueLu_TrilinosSmoother_decl.hpp.
| MueLu::TrilinosSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TrilinosSmoother | ( | const std::string & | type = "", |
| const Teuchos::ParameterList & | paramList = Teuchos::ParameterList(), |
||
| const LO & | overlap = 0 |
||
| ) |
Constructor.
| [in] | type | Smoother type. Can currently be
|
| [in] | paramList | A list holding parameters understood by either Ifpack or Ifpack2 to guide the smoother setup. See MueLu::Ifpack2Smoother for summary of the most commonly used parameters. See the Ifpack/Ifpack2 documentation for the full set. |
Definition at line 64 of file MueLu_TrilinosSmoother_def.hpp.
|
inlinevirtual |
Destructor.
Definition at line 115 of file MueLu_TrilinosSmoother_decl.hpp.
|
virtual |
Input.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 182 of file MueLu_TrilinosSmoother_def.hpp.
|
virtual |
TrilinosSmoother cannot be turned into a smoother using Setup(). Setup() always returns a RuntimeError exception.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 230 of file MueLu_TrilinosSmoother_def.hpp.
|
virtual |
TrilinosSmoother cannot be applied. Apply() always returns a RuntimeError exception.
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 246 of file MueLu_TrilinosSmoother_def.hpp.
|
virtual |
Custom SetFactory.
Implements MueLu::FactoryAcceptor.
Definition at line 173 of file MueLu_TrilinosSmoother_def.hpp.
|
virtual |
When this prototype is cloned using Copy(), the clone is an Ifpack or an Ifpack2 smoother.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 254 of file MueLu_TrilinosSmoother_def.hpp.
|
static |
Convert an Ifpack2 preconditioner name to Ifpack.
Definition at line 283 of file MueLu_TrilinosSmoother_def.hpp.
|
static |
Convert an Ifpack2 parameter list to Ifpack.
Definition at line 328 of file MueLu_TrilinosSmoother_def.hpp.
|
virtual |
Return a simple one-line description of this object.
Reimplemented from MueLu::Describable.
Definition at line 343 of file MueLu_TrilinosSmoother_def.hpp.
| void MueLu::TrilinosSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::print | ( | Teuchos::FancyOStream & | out, |
| const VerbLevel | verbLevel = Default |
||
| ) | const |
Print the object with some verbosity level to an FancyOStream object.
Definition at line 355 of file MueLu_TrilinosSmoother_def.hpp.
|
inline |
For diagnostic purposes.
Definition at line 178 of file MueLu_TrilinosSmoother_decl.hpp.
|
inlinevirtual |
Get a rough estimate of cost per iteration.
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 181 of file MueLu_TrilinosSmoother_decl.hpp.
|
friend |
Friend declaration required for clone() functionality.
Definition at line 146 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
ifpack1/2-specific key phrase that denote smoother type
Definition at line 188 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
overlap when using the smoother in additive Schwarz mode
Definition at line 191 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
A Factory.
Definition at line 194 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 201 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 201 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 201 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 201 of file MueLu_TrilinosSmoother_decl.hpp.
|
mutableprivate |
Definition at line 203 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 206 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 206 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 206 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 206 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 207 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 207 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 207 of file MueLu_TrilinosSmoother_decl.hpp.
|
private |
Definition at line 207 of file MueLu_TrilinosSmoother_decl.hpp.