46 #ifndef MUELU_SMOOTHERFACTORY_DECL_HPP 47 #define MUELU_SMOOTHERFACTORY_DECL_HPP 87 template <
class Scalar = double,
88 class LocalOrdinal = int,
89 class GlobalOrdinal = LocalOrdinal,
90 class Node = KokkosClassic::DefaultNode::DefaultNodeType>
99 #undef MUELU_SMOOTHERFACTORY_SHORT 146 SmootherFactory(RCP<SmootherPrototype> preAndPostSmootherPrototype = Teuchos::null);
148 SmootherFactory(RCP<SmootherPrototype> preSmootherPrototype, RCP<SmootherPrototype> postSmootherPrototype);
160 void SetSmootherPrototypes(RCP<SmootherPrototype> preSmootherPrototype, RCP<SmootherPrototype> postSmootherPrototype);
163 void GetSmootherPrototypes(RCP<SmootherPrototype>& preSmootherPrototype, RCP<SmootherPrototype>& postSmootherPrototype)
const;
223 #define MUELU_SMOOTHERFACTORY_SHORT 224 #endif // MUELU_SMOOTHERFACTORY_DECL_HPP
Generic Smoother Factory for generating the smoothers of the MG hierarchy.
SmootherFactory(RCP< SmootherPrototype > preAndPostSmootherPrototype=Teuchos::null)
Constructor.
virtual void describe(Teuchos::FancyOStream &out_arg, const VerbLevel verbLevel=Default) const
RCP< SmootherPrototype > postSmootherPrototype_
Namespace for MueLu classes and methods.
void BuildSmoother(Level ¤tLevel, const PreOrPost preOrPost=BOTH) const
void describe(Teuchos::FancyOStream &out, const VerbLevel verbLevel=Default) const
void CheckPrototypes() const
void Build(Level ¤tLevel) const
Creates pre and post smoothers.
void SetSmootherPrototypes(RCP< SmootherPrototype > preAndPostSmootherPrototype)
Set smoother prototypes.
Class that holds all level-specific information.
virtual ~SmootherFactory()
std::string description() const
Return a simple one-line description of this object.
RCP< SmootherPrototype > preSmootherPrototype_
GlobalOrdinal global_ordinal_type
void GetSmootherPrototypes(RCP< SmootherPrototype > &preSmootherPrototype, RCP< SmootherPrototype > &postSmootherPrototype) const
Get smoother prototypes.
LocalOrdinal local_ordinal_type
void DeclareInput(Level ¤tLevel) const
Input.