Loading...
Searching...
No Matches
terra::communication::detail Namespace Reference

Functions

template<typename T >
void reduction_function (T *ptr, const T &val, const CommunicationReduction reduction_type)
 Helper function to defer to the respective Kokkos::atomic_xxx() reduction function.
 
template<typename DataView , bool is_scalar>
DataView::value_type value (const DataView &data, int local_subdomain_id, int x, int y, int r, int d)
 
template<typename DataView , bool is_scalar>
DataView::value_type & value_ref (const DataView &data, int local_subdomain_id, int x, int y, int r, int d)
 
constexpr int idx (const int loop_idx, const int size, const grid::BoundaryPosition position, const grid::BoundaryDirection direction)
 

Function Documentation

◆ idx()

constexpr int terra::communication::detail::idx ( const int  loop_idx,
const int  size,
const grid::BoundaryPosition  position,
const grid::BoundaryDirection  direction 
)
constexpr

◆ reduction_function()

template<typename T >
void terra::communication::detail::reduction_function ( T *  ptr,
const T &  val,
const CommunicationReduction  reduction_type 
)

Helper function to defer to the respective Kokkos::atomic_xxx() reduction function.

◆ value()

template<typename DataView , bool is_scalar>
DataView::value_type terra::communication::detail::value ( const DataView &  data,
int  local_subdomain_id,
int  x,
int  y,
int  r,
int  d 
)

◆ value_ref()

template<typename DataView , bool is_scalar>
DataView::value_type & terra::communication::detail::value_ref ( const DataView &  data,
int  local_subdomain_id,
int  x,
int  y,
int  r,
int  d 
)