46 #ifndef MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_DECL_HPP
47 #define MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_DECL_HPP
50 #ifdef HAVE_MUELU_KOKKOS_REFACTOR
52 #include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
59 #include "MueLu_LWGraph_kokkos.hpp"
86 class AggregationPhase2bAlgorithm_kokkos :
87 public MueLu::AggregationAlgorithmBase_kokkos<LocalOrdinal,GlobalOrdinal,Node> {
88 #undef MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_SHORT
92 using execution_space =
typename LWGraph_kokkos::execution_space;
93 using memory_space =
typename LWGraph_kokkos::memory_space;
99 AggregationPhase2bAlgorithm_kokkos(
const RCP<const FactoryBase>& = Teuchos::null) { }
102 virtual ~AggregationPhase2bAlgorithm_kokkos() { }
112 void BuildAggregates(
const ParameterList& params,
113 const LWGraph_kokkos& graph,
114 Aggregates_kokkos& aggregates,
116 LO& numNonAggregatedNodes)
const;
118 void BuildAggregatesRandom(
const ParameterList& params,
119 const LWGraph_kokkos& graph,
120 Aggregates_kokkos& aggregates,
122 LO& numNonAggregatedNodes)
const;
124 void BuildAggregatesDeterministic(
const ParameterList& params,
125 const LWGraph_kokkos& graph,
126 Aggregates_kokkos& aggregates,
128 LO& numNonAggregatedNodes)
const;
131 std::string description()
const {
return "Phase 2b (expansion)"; }
136 #define MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_SHORT
137 #endif // HAVE_MUELU_KOKKOS_REFACTOR
138 #endif // MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_DECL_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
MueLu::DefaultGlobalOrdinal GlobalOrdinal