46 #ifndef MUELU_CONSTRAINTFACTORY_DEF_HPP 47 #define MUELU_CONSTRAINTFACTORY_DEF_HPP 49 #include <Xpetra_MultiVector_fwd.hpp> 50 #include <Xpetra_CrsGraph_fwd.hpp> 55 #include "MueLu_Constraint.hpp" 60 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
68 return validParamList;
71 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
73 Input(fineLevel,
"Nullspace",
"FineNullspace");
74 Input(coarseLevel,
"Nullspace",
"CoarseNullspace");
75 Input(coarseLevel,
"Ppattern");
78 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
82 RCP<MultiVector> fineNullspace = Get< RCP<MultiVector> >(fineLevel,
"Nullspace",
"FineNullspace");
83 RCP<MultiVector> coarseNullspace = Get< RCP<MultiVector> >(coarseLevel,
"Nullspace",
"CoarseNullspace");
86 constraint->Setup(*fineNullspace, *coarseNullspace,
89 Set(coarseLevel,
"Constraint", constraint);
95 #endif // MUELU_CONSTRAINTFACTORY_DEF_HPP
ParameterList & set(std::string const &name, T const &value, std::string const &docString="", RCP< const ParameterEntryValidator > const &validator=null)
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
Timer to be used in factories. Similar to Monitor but with additional timers.
Constraint space information for the potential prolongator.
Namespace for MueLu classes and methods.
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Input.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Class that holds all level-specific information.
void Build(Level &fineLevel, Level &coarseLevel) const
Build method.