46 #ifndef MUELU_SEMICOARSENPFACTORY_DECL_HPP
47 #define MUELU_SEMICOARSENPFACTORY_DECL_HPP
49 #include <Xpetra_Matrix_fwd.hpp>
52 #include "MueLu_PFactory.hpp"
59 #define GRID_SUPPLIED -1
112 #undef MUELU_SEMICOARSENPFACTORY_SHORT
144 LO
FindCpts(LO
const PtsPerLine, LO
const CoarsenRate, LO
const Thin, LO **LayerCpts)
const;
145 LO
MakeSemiCoarsenP(LO
const Ntotal, LO
const nz, LO
const CoarsenRate, LO
const LayerId[],
146 LO
const VertLineId[], LO
const DofsPerNode,
RCP<Matrix>& Amat,
155 #define MUELU_SEMICOARSENPFACTORY_SHORT
156 #endif // MUELU_SEMICOARSENPFACTORY_DECL_HPP
bool bTransferCoordinates_
MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Input.
void Build(Level &fineLevel, Level &coarseLevel) const
Build an object with this factory.
Prolongator factory performing semi-coarsening.
MueLu::DefaultScalar Scalar
void BuildP(Level &fineLevel, Level &coarseLevel) const
Abstract Build method.
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Class that holds all level-specific information.
SemiCoarsenPFactory()
Constructor.
LO FindCpts(LO const PtsPerLine, LO const CoarsenRate, LO const Thin, LO **LayerCpts) const
virtual ~SemiCoarsenPFactory()
Destructor.
LO MakeSemiCoarsenP(LO const Ntotal, LO const nz, LO const CoarsenRate, LO const LayerId[], LO const VertLineId[], LO const DofsPerNode, RCP< Matrix > &Amat, RCP< Matrix > &P, RCP< const Map > &coarseMap, const RCP< MultiVector > fineNullspace, RCP< MultiVector > &coarseNullspace) const
Factory that provides an interface for a concrete implementation of a prolongation operator...