1#ifndef CHITECH_VECTOR_GHOST_COMMUNICATOR_H
2#define CHITECH_VECTOR_GHOST_COMMUNICATOR_H
20 const std::vector<int64_t>& ghost_ids,
21 MPI_Comm communicator);
int64_t MapGhostToLocal(int64_t ghost_id) const
const uint64_t local_size_
const std::vector< uint64_t > extents_
std::vector< double > MakeGhostedVector() const
const std::vector< int64_t > & GhostIndices() const
uint64_t NumGhosts() const
uint64_t GlobalSize() const
const std::vector< int64_t > ghost_ids_
CachedParallelData MakeCachedParallelData()
uint64_t LocalSize() const
const CachedParallelData cached_parallel_data_
MPI_Comm Communicator() const
void CommunicateGhostEntries(std::vector< double > &ghosted_vector) const
int FindOwnerPID(int64_t global_id) const
VectorGhostCommunicator(uint64_t local_size, uint64_t global_size, const std::vector< int64_t > &ghost_ids, MPI_Comm communicator)
const uint64_t global_size_
std::map< int64_t, size_t > ghost_to_recv_map_
std::vector< int64_t > local_ids_to_send_
std::vector< int > senddispls_
std::vector< int > recvcounts_
std::vector< int > recvdispls_
std::vector< int > sendcounts_