10 #ifndef MUELU_MATRIXFREETENTATIVEP_DECL_HPP
11 #define MUELU_MATRIXFREETENTATIVEP_DECL_HPP
17 #include <Tpetra_KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
36 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
42 typedef Kokkos::RangePolicy<local_ordinal_type, execution_space>
range_type;
43 typedef Kokkos::MDRangePolicy<local_ordinal_type, execution_space, Kokkos::Rank<2>>
md_range_type;
48 #undef MUELU_MATRIXFREETENTATIVEP_SHORT
99 #define MUELU_MATRIXFREETENTATIVEP_SHORT
100 #endif // MUELU_MATRIXFREETENTATIVEP_DECL_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
Matrix-free tentative restrictor operator.
Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > MultiVector
const Teuchos::RCP< const Map > getRangeMap() const override
Teuchos::ScalarTraits< Scalar >::coordinateType real_type
void residual(const MultiVector &X, const MultiVector &B, MultiVector &R) const override
const Teuchos::RCP< const Map > fine_map_
~MatrixFreeTentativeP()=default
Destructor.
const Teuchos::RCP< const Aggregates > aggregates_
MueLu::DefaultScalar Scalar
GlobalOrdinal global_ordinal_type
MueLu::DefaultGlobalOrdinal GlobalOrdinal
const Teuchos::RCP< const Map > getDomainMap() const override
Node::execution_space execution_space
Kokkos::MDRangePolicy< local_ordinal_type, execution_space, Kokkos::Rank< 2 > > md_range_type
MatrixFreeTentativeP(Teuchos::RCP< const Map > coarse_map, Teuchos::RCP< const Map > fine_map, Teuchos::RCP< const Aggregates > aggregates)
Constructor.
LocalOrdinal local_ordinal_type
const Teuchos::RCP< const Map > coarse_map_
Teuchos::RCP< const Aggregates > getAggregates() const
Kokkos::RangePolicy< local_ordinal_type, execution_space > range_type
void apply(const MultiVector &X, MultiVector &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const override