46 #ifndef MUELU_PGPFACTORY_DECL_HPP_ 47 #define MUELU_PGPFACTORY_DECL_HPP_ 49 #include <Xpetra_Vector_fwd.hpp> 50 #include <Xpetra_VectorFactory_fwd.hpp> 51 #include <Xpetra_Matrix_fwd.hpp> 52 #include <Xpetra_Import_fwd.hpp> 53 #include <Xpetra_ImportFactory_fwd.hpp> 54 #include <Xpetra_Export_fwd.hpp> 55 #include <Xpetra_ExportFactory_fwd.hpp> 60 #include "MueLu_PFactory.hpp" 80 template <
class Scalar =
double,
class LocalOrdinal =
int,
class GlobalOrdinal = LocalOrdinal,
class Node = KokkosClassic::DefaultNode::DefaultNodeType>
82 #undef MUELU_PGPFACTORY_SHORT 150 #define MUELU_PGPFACTORY_SHORT void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Input.
void ComputeRowBasedOmega(Level &fineLevel, Level &coarseLevel, const RCP< Matrix > &A, const RCP< Matrix > &P0, const RCP< Matrix > &DinvAP0, RCP< Xpetra::Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &RowBasedOmega) const
Namespace for MueLu classes and methods.
void SetMinimizationMode(MinimizationNorm minnorm)
Set minimization mode (L2NORM for cheapest, ANORM more expensive, DINVANORM = default) ...
void Build(Level &fineLevel, Level &coarseLevel) const
Build method.
Class that holds all level-specific information.
std::string diagonalView_
Factory parameters.
void MultiplySelfAll(const RCP< Matrix > &Op, Teuchos::RCP< Xpetra::Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &InnerProdVec) const
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
MinimizationNorm GetMinimizationMode()
return minimization mode
void ReUseDampingParameters(bool bReuse)
PgPFactory()
Constructor. User can supply a factory for generating the tentative prolongator.
void BuildP(Level &fineLevel, Level &coarseLevel) const
Abstract Build method.
virtual ~PgPFactory()
Destructor.
Factory that provides an interface for a concrete implementation of a prolongation operator...
Factory for building Petrov-Galerkin Smoothed Aggregation prolongators.
void MultiplyAll(const RCP< Matrix > &left, const RCP< Matrix > &right, Teuchos::RCP< Xpetra::Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &InnerProdVec) const