| MueLu
    Version of the Day
    | 
This class first calculates row- and column permutation operators and applies a smoother to the permuted linear system. More...
#include <MueLu_PermutingSmoother_decl.hpp>
 
  
 | Public Member Functions | |
| RCP< SmootherPrototype > | Copy () const | 
|  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 | |
| 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 | 
|  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 () | 
|  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 | 
| virtual const Teuchos::ParameterList & | GetParameterListWithoutValidation () 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 | 
| 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 > | permFact_ | 
| Permutation Factory.  More... | |
| RCP< Matrix > | permQT_ | 
| permQT matrix object  More... | |
| RCP< Matrix > | permP_ | 
| permP matrix object  More... | |
| Teuchos::RCP< Matrix > | diagScalingOp_ | 
| scaling matrix object  More... | |
| RCP< SmootherPrototype > | s_ | 
| Smoother.  More... | |
| Constructors / destructors | |
| PermutingSmoother (std::string const &mapName, const RCP< const FactoryBase > &mapFact, std::string const &type="", const Teuchos::ParameterList ¶mList=Teuchos::ParameterList(), LO const &overlap=0, RCP< FactoryBase > permFact=Teuchos::null) | |
| Constructor.  More... | |
| virtual | ~PermutingSmoother () | 
| Destructor.  More... | |
| void | DeclareInput (Level ¤tLevel) const | 
| Input.  More... | |
| Setup and Apply methods. | |
| void | Setup (Level ¤tLevel) | 
| Set up the direct solver.  More... | |
| void | Apply (MultiVector &X, const MultiVector &B, bool InitialGuessIsZero=false) const | 
| Apply the direct solver. Solves the linear system AX=Busing the constructed solver.  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... | |
| size_t | getNodeSmootherComplexity () const | 
| Get a rough estimate of cost per iteration.  More... | |
| Additional Inherited Members | |
|  Public Types inherited from MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| typedef Scalar | scalar_type | 
| typedef LocalOrdinal | local_ordinal_type | 
| typedef GlobalOrdinal | global_ordinal_type | 
| typedef Node | node_type | 
|  Public Types inherited from MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| typedef Scalar | scalar_type | 
| typedef LocalOrdinal | local_ordinal_type | 
| typedef GlobalOrdinal | global_ordinal_type | 
| typedef Node | node_type | 
|  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 | EnableTimerSync () | 
| static void | DisableTimerSync () | 
| static void | EnableMultipleCheckGlobally () | 
| static void | DisableMultipleCheckGlobally () | 
|  Static Public Attributes inherited from Teuchos::Describable | |
| static const EVerbosityLevel | verbLevel_default | 
|  Protected Member Functions inherited from Teuchos::VerboseObject< VerboseObject > | |
| void | initializeVerboseObject (const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null) | 
|  Protected Member Functions inherited from Teuchos::VerboseObjectBase | |
| void | initializeVerboseObjectBase (const RCP< FancyOStream > &oStream=Teuchos::null) | 
| virtual void | informUpdatedVerbosityState () const | 
|  Protected Member Functions inherited from MueLu::Factory | |
| void | Input (Level &level, const std::string &varName) const | 
| void | Input (Level &level, const std::string &varName, const std::string &varParamName) const | 
| template<class T > | |
| T | Get (Level &level, const std::string &varName) const | 
| template<class T > | |
| T | Get (Level &level, const std::string &varName, const std::string &varParamName) const | 
| template<class T > | |
| void | Set (Level &level, const std::string &varName, const T &data) const | 
| template<class T > | |
| bool | IsType (Level &level, const std::string &varName) const | 
| bool | IsAvailable (Level &level, const std::string &varName) const | 
|  Static Protected Attributes inherited from MueLu::Factory | |
| static bool | timerSync_ = false | 
This class first calculates row- and column permutation operators and applies a smoother to the permuted linear system.
Definition at line 47 of file MueLu_PermutingSmoother_decl.hpp.
| MueLu::PermutingSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::PermutingSmoother | ( | std::string const & | mapName, | 
| const RCP< const FactoryBase > & | mapFact, | ||
| std::string const & | type = "", | ||
| const Teuchos::ParameterList & | paramList = Teuchos::ParameterList(), | ||
| LO const & | overlap = 0, | ||
| RCP< FactoryBase > | permFact = Teuchos::null | ||
| ) | 
Constructor.
| [in] | mapName | Name of map object in level class, which rows/cols can be permuted | 
| [in] | mapFact | generating factory of map with name mapName | 
| [in] | type | string that contains type of smoother (e.g. "RELAXATION" or "ILU") | 
| [in] | paramList | parameter list with parameters for smoother (default: empty) | 
| [in] | overlap | LocalOrdinal with overlap inforation (default: 0) | 
| [in] | permFact | factory, generating permutation and scaling matrices (default: Teuchos::null -> use internal PermutationFactory instance) | 
Definition at line 38 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Destructor.
Definition at line 71 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Input.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 74 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Set up the direct solver.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 83 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Apply the direct solver. Solves the linear system AX=B using the constructed solver. 
| X | initial guess | 
| B | right-hand side | 
| InitialGuessIsZero | This option has no effect. | 
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 100 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 123 of file MueLu_PermutingSmoother_def.hpp.
| 
 | virtual | 
Return a simple one-line description of this object.
Reimplemented from MueLu::Describable.
Definition at line 128 of file MueLu_PermutingSmoother_def.hpp.
| void MueLu::PermutingSmoother< 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 135 of file MueLu_PermutingSmoother_def.hpp.
| 
 | inlinevirtual | 
Get a rough estimate of cost per iteration.
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 103 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
ifpack1/2-specific key phrase that denote smoother type
Definition at line 109 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
overlap when using the smoother in additive Schwarz mode
Definition at line 112 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
Permutation Factory.
Definition at line 115 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
permQT matrix object
Definition at line 118 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
permP matrix object
Definition at line 121 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
scaling matrix object
Definition at line 124 of file MueLu_PermutingSmoother_decl.hpp.
| 
 | private | 
Definition at line 131 of file MueLu_PermutingSmoother_decl.hpp.