46#ifndef MUELU_MATRIXFREETENTATIVEPFACTORY_KOKKOS_DECL_HPP
47#define MUELU_MATRIXFREETENTATIVEPFACTORY_KOKKOS_DECL_HPP
53#include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
55#include "Teuchos_ScalarTraits.hpp"
62#include "MueLu_PFactory.hpp"
104 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
107 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class DeviceType>
113 typedef Kokkos::RangePolicy<local_ordinal_type, execution_space>
range_type;
114 typedef Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType>
node_type;
115 typedef typename Teuchos::ScalarTraits<Scalar>::coordinateType
real_type;
120#undef MUELU_MATRIXFREETENTATIVEPFACTORY_KOKKOS_SHORT
134 RCP<const ParameterList> GetValidParameterList()
const;
139 void DeclareInput(
Level& fineLevel,
Level& coarseLevel)
const;
146 void Build (
Level& fineLevel,
Level& coarseLevel)
const;
147 void BuildP(
Level& fineLevel,
Level& coarseLevel)
const;
154#define MUELU_MATRIXFREETENTATIVEPFACTORY_KOKKOS_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Class that holds all level-specific information.
MatrixFreeTentativePFactory_kokkos()
Constructor.
Teuchos::ScalarTraits< Scalar >::coordinateType real_type
DeviceType::execution_space execution_space
GlobalOrdinal global_ordinal_type
Kokkos::RangePolicy< local_ordinal_type, execution_space > range_type
virtual ~MatrixFreeTentativePFactory_kokkos()
Destructor.
Kokkos::Compat::KokkosDeviceWrapperNode< DeviceType > node_type
LocalOrdinal local_ordinal_type
Factory that provides an interface for a concrete implementation of a prolongation operator.
Namespace for MueLu classes and methods.