46 #ifndef MUELU_UNCOUPLEDAGGREGATIONFACTORY_KOKKOS_DECL_HPP 47 #define MUELU_UNCOUPLEDAGGREGATIONFACTORY_KOKKOS_DECL_HPP 51 #include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp> 53 #include <Xpetra_Map_fwd.hpp> 54 #include <Xpetra_Vector_fwd.hpp> 55 #include <Xpetra_VectorFactory_fwd.hpp> 69 #include "MueLu_LWGraph_kokkos.hpp" 144 #undef MUELU_UNCOUPLEDAGGREGATIONFACTORY_KOKKOS_SHORT 168 SetParameter(
"aggregation: ordering", ParameterEntry(ordering));
172 SetParameter(
"aggregation: max selected neighbors", ParameterEntry(Teuchos::as<LocalOrdinal>(maxNeighAlreadySelected)));
176 SetParameter(
"aggregation: min agg size", ParameterEntry(Teuchos::as<LocalOrdinal>(minNodesPerAggregate)));
179 void SetOnePtMapName(
const std::string name, Teuchos::RCP<const FactoryBase> mapFact) {
180 SetParameter(
"OnePt aggregate map name", ParameterEntry(std::string(name)));
181 SetFactory(
"OnePt aggregate map factory",mapFact);
187 return pL.get<std::string>(
"aggregation: ordering");
192 return Teuchos::as<int>(pL.get<
LocalOrdinal>(
"aggregation: max selected neighbors"));
197 return Teuchos::as<int>(pL.get<
LocalOrdinal>(
"aggregation: min agg size"));
231 mutable std::vector<RCP<MueLu::AggregationAlgorithmBase_kokkos<LocalOrdinal, GlobalOrdinal, Node> > >
algos_;
242 #define MUELU_UNCOUPLEDAGGREGATIONFACTORY_KOKKOS_SHORT 243 #endif // MUELU_UNCOUPLEDAGGREGATIONFACTORY_KOKKOS_DECL_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
std::vector< RCP< MueLu::AggregationAlgorithmBase_kokkos< LocalOrdinal, GlobalOrdinal, Node > > > algos_
Append a new aggregation algorithm to list of aggregation algorithms.
int GetMaxNeighAlreadySelected() const
Namespace for MueLu classes and methods.
UncoupledAggregationFactory_kokkos()
Constructor.
void SetOrdering(const std::string &ordering)
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
const std::string & GetOrdering() const
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Class that holds all level-specific information.
virtual ~UncoupledAggregationFactory_kokkos()
Destructor.
virtual const Teuchos::ParameterList & GetParameterList() const
int GetMinNodesPerAggregate() const
void SetParameter(const std::string &name, const ParameterEntry &entry)
Set a parameter directly as a ParameterEntry.
void Build(Level ¤tLevel) const
Build aggregates.
virtual void SetFactory(const std::string &varName, const RCP< const FactoryBase > &factory)
Configuration.
void SetOnePtMapName(const std::string name, Teuchos::RCP< const FactoryBase > mapFact)
void SetMaxNeighAlreadySelected(int maxNeighAlreadySelected)
Base class for factories that use one level (currentLevel).
void SetMinNodesPerAggregate(int minNodesPerAggregate)
void DeclareInput(Level ¤tLevel) const
Input.