Loading...
Searching...
No Matches
terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim > Class Template Reference

Pre-allocated send/recv buffers for vector-valued FV ghost layer communication. More...

#include <fv_communication.hpp>

Classes

struct  FacePair
 

Public Types

using Buffer = grid::Grid3DDataScalar< ScalarType >
 

Public Member Functions

 FVGhostLayerVecBuffers (const grid::shell::DistributedDomain &domain)
 
const std::vector< FacePair > & recv_ordered () const
 
const std::vector< FacePair > & send_ordered () const
 
Buffersend_buf (const FacePair &fp)
 
Bufferrecv_buf (const FacePair &fp)
 

Detailed Description

template<typename ScalarType, int VecDim>
class terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >

Pre-allocated send/recv buffers for vector-valued FV ghost layer communication.

Mirrors FVGhostLayerBuffers but uses 3D buffers [ni, nj, VecDim] so all VecDim components are packed and sent in a single MPI message per face.

Member Typedef Documentation

◆ Buffer

template<typename ScalarType , int VecDim>
using terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::Buffer = grid::Grid3DDataScalar< ScalarType >

Constructor & Destructor Documentation

◆ FVGhostLayerVecBuffers()

template<typename ScalarType , int VecDim>
terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::FVGhostLayerVecBuffers ( const grid::shell::DistributedDomain domain)
inlineexplicit

Member Function Documentation

◆ recv_buf()

template<typename ScalarType , int VecDim>
Buffer & terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::recv_buf ( const FacePair fp)
inline

◆ recv_ordered()

template<typename ScalarType , int VecDim>
const std::vector< FacePair > & terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::recv_ordered ( ) const
inline

◆ send_buf()

template<typename ScalarType , int VecDim>
Buffer & terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::send_buf ( const FacePair fp)
inline

◆ send_ordered()

template<typename ScalarType , int VecDim>
const std::vector< FacePair > & terra::communication::shell::FVGhostLayerVecBuffers< ScalarType, VecDim >::send_ordered ( ) const
inline

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