MueLu
Version of the Day
|
#include <MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp>
Private Member Functions | |
void | SetupInitHierarchy (Hierarchy &H) const |
void | AddInitFactoryManager (int startLevel, int numDesiredLevel, RCP< FactoryManagerBase > manager) |
internal routine to add a new factory manager used for the initialization phase More... | |
Teuchos::RCP< FactoryManagerBase > | InitLvlMngr (int levelID, int lastLevelID) const |
Private Attributes | |
int | nullspaceDim_ |
nullspace can be embedded in the ML parameter list More... | |
double * | nullspace_ |
bool | bExportAggregates_ |
export aggregates More... | |
std::vector< RCP< FactoryBase > > | TransferFacts_ |
Array< RCP< FactoryManagerBase > > | init_levelManagers_ |
Constructors/Destructors. | |
AdaptiveSaMLParameterListInterpreter () | |
Constructor. More... | |
AdaptiveSaMLParameterListInterpreter (Teuchos::ParameterList ¶mList, std::vector< RCP< FactoryBase > > factoryList=std::vector< RCP< FactoryBase > >(0)) | |
AdaptiveSaMLParameterListInterpreter (const std::string &xmlFileName, std::vector< RCP< FactoryBase > > factoryList=std::vector< RCP< FactoryBase > >(0)) | |
virtual | ~AdaptiveSaMLParameterListInterpreter () |
Destructor. More... | |
void | SetParameterList (const Teuchos::ParameterList ¶mList) |
virtual void | SetupHierarchy (Hierarchy &H) const |
Setup Hierarchy object. 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 |
Additional Inherited Members | |
Public Types inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
typedef std::map< std::string, RCP< const FactoryBase > > | FactoryMap |
typedef std::map< std::string, RCP< const FactoryBase > > | FactoryMap |
Public Member Functions inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
maxCoarseSize_ (MasterList::getDefault< int >("coarse: max size")) | |
verbosity_ (Medium) | |
doPRrebalance_ (MasterList::getDefault< bool >("repartition: rebalance P and R")) | |
doPRViaCopyrebalance_ (MasterList::getDefault< bool >("repartition: explicit via new copy rebalance P and R")) | |
implicitTranspose_ (MasterList::getDefault< bool >("transpose: use implicit")) | |
fuseProlongationAndUpdate_ (MasterList::getDefault< bool >("fuse prolongation and update")) | |
suppressNullspaceDimensionCheck_ (MasterList::getDefault< bool >("nullspace: suppress dimension check")) | |
sizeOfMultiVectors_ (MasterList::getDefault< int >("number of vectors")) | |
graphOutputLevel_ (-2) | |
virtual | ~HierarchyManager ()=default |
Destructor. More... | |
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 () |
HierarchyManager (int numDesiredLevel=MasterList::getDefault< int >("max levels")) | |
Constructor. More... | |
virtual | ~HierarchyManager ()=default |
Destructor. More... | |
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... | |
void | SetNumDesiredLevel (int numDesiredLevel) |
Set the number of desired levels. More... | |
int | GetNumDesiredLevel () |
Get the number of desired levels. More... | |
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 () |
Public Attributes inherited from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
__pad0__: numDesiredLevel_(numDesiredLevel) | |
Constructor. More... | |
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 |
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 | doPRViaCopyrebalance_ |
bool | implicitTranspose_ |
bool | fuseProlongationAndUpdate_ |
bool | suppressNullspaceDimensionCheck_ |
Flag to indicate whether the check of the nullspace dimension is suppressed. More... | |
int | sizeOfMultiVectors_ |
int | graphOutputLevel_ |
-2 = no output, -1 = all levels More... | |
Teuchos::Array< int > | nullspaceToPrint_ |
Lists of entities to be exported (or saved) More... | |
Teuchos::Array< int > | coordinatesToPrint_ |
Teuchos::Array< int > | aggregatesToPrint_ |
Teuchos::Array< int > | elementToNodeMapsToPrint_ |
Teuchos::Array< std::string > | dataToKeep_ |
std::map< std::string, Teuchos::Array< int > > | matricesToPrint_ |
Teuchos::RCP < Teuchos::ParameterList > | matvecParams_ |
std::map< int, std::vector < keep_pair > > | keep_ |
Teuchos::Array< std::string > | dataToSave_ |
Definition at line 80 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
inline |
Constructor.
Definition at line 89 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
MueLu::AdaptiveSaMLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::AdaptiveSaMLParameterListInterpreter | ( | Teuchos::ParameterList & | paramList, |
std::vector< RCP< FactoryBase > > | factoryList = std::vector<RCP<FactoryBase> >(0) |
||
) |
Constructor.
paramList,: | parameter list with ML parameters |
nspVector,: | MultiVector with fine-level nullspace approximation |
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 88 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
MueLu::AdaptiveSaMLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::AdaptiveSaMLParameterListInterpreter | ( | 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 95 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
|
inlinevirtual |
Destructor.
Definition at line 113 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
void MueLu::AdaptiveSaMLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::SetParameterList | ( | const Teuchos::ParameterList & | paramList | ) |
Definition at line 104 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
|
virtual |
Setup Hierarchy object.
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 363 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
void MueLu::AdaptiveSaMLParameterListInterpreter< 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 438 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
size_t MueLu::AdaptiveSaMLParameterListInterpreter< Scalar, LocalOrdinal, GlobalOrdinal, Node >::NumTransferFactories | ( | ) | const |
Returns number of transfer factories.
Definition at line 445 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
|
private |
build multigrid hierarchy for improving nullspace use ML settings that are also used for the final full multigrid hierarchy. In contrary to the final multigrid hierarchy use only nonsmoothed transfer operators (safe time of prolongator smoothing) and cheap level smoothers (no direct solver on coarsest level).
Definition at line 336 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
|
inlineprivate |
internal routine to add a new factory manager used for the initialization phase
Definition at line 155 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
inlineprivate |
Used in SetupInitHierarchy() to access levelManagers_ Inputs i=-1 and i=size() are allowed to simplify calls to hierarchy->Setup()
Definition at line 166 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
privatevirtual |
Setup Operator object overloaded from HierarchyManager to set nDofsPerNode
Reimplemented from MueLu::HierarchyManager< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 450 of file MueLu_AdaptiveSaMLParameterListInterpreter_def.hpp.
|
private |
nullspace can be embedded in the ML parameter list
Definition at line 183 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
private |
Definition at line 184 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
private |
export aggregates
if set to true an AggregationExportFactory is used to export aggregation information (default = false)
Definition at line 187 of file MueLu_AdaptiveSaMLParameterListInterpreter_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 193 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
private |
list of levelManagers for adaptive smoothed aggregation initialization phase
Definition at line 197 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.
|
private |
Matrix configuration storage.
Definition at line 206 of file MueLu_AdaptiveSaMLParameterListInterpreter_decl.hpp.