10#ifndef MUELU_AGGREGATIONPHASE2AALGORITHM_DECL_HPP_
11#define MUELU_AGGREGATIONPHASE2AALGORITHM_DECL_HPP_
20#include "MueLu_LWGraph.hpp"
49#undef MUELU_AGGREGATIONPHASE2AALGORITHM_SHORT
69 void SetupPhase(
const ParameterList& params, Teuchos::RCP<
const Teuchos::Comm<int>>& comm, LO& numLocalNodes, LO& numNonAggregatedNodes)
override;
77 LO& numNonAggregatedNodes)
const override;
83 LO& numNonAggregatedNodes)
const;
89 LO& numNonAggregatedNodes)
const;
92 std::string
description()
const override {
return "Phase 2a (secondary)"; }
100#define MUELU_AGGREGATIONPHASE2AALGORITHM_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Container class for aggregation information.
Pure virtual base class for all MueLu aggregation algorithms.
Kokkos::View< unsigned *, typename LWGraphHostType::device_type > AggStatHostType
Kokkos::View< unsigned *, typename LWGraphType::device_type > AggStatType
Among unaggregated points, see if we can make a reasonable size aggregate out of it.
std::string description() const override
Return a simple one-line description of this object.
virtual ~AggregationPhase2aAlgorithm()
Destructor.
void BuildAggregatesNonKokkos(const ParameterList ¶ms, const LWGraph &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatHostType &aggStat, LO &numNonAggregatedNodes) const override
void SetupPhase(const ParameterList ¶ms, Teuchos::RCP< const Teuchos::Comm< int > > &comm, LO &numLocalNodes, LO &numNonAggregatedNodes) override
Local aggregation.
void BuildAggregatesDeterministic(const Teuchos::ParameterList ¶ms, const LWGraph_kokkos &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatType &aggStat, LO &numNonAggregatedNodes) const
void BuildAggregates(const Teuchos::ParameterList ¶ms, const LWGraph_kokkos &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatType &aggStat, LO &numNonAggregatedNodes) const override
AggregationPhase2aAlgorithm(const RCP< const FactoryBase > &=Teuchos::null)
Constructor.
void BuildAggregatesRandom(const Teuchos::ParameterList ¶ms, const LWGraph_kokkos &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatType &aggStat, LO &numNonAggregatedNodes) const
Lightweight MueLu representation of a compressed row storage graph.
Lightweight MueLu representation of a compressed row storage graph.
Namespace for MueLu classes and methods.
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode