Loading...
Searching...
No Matches
terra::communication::shell::ShellBoundaryCommPlan< GridDataType > Class Template Reference

#include <communication_plan.hpp>

Public Types

using ScalarType = typename GridDataType::value_type
 
using memory_space = typename GridDataType::memory_space
 
using rank_buffer_view = Kokkos::View< ScalarType *, memory_space >
 

Public Member Functions

 ShellBoundaryCommPlan (const grid::shell::DistributedDomain &domain, bool enable_local_comm=true)
 
void exchange_and_reduce (const GridDataType &data, SubdomainNeighborhoodSendRecvBuffer< ScalarType, VecDim > &boundary_recv_buffers, CommunicationReduction reduction=CommunicationReduction::SUM) const
 
void rebuild ()
 

Static Public Attributes

static constexpr int VecDim = grid::grid_data_vec_dim< GridDataType >()
 

Member Typedef Documentation

◆ memory_space

template<class GridDataType >
using terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::memory_space = typename GridDataType::memory_space

◆ rank_buffer_view

template<class GridDataType >
using terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::rank_buffer_view = Kokkos::View< ScalarType*, memory_space >

◆ ScalarType

template<class GridDataType >
using terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::ScalarType = typename GridDataType::value_type

Constructor & Destructor Documentation

◆ ShellBoundaryCommPlan()

template<class GridDataType >
terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::ShellBoundaryCommPlan ( const grid::shell::DistributedDomain domain,
bool  enable_local_comm = true 
)
inlineexplicit

Member Function Documentation

◆ exchange_and_reduce()

template<class GridDataType >
void terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::exchange_and_reduce ( const GridDataType &  data,
SubdomainNeighborhoodSendRecvBuffer< ScalarType, VecDim > &  boundary_recv_buffers,
CommunicationReduction  reduction = CommunicationReduction::SUM 
) const
inline

◆ rebuild()

template<class GridDataType >
void terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::rebuild ( )
inline

Member Data Documentation

◆ VecDim

template<class GridDataType >
constexpr int terra::communication::shell::ShellBoundaryCommPlan< GridDataType >::VecDim = grid::grid_data_vec_dim< GridDataType >()
staticconstexpr

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