46 #ifndef MUELU_NULLSPACEFACTORY_KOKKOS_DECL_HPP 47 #define MUELU_NULLSPACEFACTORY_KOKKOS_DECL_HPP 50 #ifdef HAVE_MUELU_KOKKOS_REFACTOR 102 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
103 class NullspaceFactory_kokkos;
105 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class DeviceType>
106 class NullspaceFactory_kokkos<Scalar, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType> > :
public SingleLevelFactoryBase {
109 typedef GlobalOrdinal global_ordinal_type;
110 typedef typename DeviceType::execution_space execution_space;
111 typedef Kokkos::RangePolicy<local_ordinal_type, execution_space> range_type;
112 typedef Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType>
node_type;
117 #undef MUELU_NULLSPACEFACTORY_KOKKOS_SHORT 126 NullspaceFactory_kokkos(
const std::string& nspName =
"Nullspace") {
127 SetParameter(
"Fine level nullspace", ParameterEntry(nspName));
131 virtual ~NullspaceFactory_kokkos() { }
140 RCP<const ParameterList> GetValidParameterList()
const;
148 void DeclareInput(Level& currentLevel)
const;
156 void Build(Level& currentLevel)
const;
164 #define MUELU_NULLSPACEFACTORY_KOKKOS_SHORT 165 #endif // HAVE_MUELU_KOKKOS_REFACTOR 166 #endif // MUELU_NULLSPACEFACTORY_KOKKOS_DECL_HPP
Namespace for MueLu classes and methods.
::Kokkos::Compat::KokkosDeviceWrapperNode< execution_space > node_type