10#ifndef MUELU_FILTEREDAFACTORY_DECL_HPP
11#define MUELU_FILTEREDAFACTORY_DECL_HPP
18#include "MueLu_LWGraph.hpp"
35#undef MUELU_FILTEREDAFACTORY_SHORT
70 void BuildReuse(
const Matrix& A,
const LWGraph& G,
const bool lumping,
double dirichletThresh, Matrix& filteredA)
const;
71 void BuildNew(
const Matrix& A,
const LWGraph& G,
const bool lumping,
double dirichletThresh, Matrix& filteredA)
const;
72 void BuildNewUsingRootStencil(
const Matrix& A,
const LWGraph& G,
double dirichletThresh,
Level& currentLevel, Matrix& filteredA,
bool use_spread_lumping,
double DdomAllowGrowthRate,
double DdomCap)
const;
73 void ExperimentalLumping(
const Matrix& A, Matrix& filteredA,
double rho,
double rho2)
const;
79#define MUELU_FILTEREDAFACTORY_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Factory for building filtered matrices using filtered graphs.
void BuildNewUsingRootStencil(const Matrix &A, const LWGraph &G, double dirichletThresh, Level ¤tLevel, Matrix &filteredA, bool use_spread_lumping, double DdomAllowGrowthRate, double DdomCap) const
void BuildNew(const Matrix &A, const LWGraph &G, const bool lumping, double dirichletThresh, Matrix &filteredA) const
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
virtual ~FilteredAFactory()
Destructor.
void DeclareInput(Level ¤tLevel) const
Input.
void BuildReuse(const Matrix &A, const LWGraph &G, const bool lumping, double dirichletThresh, Matrix &filteredA) const
void ExperimentalLumping(const Matrix &A, Matrix &filteredA, double rho, double rho2) const
void Build(Level ¤tLevel) const
Build method.
Lightweight MueLu representation of a compressed row storage graph.
Class that holds all level-specific information.
Base class for factories that use one level (currentLevel).
Namespace for MueLu classes and methods.
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar