MueLu
Version of the Day
|
Class that accepts ML-style parameters and builds a MueLu preconditioner. This interpreter uses the same default values as ML. This allows to compare ML/MueLu results. More...
#include <MueLu_MLParameterListInterpreter_decl.hpp>
Private Attributes | |
int | nullspaceDim_ |
nullspace can be embedded in the ML parameter list More... | |
double * | nullspace_ |
double * | xcoord_ |
coordinates can be embedded in the ML parameter list More... | |
double * | ycoord_ |
double * | zcoord_ |
std::vector< RCP< FactoryBase > > | TransferFacts_ |
Constructors/Destructors. | |
MLParameterListInterpreter () | |
Constructor. More... | |
MLParameterListInterpreter (Teuchos::ParameterList ¶mList, Teuchos::RCP< const Teuchos::Comm< int > > comm=Teuchos::null, std::vector< RCP< FactoryBase > > factoryList=std::vector< RCP< FactoryBase > >(0)) | |
MLParameterListInterpreter (const std::string &xmlFileName, std::vector< RCP< FactoryBase > > factoryList=std::vector< RCP< FactoryBase > >(0)) | |
virtual | ~MLParameterListInterpreter () |
Destructor. More... | |
void | SetParameterList (const Teuchos::ParameterList ¶mList) |
virtual void | SetupHierarchy (Hierarchy &H) const |
Setup Hierarchy object. More... | |
static helper functions translating parameter list to factories | |
static helper functions that also can be used from outside for translating ML parameters into MueLu objects | |
static RCP< SmootherFactory > | GetSmootherFactory (const Teuchos::ParameterList ¶mList, const RCP< FactoryBase > &AFact=Teuchos::null) |
Read smoother options and build the corresponding smoother factory. More... | |
Handling of additional user-specific transfer factories | |
void | AddTransferFactory (const RCP< FactoryBase > &factory) |
Add transfer factory in the end of list of transfer factories for RAPFactory. More... | |
size_t | NumTransferFactories () const |
Returns number of transfer factories. More... | |
int | blksize_ |
Matrix configuration storage. More... | |
virtual void | SetupOperator (Operator &Op) const |
Setup Operator object. More... | |
Additional Inherited Members | |
Public Types inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
typedef std::map< std::string, RCP< const FactoryBase > > | FactoryMap |
Public Member Functions inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
HierarchyManager (int numDesiredLevel=MasterList::getDefault< int >("max levels")) | |
virtual | ~HierarchyManager () |
void | AddFactoryManager (int startLevel, int numDesiredLevel, RCP< FactoryManagerBase > manager) |
RCP< FactoryManagerBase > | GetFactoryManager (int levelID) const |
size_t | getNumFactoryManagers () const |
returns number of factory managers stored in levelManagers_ vector. More... | |
void | CheckConfig () |
virtual RCP< Hierarchy > | CreateHierarchy () const |
Create an empty Hierarchy object. More... | |
virtual RCP< Hierarchy > | CreateHierarchy (const std::string &label) const |
Create a labeled empty Hierarchy object. More... | |
Public Member Functions inherited from MueLu::HierarchyFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
virtual | ~HierarchyFactory () |
Destructor. More... | |
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 |
virtual std::string | description () const |
Return a simple one-line description of this object. More... | |
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) |
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 Attributes inherited from Teuchos::Describable | |
static const EVerbosityLevel | verbLevel_default |
Protected Member Functions inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
virtual void | SetupExtra (Hierarchy &) const |
Setup extra data. More... | |
Teuchos::RCP< FactoryManagerBase > | LvlMngr (int levelID, int lastLevelID) const |
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 Attributes inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
int | numDesiredLevel_ |
Xpetra::global_size_t | maxCoarseSize_ |
MsgType | verbosity_ |
bool | doPRrebalance_ |
bool | implicitTranspose_ |
bool | fuseProlongationAndUpdate_ |
int | sizeOfMultiVectors_ |
int | graphOutputLevel_ |
Teuchos::Array< int > | matricesToPrint_ |
Teuchos::Array< int > | prolongatorsToPrint_ |
Teuchos::Array< int > | restrictorsToPrint_ |
Teuchos::Array< int > | nullspaceToPrint_ |
Teuchos::Array< int > | coordinatesToPrint_ |
Teuchos::Array< int > | elementToNodeMapsToPrint_ |
Teuchos::RCP < Teuchos::ParameterList > | matvecParams_ |
std::map< int, std::vector < keep_pair > > | keep_ |
Class that accepts ML-style parameters and builds a MueLu preconditioner. This interpreter uses the same default values as ML. This allows to compare ML/MueLu results.
The parameter list is validated only if the package ML is available and parameter "ML validate parameter list" is true. TODO: A warning is issued if ML is not available
Definition at line 128 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
inline |
Constructor.
Definition at line 137 of file MueLu_MLParameterListInterpreter_decl.hpp.
MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::MLParameterListInterpreter | ( | Teuchos::ParameterList & | paramList, |
Teuchos::RCP< const Teuchos::Comm< int > > | comm = Teuchos::null , |
||
std::vector< RCP< FactoryBase > > | factoryList = std::vector<RCP<FactoryBase> >(0) |
||
) |
Constructor.
paramList,: | parameter list with ML parameters | |
[in] | comm | (RCP<Teuchos::Comm<int> >): Optional RCP of a Teuchos communicator (default: Teuchos::null) |
factoryList,: | vector with RCP of FactoryBase objects |
The factories in factoryList allow the user to add user-specific factories to the MueLu Hierarchy. The idea is to be able to add some factories that write out some debug information etc. which are not handled by the ML Parameter List itself. See information about the RAPFactory::AddTransferFactory method, too!
Definition at line 126 of file MueLu_MLParameterListInterpreter_def.hpp.
MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::MLParameterListInterpreter | ( | const std::string & | xmlFileName, |
std::vector< RCP< FactoryBase > > | factoryList = std::vector<RCP<FactoryBase> >(0) |
||
) |
Constructor.
xmlFileName,: | file name for XML file with ML parameters |
factoryList,: | vector with RCP of FactoryBase objects |
The factories in factoryList allow the user to add user-specific factories to the MueLu Hierarchy. The idea is to be able to add some factories that write out some debug information etc. which are not handled by the ML Parameter List itself. See information about the RAPFactory::AddTransferFactory method, too!
Definition at line 145 of file MueLu_MLParameterListInterpreter_def.hpp.
|
inlinevirtual |
Destructor.
Definition at line 159 of file MueLu_MLParameterListInterpreter_decl.hpp.
void MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::SetParameterList | ( | const Teuchos::ParameterList & | paramList | ) |
Definition at line 151 of file MueLu_MLParameterListInterpreter_def.hpp.
|
virtual |
Setup Hierarchy object.
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 564 of file MueLu_MLParameterListInterpreter_def.hpp.
|
static |
Read smoother options and build the corresponding smoother factory.
Definition at line 629 of file MueLu_MLParameterListInterpreter_def.hpp.
void MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::AddTransferFactory | ( | const RCP< FactoryBase > & | factory | ) |
Add transfer factory in the end of list of transfer factories for RAPFactory.
This allows the user to add user-specific factories to the MueLu Hierarchy. The idea is to be able to add some factories that write out some debug information etc. which are not handled by the ML Parameter List itself. See information about the RAPFactory::AddTransferFactory method, too!
Definition at line 765 of file MueLu_MLParameterListInterpreter_def.hpp.
size_t MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::NumTransferFactories | ( | ) | const |
Returns number of transfer factories.
Definition at line 772 of file MueLu_MLParameterListInterpreter_def.hpp.
|
privatevirtual |
Setup Operator object.
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 777 of file MueLu_MLParameterListInterpreter_def.hpp.
|
private |
nullspace can be embedded in the ML parameter list
Definition at line 206 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 207 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
coordinates can be embedded in the ML parameter list
Definition at line 210 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 211 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 212 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
list of user-defined transfer Factories We use this vector to add some special user-given factories to the Hierarchy (RAPFactory) This way the user can extend the standard functionality of the MLParameterListInterpreter beyond the capabibilities of ML.
Definition at line 218 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Matrix configuration storage.
Definition at line 226 of file MueLu_MLParameterListInterpreter_decl.hpp.