42 #ifndef THYRA_IFPACK_PRECONDITIONER_FACTORY_DECL_HPP 43 #define THYRA_IFPACK_PRECONDITIONER_FACTORY_DECL_HPP 45 #include "Thyra_PreconditionerFactoryBase.hpp" 46 #include "Thyra_EpetraOperatorViewExtractorBase.hpp" 47 #include "Teuchos_StandardCompositionMacros.hpp" 81 bool isCompatible(
const LinearOpSourceBase<double> &fwdOpSrc )
const;
87 Teuchos::RCP<PreconditionerBase<double> >
createPrec()
const;
90 const Teuchos::RCP<
const LinearOpSourceBase<double> > &fwdOpSrc
91 ,PreconditionerBase<double> *prec
92 ,
const ESupportSolveUse supportSolveUse
96 PreconditionerBase<double> *prec
97 ,Teuchos::RCP<
const LinearOpSourceBase<double> > *fwdOpSrc
98 ,ESupportSolveUse *supportSolveUse
107 void setParameterList(Teuchos::RCP<Teuchos::ParameterList>
const& paramList);
132 Teuchos::RCP<Teuchos::ParameterList> paramList_;
133 ::Ifpack::EPrecType precType_;
139 static void initializeTimers();
145 #endif // THYRA_IFPACK_PRECONDITIONER_FACTORY_DECL_HPP Concrete preconditioner factory subclass based on Ifpack.
void initializePrec(const Teuchos::RCP< const LinearOpSourceBase< double > > &fwdOpSrc, PreconditionerBase< double > *prec, const ESupportSolveUse supportSolveUse) const
bool applySupportsConj(EConj conj) const
std::string description() const
IfpackPreconditionerFactory()
void uninitializePrec(PreconditionerBase< double > *prec, Teuchos::RCP< const LinearOpSourceBase< double > > *fwdOpSrc, ESupportSolveUse *supportSolveUse) const
Teuchos::RCP< PreconditionerBase< double > > createPrec() const
bool isCompatible(const LinearOpSourceBase< double > &fwdOpSrc) const
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
bool applyTransposeSupportsConj(EConj conj) const
void setParameterList(Teuchos::RCP< Teuchos::ParameterList > const ¶mList)
Teuchos::RCP< const Teuchos::ParameterList > getParameterList() const
STANDARD_COMPOSITION_MEMBERS(EpetraOperatorViewExtractorBase, epetraFwdOpViewExtractor)
Set the strategy object used to extract an Epetra_Operator view of an input forward operator...
Teuchos::RCP< Teuchos::ParameterList > unsetParameterList()
Teuchos::RCP< Teuchos::ParameterList > getNonconstParameterList()