18#ifdef DEAL_II_TRILINOS_WITH_TPETRA
20# ifdef DEAL_II_WITH_MPI
24# include <Tpetra_Map.hpp>
32 namespace TpetraWrappers
35 const IndexSet &vector_space_vector_index_set,
36 const IndexSet &read_write_vector_index_set,
43 read_write_vector_index_set,
51 const IndexSet &read_write_vector_index_set,
54 comm = std::make_shared<const MPI_Comm>(communicator);
56 auto vector_space_vector_map =
57 Teuchos::rcp(
new Tpetra::Map<int, types::global_dof_index>(
59 auto read_write_vector_map =
60 Teuchos::rcp(
new Tpetra::Map<int, types::global_dof_index>(
67 std::make_unique<Tpetra::Import<int, types::global_dof_index>>(
68 read_write_vector_map, vector_space_vector_map);
70 std::make_unique<Tpetra::Export<int, types::global_dof_index>>(
71 read_write_vector_map, vector_space_vector_map);
84 const Tpetra::Import<int, types::global_dof_index> &
92 const Tpetra::Export<int, types::global_dof_index> &
Tpetra::Map< int, types::global_dof_index > make_tpetra_map(const MPI_Comm &communicator=MPI_COMM_WORLD, const bool overlapping=false) const
const Tpetra::Export< int, types::global_dof_index > & get_tpetra_export() const
std::unique_ptr< Tpetra::Export< int, types::global_dof_index > > tpetra_export
std::unique_ptr< Tpetra::Import< int, types::global_dof_index > > tpetra_import
virtual void reinit(const IndexSet &vector_space_vector_index_set, const IndexSet &read_write_vector_index_set, const MPI_Comm &communicator) override
std::shared_ptr< const MPI_Comm > comm
const Tpetra::Import< int, types::global_dof_index > & get_tpetra_import() const
CommunicationPattern(const IndexSet &vector_space_vector_index_set, const IndexSet &read_write_vector_index_set, const MPI_Comm &communicator)
virtual const MPI_Comm & get_mpi_communicator() const override
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE