Reference documentation for deal.II version 9.0.0
Public Member Functions | List of all members
LinearAlgebra::CommunicationPatternBase Class Referenceabstract

#include <deal.II/lac/communication_pattern_base.h>

Inheritance diagram for LinearAlgebra::CommunicationPatternBase:
[legend]

Public Member Functions

virtual ~CommunicationPatternBase ()=default
 
virtual void reinit (const IndexSet &vector_space_vector_index_set, const IndexSet &read_write_vector_index_set, const MPI_Comm &communicator)=0
 
virtual const MPI_Comm & get_mpi_communicator () const =0
 

Detailed Description

CommunicationPattern is an abstract class that is used to define a communication plan that can be called repeatedly to efficiently obtain off-processor elements. The idea is to decouple the communication pattern from the vectors. The goal is to reuse the same communication pattern for different vectors. This is similar to the way SparseMatrix and SparsityPattern works.

Author
Bruno Turcksin, 2015.

Definition at line 38 of file communication_pattern_base.h.

Constructor & Destructor Documentation

◆ ~CommunicationPatternBase()

virtual LinearAlgebra::CommunicationPatternBase::~CommunicationPatternBase ( )
virtualdefault

Destructor.

Member Function Documentation

◆ reinit()

virtual void LinearAlgebra::CommunicationPatternBase::reinit ( const IndexSet vector_space_vector_index_set,
const IndexSet read_write_vector_index_set,
const MPI_Comm &  communicator 
)
pure virtual

Reinitialize the communication pattern. The first argument vector_space_vector_index_set is the index set associated to a VectorSpaceVector object. The second argument read_write_vector_index_set is the index set associated to a ReadWriteVector object.

Implemented in Utilities::MPI::Partitioner, and LinearAlgebra::EpetraWrappers::CommunicationPattern.

◆ get_mpi_communicator()

virtual const MPI_Comm& LinearAlgebra::CommunicationPatternBase::get_mpi_communicator ( ) const
pure virtual

Return a constant reference to the underlying mpi communicator.

Implemented in Utilities::MPI::Partitioner, and LinearAlgebra::EpetraWrappers::CommunicationPattern.


The documentation for this class was generated from the following file: