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 device_type =
typename LWGraph_kokkos::device_type;
93 using execution_space =
typename LWGraph_kokkos::execution_space;
94 using memory_space =
typename LWGraph_kokkos::memory_space;
100 AggregationPhase2bAlgorithm_kokkos(
const RCP<const FactoryBase>& = Teuchos::null) { }
103 virtual ~AggregationPhase2bAlgorithm_kokkos() { }
113 void BuildAggregates(
const ParameterList& params,
114 const LWGraph_kokkos& graph,
115 Aggregates_kokkos& aggregates,
117 LO& numNonAggregatedNodes)
const;
119 void BuildAggregatesRandom(
const ParameterList& params,
120 const LWGraph_kokkos& graph,
121 Aggregates_kokkos& aggregates,
123 LO& numNonAggregatedNodes)
const;
125 void BuildAggregatesDeterministic(
const ParameterList& params,
126 const LWGraph_kokkos& graph,
127 Aggregates_kokkos& aggregates,
129 LO& numNonAggregatedNodes)
const;
132 std::string description()
const {
return "Phase 2b (expansion)"; }
137 #define MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_SHORT 138 #endif // HAVE_MUELU_KOKKOS_REFACTOR 139 #endif // MUELU_AGGREGATIONPHASE2BALGORITHM_KOKKOS_DECL_HPP MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
Namespace for MueLu classes and methods.
MueLu::DefaultGlobalOrdinal GlobalOrdinal