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 | |
![]() | |
typedef std::map< std::string, RCP< const FactoryBase > > | FactoryMap |
![]() | |
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 | ~HierarchyFactory () |
Destructor. More... | |
![]() | |
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 |
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... | |
![]() | |
static void | SetDefaultOStream (const Teuchos::RCP< Teuchos::FancyOStream > &defaultOStream) |
static Teuchos::RCP< Teuchos::FancyOStream > | GetDefaultOStream () |
static void | SetDefaultVerbLevel (const VerbLevel defaultVerbLevel) |
Set the default (global) verbosity level. More... | |
static VerbLevel | GetDefaultVerbLevel () |
Get the default (global) verbosity level. More... | |
![]() | |
virtual void | SetupExtra (Hierarchy &H) const |
Setup extra data. More... | |
Teuchos::RCP< FactoryManagerBase > | LvlMngr (int levelID, int lastLevelID) const |
![]() | |
int | numDesiredLevel_ |
Xpetra::global_size_t | maxCoarseSize_ |
MsgType | verbosity_ |
bool | doPRrebalance_ |
bool | implicitTranspose_ |
int | graphOutputLevel_ |
Teuchos::Array< int > | matricesToPrint_ |
Teuchos::Array< int > | prolongatorsToPrint_ |
Teuchos::Array< int > | restrictorsToPrint_ |
Teuchos::Array< int > | nullspaceToPrint_ |
Teuchos::Array< int > | coordinatesToPrint_ |
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 125 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
inline |
Constructor.
Definition at line 134 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 114 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 133 of file MueLu_MLParameterListInterpreter_def.hpp.
|
inlinevirtual |
Destructor.
Definition at line 156 of file MueLu_MLParameterListInterpreter_decl.hpp.
void MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::SetParameterList | ( | const Teuchos::ParameterList & | paramList | ) |
Definition at line 139 of file MueLu_MLParameterListInterpreter_def.hpp.
|
virtual |
Setup Hierarchy object.
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 482 of file MueLu_MLParameterListInterpreter_def.hpp.
|
static |
Read smoother options and build the corresponding smoother factory.
Definition at line 547 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 680 of file MueLu_MLParameterListInterpreter_def.hpp.
size_t MueLu::MLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::NumTransferFactories | ( | ) | const |
Returns number of transfer factories.
Definition at line 687 of file MueLu_MLParameterListInterpreter_def.hpp.
|
privatevirtual |
Setup Operator object.
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 692 of file MueLu_MLParameterListInterpreter_def.hpp.
|
private |
nullspace can be embedded in the ML parameter list
Definition at line 203 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 204 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
coordinates can be embedded in the ML parameter list
Definition at line 207 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 208 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 209 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 215 of file MueLu_MLParameterListInterpreter_decl.hpp.
|
private |
Matrix configuration storage.
Definition at line 223 of file MueLu_MLParameterListInterpreter_decl.hpp.