foreignoverlapfrombcrsmatrix.hh
Go to the documentation of this file.
This structure stores an index, a process rank, and the number of processes which "see" the degree of... Definition: overlaptypes.hh:90 int numPeers(Index localIdx) const Return the number of peer ranks for which a given local index is visible. Definition: foreignoverlapfrombcrsmatrix.hh:314 This structure stores an index, a process rank, and the distance of the degree of freedom to the proc... Definition: overlaptypes.hh:78 unsigned BorderDistance The type representing the distance of an index to the border. Definition: overlaptypes.hh:53 This files provides several data structures for storing tuples of indices of remote and/or local proc... std::vector< ProcessRank > masterRank_ Definition: foreignoverlapfrombcrsmatrix.hh:673 std::set< Index > localBorderIndices_ Definition: foreignoverlapfrombcrsmatrix.hh:677 const std::map< ProcessRank, BorderDistance > & foreignOverlapByLocalIndex(Index localIdx) const Return the map of (peer rank, border distance) for a given local index. Definition: foreignoverlapfrombcrsmatrix.hh:206 ProcessRank myRank_ Definition: foreignoverlapfrombcrsmatrix.hh:697 int nativeToLocal(Index nativeIdx) const Convert a native index to a local one. Definition: foreignoverlapfrombcrsmatrix.hh:292 Expresses which degrees of freedom are blacklisted for the parallel linear solvers and which domestic... Definition: blacklist.hh:45 Simplifies handling of buffers to be used in conjunction with MPI. void groupForeignOverlapByRank_() Definition: foreignoverlapfrombcrsmatrix.hh:635 void update(const BorderList &borderList) Definition: overlaptypes.hh:127 const BlackList & blackList_ Definition: foreignoverlapfrombcrsmatrix.hh:665 This class creates and manages the foreign overlap given an initial list of border indices and a BCRS... Definition: foreignoverlapfrombcrsmatrix.hh:58 BorderDistance borderDistance Definition: overlaptypes.hh:82 void print() const Print the foreign overlap for debugging purposes. Definition: foreignoverlapfrombcrsmatrix.hh:327 int localToNative(Index localIdx) const Convert a local index to a native one. Definition: foreignoverlapfrombcrsmatrix.hh:298 BorderDistance overlapSize_ Definition: foreignoverlapfrombcrsmatrix.hh:688 BorderDistance borderDistance Distance to the process border for the peer (in hops) Definition: overlaptypes.hh:112 const BlackList & blackList() const Returns the object which represents the black-listed native indices. Definition: foreignoverlapfrombcrsmatrix.hh:307 void createLocalIndices_() Definition: foreignoverlapfrombcrsmatrix.hh:431 int numFront(int peerRank) const Returns the number of front indices of a peer process in the local partition. Definition: foreignoverlapfrombcrsmatrix.hh:225 bool isBorder(Index localIdx) const Returns true iff a local index is a border index. Definition: foreignoverlapfrombcrsmatrix.hh:147 bool isBorderWith(Index localIdx, int peerRank) const Returns true iff a local index is a border index shared with a given peer process. Definition: foreignoverlapfrombcrsmatrix.hh:154 int numNative() const Returns the number of native indices. Definition: foreignoverlapfrombcrsmatrix.hh:271 BorderDistance borderDistance Definition: overlaptypes.hh:93 std::list< BorderIndex > BorderList This class managages a list of indices which are on the border of a process' partition of the grid... Definition: overlaptypes.hh:119 Index localToPeerIdx_(Index localIdx, ProcessRank peerRank) const Definition: foreignoverlapfrombcrsmatrix.hh:451 std::vector< IndexDistanceNpeers > OverlapWithPeer The list of indices which overlap with a peer rank. Definition: overlaptypes.hh:164 OverlapByRank foreignOverlapByRank_ Definition: foreignoverlapfrombcrsmatrix.hh:685 std::vector< Index > nativeToLocalIndices_ Definition: foreignoverlapfrombcrsmatrix.hh:668 std::vector< Index > localToNativeIndices_ Definition: foreignoverlapfrombcrsmatrix.hh:669 const BorderList & borderList_ Definition: foreignoverlapfrombcrsmatrix.hh:662 Index localIdx Index of the entity for the local process. Definition: overlaptypes.hh:103 ForeignOverlapFromBCRSMatrix(const BCRSMatrix &A, const BorderList &borderList, const BlackList &blackList, int overlapSize) Constructs the foreign overlap given a BCRS matrix and an initial list of border indices. Definition: foreignoverlapfrombcrsmatrix.hh:68 bool isInOverlap(Index localIdx) const Returns true if a given local index is in the foreign overlap of any rank. Definition: foreignoverlapfrombcrsmatrix.hh:321 Index peerIdx Index of the entity for the peer process. Definition: overlaptypes.hh:106 A single index intersecting with the process boundary. Definition: overlaptypes.hh:100 ProcessRank masterRank(Index localIdx) const Return the rank of the master process of an index. Definition: foreignoverlapfrombcrsmatrix.hh:169 Definition: baseauxiliarymodule.hh:35 PeerSet peerSet_ Definition: foreignoverlapfrombcrsmatrix.hh:656 The list of indices which are on the process boundary. Definition: overlaptypes.hh:124 const OverlapWithPeer & foreignOverlapWithPeer(int peerRank) const Return the list of (local indices, border distance, number of processes) triples which are in the ove... Definition: foreignoverlapfrombcrsmatrix.hh:195 std::map< ProcessRank, OverlapWithPeer > OverlapByRank A type mapping the process rank to the list of indices shared with this peer. Definition: overlaptypes.hh:170 bool iAmMasterOf(Index localIdx) const Return true if the current rank is the "master" of an index. Definition: foreignoverlapfrombcrsmatrix.hh:180 const PeerSet & peerSet() const Return the set of process ranks which share an overlap with the current process. Definition: foreignoverlapfrombcrsmatrix.hh:258 PeerSet neighborPeerSet_ Definition: foreignoverlapfrombcrsmatrix.hh:659 const BorderList & borderList() const Returns the list of indices which intersect the process border. Definition: foreignoverlapfrombcrsmatrix.hh:187 std::vector< std::map< ProcessRank, BorderDistance > > OverlapByIndex Maps each index to a list of processes . Definition: overlaptypes.hh:175 int Index The type of an index of a degree of freedom. Definition: overlaptypes.hh:43 void update(const BorderList &borderList) Definition: overlaptypes.hh:150 int overlapSize() const Returns the size of the overlap region. Definition: foreignoverlapfrombcrsmatrix.hh:141 const PeerSet & neighborPeerSet() const Return the set of process ranks which share a border index with the current process. Definition: foreignoverlapfrombcrsmatrix.hh:265 OverlapByIndex foreignOverlapByLocalIndex_ Definition: foreignoverlapfrombcrsmatrix.hh:682 int numLocal() const Returns the number of local indices. Definition: foreignoverlapfrombcrsmatrix.hh:277 bool isFrontFor(int peerRank, Index localIdx) const Returns whether a given local index is on the front of a given peer rank. Definition: foreignoverlapfrombcrsmatrix.hh:243 bool peerHasIndex(int peerRank, Index localIdx) const Returns true iff a local index is seen by a peer rank. Definition: foreignoverlapfrombcrsmatrix.hh:215 ProcessRank peerRank Rank of the peer process. Definition: overlaptypes.hh:109 void extendForeignOverlap_(const BCRSMatrix &A, SeedList &seedList, int borderDistance, int overlapSize) Definition: foreignoverlapfrombcrsmatrix.hh:346 void computeMasterRanks_() Definition: foreignoverlapfrombcrsmatrix.hh:608 Expresses which degrees of freedom are blacklisted for the parallel linear solvers and which domestic... Index numLocal_ Definition: foreignoverlapfrombcrsmatrix.hh:691 unsigned ProcessRank The type of the rank of a process. Definition: overlaptypes.hh:48 void addNonNeighborOverlapIndices_(const BCRSMatrix &A, SeedList &seedList, int borderDist) Definition: foreignoverlapfrombcrsmatrix.hh:463 Index numNative_ Definition: foreignoverlapfrombcrsmatrix.hh:694 bool isLocal(Index domesticIdx) const Returns true iff a domestic index is local. Definition: foreignoverlapfrombcrsmatrix.hh:283 |