46#ifndef MUELU_MASTERLIST_HPP
47#define MUELU_MASTERLIST_HPP
52#include <Teuchos_ParameterList.hpp>
53#include <Teuchos_ParameterEntry.hpp>
54#include <Teuchos_any.hpp>
70 template <
typename T,
typename U>
class DefaultProblemStrings;
75 static Teuchos::RCP<const Teuchos::ParameterList>
List();
82 return List()->get<T>(name);
86 static const Teuchos::ParameterEntry&
getEntry(
const std::string& name) {
87 return List()->getEntry(name);
95 Teuchos::ParameterEntry entry =
getEntry(name);
99 ss <<
"<Parameter name=\"" << name <<
"\" type=\"" << entry.getAny().typeName() <<
"\" value=\"" << data <<
"\"/>";
104 static std::string
ML2MueLu(
const std::string& name) {
105 std::map<std::string,std::string>::iterator it;
136 template <
typename T,
typename U>
148 operator std::map<T, U>()
const {
Helper class to initialize DefaultProblemTypeLists_ in class MasterList.
DefaultProblemStrings(const T &key, const U &val)
DefaultProblemStrings< T, U > & operator()(const T &key, const U &val)
Static class that holds the complete list of valid MueLu parameters.
static std::string problemType_
The problem type associated with the current problem-specific ParameterList.
static Teuchos::RCP< Teuchos::ParameterList > GetProblemSpecificList(std::string const &problemType)
Return default parameter settings for the specified problem type.
MasterList(const MasterList &)
static const std::string stringList_
String equivalent of the masterList_.
static Teuchos::RCP< Teuchos::ParameterList > masterList_
A ParameterList that holds all valid parameters and their default values.
static std::string ML2MueLu(const std::string &name)
Translate ML parameter to corresponding MueLu parameter.
static std::string generateXMLParameterString(const std::string &name, T data)
Create xml string for given MueLu parameter (easy xml input format)
static const T & getDefault(const std::string &name)
Returns default value on the "master" list for a parameter with the specified name and type.
static Teuchos::RCP< Teuchos::ParameterList > problemSpecificList_
A ParameterList that holds all valid parameters and their default values for a particular problem typ...
static Teuchos::RCP< const Teuchos::ParameterList > List()
Return a "master" list of all valid parameters and their default values.
static std::string interpretParameterName(const std::string &name, const std::string &value)
static std::map< std::string, std::string > DefaultProblemTypeLists_
Map of string equivalents of the problemSpecificList_. The first entry is the problem type,...
MasterList & operator=(const MasterList &)
static std::map< std::string, std::string > ML2MueLuLists_
Map of ML parameter strings to corresponding MueLu parametes.
static const Teuchos::ParameterEntry & getEntry(const std::string &name)
Returns default entry from the "master" list corresponding to the specified name.
Namespace for MueLu classes and methods.