52 template <
typename T,
typename P>
void shift(T,P&,
int,
int,
int=0);
53 template <
typename T,
typename P>
void shift_array(T*,
int,P*,
int,
int,
int,
int=0);
54 template <
typename T,
typename P>
void shift_cont(T,P&,
int,
int,
int=0);
57 template <
typename T,
typename P>
void shift_packed(T,P&,
int,
int,
int=0);
65 #endif // __CARTCOMM_H
class for a cartesian communicator
Definition: cart_comm.h:33
int get_ndim() const
Definition: cart_comm.h:49
vector< int > m_dims
Definition: cart_comm.h:37
TML_CartComm(TML_Comm *comm, vector< unsigned int > dims, vector< bool > circular)
Definition: cart_comm.cpp:30
vector< int > get_coords() const
get own coords
Definition: cart_comm.cpp:174
void shift_packed(T, P &, int, int, int=0)
packed shift ops
Definition: cart_comm.hpp:86
MPI_Comm comm() const
Definition: comm.h:56
void shift(T, P &, int, int, int=0)
shift ops
Definition: cart_comm.hpp:23
abstract base class for communicator
Definition: comm.h:46
void shift_cont(T, P &, int, int, int=0)
Definition: cart_comm.hpp:66
vector< int > get_all_dims() const
get size of communicator in all directions
Definition: cart_comm.cpp:189
int m_ndims
Definition: cart_comm.h:36
void shift_array(T *, int, P *, int, int, int, int=0)
Definition: cart_comm.hpp:45
void shift_cont_packed(T, P &, int, int, int=0)
Definition: cart_comm.hpp:129
void shift_array_packed(T *, int, P *, int, int, int, int=0)
Definition: cart_comm.hpp:108
int get_dim(int)
get size of communicator in one direction
Definition: cart_comm.cpp:205