16 #include <deal.II/base/std_cxx14/memory.h> 18 #include <deal.II/lac/trilinos_epetra_communication_pattern.h> 20 #ifdef DEAL_II_WITH_TRILINOS 22 # ifdef DEAL_II_WITH_MPI 24 # include <deal.II/base/index_set.h> 26 # include <Epetra_Map.h> 30 DEAL_II_NAMESPACE_OPEN
34 namespace EpetraWrappers
37 const IndexSet &vector_space_vector_index_set,
38 const IndexSet &read_write_vector_index_set,
39 const MPI_Comm &communicator)
45 read_write_vector_index_set,
53 const IndexSet &read_write_vector_index_set,
54 const MPI_Comm &communicator)
56 comm = std::make_shared<const MPI_Comm>(communicator);
58 Epetra_Map vector_space_vector_map =
60 Epetra_Map read_write_vector_map =
66 import = std_cxx14::make_unique<Epetra_Import>(read_write_vector_map,
67 vector_space_vector_map);
88 DEAL_II_NAMESPACE_CLOSE
std::shared_ptr< const MPI_Comm > comm
virtual void reinit(const IndexSet &vector_space_vector_index_set, const IndexSet &read_write_vector_index_set, const MPI_Comm &communicator) override
Epetra_Map make_trilinos_map(const MPI_Comm &communicator=MPI_COMM_WORLD, const bool overlapping=false) const
const Epetra_Import & get_epetra_import() const
virtual const MPI_Comm & get_mpi_communicator() const override
CommunicationPattern(const IndexSet &vector_space_vector_index_set, const IndexSet &read_write_vector_index_set, const MPI_Comm &communicator)