46 #ifndef MUELU_BRICKAGGREGATIONFACTORY_DECL_HPP_ 47 #define MUELU_BRICKAGGREGATIONFACTORY_DECL_HPP_ 78 template <
class Scalar = double,
79 class LocalOrdinal = int,
80 class GlobalOrdinal = LocalOrdinal,
83 #undef MUELU_BRICKAGGREGATIONFACTORY_SHORT 86 typedef Teuchos::ScalarTraits<Scalar>
STS;
96 bool operator()(
const Scalar& x,
const Scalar& y)
const {
97 if (STS::magnitude(x - y) < 1e-14)
99 return STS::real(x) < STS::real(y);
102 typedef std::map<Scalar,GlobalOrdinal,compare>
container;
139 bool isRoot (LocalOrdinal LID)
const;
140 GlobalOrdinal
getRoot (LocalOrdinal LID)
const;
141 GlobalOrdinal
getAggGID(LocalOrdinal LID)
const;
154 std::map<GlobalOrdinal,GlobalOrdinal>
revMap_;
159 #define MUELU_BRICKAGGREGATIONFACTORY_SHORT BrickAggregationFactory()
Constructor.
bool operator()(const Scalar &x, const Scalar &y) const
void DeclareInput(Level ¤tLevel) const
Input.
virtual ~BrickAggregationFactory()
Destructor.
ArrayRCP< const double > z_
Teuchos::ScalarTraits< Scalar > STS
Namespace for MueLu classes and methods.
RCP< container > Construct1DMap(const RCP< const Teuchos::Comm< int > > &comm, const ArrayRCP< const double > &x) const
void Setup(const RCP< const Teuchos::Comm< int > > &comm, const RCP< Xpetra::MultiVector< double, LO, GO, NO > > &coords, const RCP< const Map > &map) const
Class that holds all level-specific information.
GlobalOrdinal getRoot(LocalOrdinal LID) const
std::map< GlobalOrdinal, GlobalOrdinal > revMap_
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
void Build(Level ¤tLevel) const
Build aggregates.
ArrayRCP< const double > x_
ArrayRCP< const double > y_
bool isRoot(LocalOrdinal LID) const
std::map< Scalar, GlobalOrdinal, compare > container
Base class for factories that use one level (currentLevel).
GlobalOrdinal getAggGID(LocalOrdinal LID) const