47 #ifndef THYRA_MUELU_MAXWELL1_PRECONDITIONER_FACTORY_DECL_HPP
48 #define THYRA_MUELU_MAXWELL1_PRECONDITIONER_FACTORY_DECL_HPP
52 #if defined(HAVE_MUELU_STRATIMIKOS) && defined(HAVE_MUELU_THYRA)
54 #include <Tpetra_KokkosCompat_DefaultNode.hpp>
55 #include "Thyra_DefaultPreconditioner.hpp"
56 #include "Thyra_PreconditionerFactoryBase.hpp"
66 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
67 class MueLuMaxwell1PreconditionerFactory :
public PreconditionerFactoryBase<Scalar> {
73 MueLuMaxwell1PreconditionerFactory();
80 bool isCompatible(
const LinearOpSourceBase<Scalar>& fwdOp)
const;
84 void initializePrec(
const Teuchos::RCP<
const LinearOpSourceBase<Scalar> >& fwdOp,
85 PreconditionerBase<Scalar>* prec,
86 const ESupportSolveUse supportSolveUse)
const;
88 void uninitializePrec(PreconditionerBase<Scalar>* prec,
90 ESupportSolveUse* supportSolveUse)
const;
113 std::string description()
const;
125 #endif // #ifdef HAVE_MUELU_STRATIMIKOS
127 #endif // THYRA_MUELU_MAXWELL1_PRECONDITIONER_FACTORY_DECL_HPP
void getValidParameters(Teuchos::ParameterList ¶ms)