46 #ifndef MUELU_SMOOVECCOALESCEDROPFACTORY_DECL_HPP 47 #define MUELU_SMOOVECCOALESCEDROPFACTORY_DECL_HPP 49 #include <Xpetra_Matrix_fwd.hpp> 50 #include <Xpetra_MultiVector_fwd.hpp> 51 #include <Xpetra_VectorFactory_fwd.hpp> 52 #include <Xpetra_Vector_fwd.hpp> 53 #include <Xpetra_ImportFactory_fwd.hpp> 54 #include <Xpetra_MapFactory_fwd.hpp> 55 #include <Xpetra_CrsGraph_fwd.hpp> 56 #include <Xpetra_CrsGraphFactory.hpp> 57 #include <Xpetra_StridedMap_fwd.hpp> 58 #include <Xpetra_Map_fwd.hpp> 130 #undef MUELU_SMOOVECCOALESCEDROPFACTORY_SHORT 167 void badGuysCoalesceDrop(
const Matrix& Amat, Teuchos::ArrayRCP<Scalar> & dropParams, LO nPDEs,
const MultiVector& smoothedTVecs,
const MultiVector& smoothedNull, RCP<GraphBase>& filteredGraph)
const;
168 void badGuysDropfunc(LO row,
const Teuchos::ArrayView<const LocalOrdinal>& indices,
const Teuchos::ArrayView<const Scalar>& vals,
const MultiVector& smoothedTVecs, LO nPDEs, Teuchos::ArrayRCP<Scalar> & penalties,
const MultiVector& smoothedNull, Teuchos::ArrayRCP<LO>& Bcols, Teuchos::ArrayRCP<bool>& keepOrNot, LO &Nbcols, LO nLoc)
const;
174 #define MUELU_SMOOVECCOALESCEDROPFACTORY_SHORT 175 #endif // MUELU_SMOOVECCOALESCEDROPFACTORY_DECL_HPP
void Build(Level ¤tLevel) const
Build an object with this factory.
MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
virtual ~SmooVecCoalesceDropFactory()
Destructor.
RCP< PreDropFunctionBaseClass > predrop_
void badGuysDropfunc(LO row, const Teuchos::ArrayView< const LocalOrdinal > &indices, const Teuchos::ArrayView< const Scalar > &vals, const MultiVector &smoothedTVecs, LO nPDEs, Teuchos::ArrayRCP< Scalar > &penalties, const MultiVector &smoothedNull, Teuchos::ArrayRCP< LO > &Bcols, Teuchos::ArrayRCP< bool > &keepOrNot, LO &Nbcols, LO nLoc) const
Namespace for MueLu classes and methods.
Factory for creating a graph base on a given matrix.
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
void badGuysCoalesceDrop(const Matrix &Amat, Teuchos::ArrayRCP< Scalar > &dropParams, LO nPDEs, const MultiVector &smoothedTVecs, const MultiVector &smoothedNull, RCP< GraphBase > &filteredGraph) const
Methods to support compatible-relaxation style dropping.
Class that holds all level-specific information.
void DeclareInput(Level ¤tLevel) const
Input.
void SetPreDropFunction(const RCP< MueLu::PreDropFunctionBaseClass< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &predrop)
set predrop function
SmooVecCoalesceDropFactory()
Constructor.
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
Base class for factories that use one level (currentLevel).