10#ifndef MUELU_COALESCEDROPFACTORY_KOKKOS_DECL_HPP
11#define MUELU_COALESCEDROPFACTORY_KOKKOS_DECL_HPP
15#include <Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
17#include "Xpetra_Matrix_fwd.hpp"
95template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
102 using range_type = Kokkos::RangePolicy<local_ordinal_type, execution_space>;
109#undef MUELU_COALESCEDROPFACTORY_KOKKOS_SHORT
137 std::tuple<GlobalOrdinal, boundary_nodes_type>
BuildScalar(
Level& currentLevel)
const;
139 std::tuple<GlobalOrdinal, boundary_nodes_type>
BuildVector(
Level& currentLevel)
const;
144#define MUELU_COALESCEDROPFACTORY_KOKKOS_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Factory for creating a graph based on a given matrix.
void DeclareInput(Level ¤tLevel) const
Input.
Kokkos::RangePolicy< local_ordinal_type, execution_space > range_type
typename Node::execution_space execution_space
void Build(Level ¤tLevel) const
Build an object with this factory.
typename MueLu::LWGraph_kokkos< LocalOrdinal, GlobalOrdinal, Node >::boundary_nodes_type boundary_nodes_type
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
std::tuple< GlobalOrdinal, boundary_nodes_type > BuildVector(Level ¤tLevel) const
std::tuple< GlobalOrdinal, boundary_nodes_type > BuildScalar(Level ¤tLevel) const
LocalOrdinal local_ordinal_type
GlobalOrdinal global_ordinal_type
virtual ~CoalesceDropFactory_kokkos()
Destructor.
Teuchos::RCP< MultiVector > GetMaterial(Level ¤tLevel, size_t spatialDim) const
CoalesceDropFactory_kokkos()
Constructor.
Kokkos::View< bool *, memory_space > boundary_nodes_type
Class that holds all level-specific information.
Base class for factories that use one level (currentLevel).
Namespace for MueLu classes and methods.