deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace > Class Template Reference

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

Inheritance diagram for LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >:
Inheritance graph
[legend]

Public Member Functions

 CommunicationPattern (const IndexSet &locally_owned_indices, const IndexSet &ghost_indices, const MPI_Comm communicator)
 
virtual void reinit (const IndexSet &locally_owned_indices, const IndexSet &ghost_indices, const MPI_Comm communicator) override
 
virtual MPI_Comm get_mpi_communicator () const override
 
const TpetraTypes::ImportType< MemorySpace > & get_tpetra_import () const
 
Teuchos::RCP< TpetraTypes::ImportType< MemorySpace > > get_tpetra_import_rcp () const
 
const TpetraTypes::ExportType< MemorySpace > & get_tpetra_export () const
 
Teuchos::RCP< TpetraTypes::ExportType< MemorySpace > > get_tpetra_export_rcp () const
 

Private Attributes

Teuchos::RCP< const MPI_Commcomm
 
Teuchos::RCP< TpetraTypes::ImportType< MemorySpace > > tpetra_import
 
Teuchos::RCP< TpetraTypes::ExportType< MemorySpace > > tpetra_export
 

Detailed Description

template<typename MemorySpace = ::MemorySpace::Host>
class LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >

This class implements a wrapper to Tpetra::Import and Tpetra::Export.

Definition at line 45 of file trilinos_tpetra_communication_pattern.h.

Constructor & Destructor Documentation

◆ CommunicationPattern()

template<typename MemorySpace >
LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::CommunicationPattern ( const IndexSet locally_owned_indices,
const IndexSet ghost_indices,
const MPI_Comm  communicator 
)

Initialize the communication pattern.

Parameters
[in]locally_owned_indicesThe set of indices of elements in the array mentioned in the class documentation that are stored on the current process.
[in]ghost_indicesThe set of indices of elements in the array mentioned in the class documentation that the current process will need to be able to import.
[in]communicatorThe MPI communicator used to describe the entire set of processes that participate in the storage and access to elements of the array.

Definition at line 35 of file trilinos_tpetra_communication_pattern.cc.

Member Function Documentation

◆ reinit()

template<typename MemorySpace >
void LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::reinit ( const IndexSet locally_owned_indices,
const IndexSet ghost_indices,
const MPI_Comm  communicator 
)
overridevirtual

Reinitialize the communication pattern.

Parameters
[in]locally_owned_indicesThe set of indices of elements in the array mentioned in the class documentation that are stored on the current process.
[in]ghost_indicesThe set of indices of elements in the array mentioned in the class documentation that the current process will need to be able to import.
[in]communicatorThe MPI communicator used to describe the entire set of processes that participate in the storage and access to elements of the array.

Implements Utilities::MPI::CommunicationPatternBase.

Definition at line 52 of file trilinos_tpetra_communication_pattern.cc.

◆ get_mpi_communicator()

template<typename MemorySpace >
MPI_Comm LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::get_mpi_communicator ( ) const
overridevirtual

Return the underlying MPI communicator.

Implements Utilities::MPI::CommunicationPatternBase.

Definition at line 87 of file trilinos_tpetra_communication_pattern.cc.

◆ get_tpetra_import()

template<typename MemorySpace >
const Tpetra::Import< int, types::signed_global_dof_index, TpetraTypes::NodeType< MemorySpace > > & LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::get_tpetra_import ( ) const

Return the underlying Tpetra::Import object.

Definition at line 98 of file trilinos_tpetra_communication_pattern.cc.

◆ get_tpetra_import_rcp()

template<typename MemorySpace >
Teuchos::RCP< TpetraTypes::ImportType< MemorySpace > > LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::get_tpetra_import_rcp ( ) const

Return a Teuchos::RCP to the underlying Tpetra::Import object.

Definition at line 106 of file trilinos_tpetra_communication_pattern.cc.

◆ get_tpetra_export()

template<typename MemorySpace >
const Tpetra::Export< int, types::signed_global_dof_index, TpetraTypes::NodeType< MemorySpace > > & LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::get_tpetra_export ( ) const

Return the underlying Tpetra::Export object.

Definition at line 117 of file trilinos_tpetra_communication_pattern.cc.

◆ get_tpetra_export_rcp()

template<typename MemorySpace >
Teuchos::RCP< TpetraTypes::ExportType< MemorySpace > > LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::get_tpetra_export_rcp ( ) const

Return a Teuchos::RCP to the underlying Tpetra::Export object.

Definition at line 126 of file trilinos_tpetra_communication_pattern.cc.

Member Data Documentation

◆ comm

template<typename MemorySpace = ::MemorySpace::Host>
Teuchos::RCP<const MPI_Comm> LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::comm
private

Teuchos::RCP to the MPI communicator used.

Definition at line 120 of file trilinos_tpetra_communication_pattern.h.

◆ tpetra_import

template<typename MemorySpace = ::MemorySpace::Host>
Teuchos::RCP<TpetraTypes::ImportType<MemorySpace> > LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::tpetra_import
private

Teuchos::RCP to the Tpetra::Import object used.

Definition at line 125 of file trilinos_tpetra_communication_pattern.h.

◆ tpetra_export

template<typename MemorySpace = ::MemorySpace::Host>
Teuchos::RCP<TpetraTypes::ExportType<MemorySpace> > LinearAlgebra::TpetraWrappers::CommunicationPattern< MemorySpace >::tpetra_export
private

Teuchos::RCP to the Tpetra::Export object used.

Definition at line 130 of file trilinos_tpetra_communication_pattern.h.


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