dune-pdelab 2.7-git
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V > Class Template Reference

Gather/scatter communication that passes a single function from each subdomain to all its neighbors. More...

#include <dune/pdelab/backend/istl/geneo/multicommdatahandle.hh>

Public Types

typedef std::size_t size_type
 

Public Member Functions

template<typename MessageBuffer , typename Entity , typename LocalView >
bool gather (MessageBuffer &buff, const Entity &e, LocalView &local_view) const
 
template<typename MessageBuffer , typename Entity , typename LocalView >
bool scatter (MessageBuffer &buff, std::size_t n, const Entity &e, LocalView &local_view) const
 
template<typename MessageBuffer , typename Offsets , typename Entity , typename LocalView >
bool scatter (MessageBuffer &buff, const Offsets &remote_offsets, const Offsets &local_offsets, const Entity &e, LocalView &local_view) const
 
 MultiCommGatherScatter (const GFS &gfs, RankIndex rank, std::vector< std::shared_ptr< V > > target_vectors, std::vector< RankIndex > neighbor_ranks)
 

Detailed Description

template<typename GFS, typename RankIndex, typename V>
class Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >

Gather/scatter communication that passes a single function from each subdomain to all its neighbors.

Member Typedef Documentation

◆ size_type

template<typename GFS , typename RankIndex , typename V >
typedef std::size_t Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >::size_type

Constructor & Destructor Documentation

◆ MultiCommGatherScatter()

template<typename GFS , typename RankIndex , typename V >
Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >::MultiCommGatherScatter ( const GFS &  gfs,
RankIndex  rank,
std::vector< std::shared_ptr< V > >  target_vectors,
std::vector< RankIndex >  neighbor_ranks 
)
inline
Parameters
gfsGrid function space to be operated on.
rankThe MPI rank of the current process.
target_vectorsVectors which the received vectors will be written to.
neighbor_ranksList of ranks of neighboring subdomains defining the order in which results are written to target_vectors.

Member Function Documentation

◆ gather()

template<typename GFS , typename RankIndex , typename V >
template<typename MessageBuffer , typename Entity , typename LocalView >
bool Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >::gather ( MessageBuffer &  buff,
const Entity &  e,
LocalView &  local_view 
) const
inline

◆ scatter() [1/2]

template<typename GFS , typename RankIndex , typename V >
template<typename MessageBuffer , typename Offsets , typename Entity , typename LocalView >
bool Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >::scatter ( MessageBuffer &  buff,
const Offsets &  remote_offsets,
const Offsets &  local_offsets,
const Entity &  e,
LocalView &  local_view 
) const
inline

◆ scatter() [2/2]

template<typename GFS , typename RankIndex , typename V >
template<typename MessageBuffer , typename Entity , typename LocalView >
bool Dune::PDELab::MultiCommGatherScatter< GFS, RankIndex, V >::scatter ( MessageBuffer &  buff,
std::size_t  n,
const Entity &  e,
LocalView &  local_view 
) const
inline

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