Opm::Linear::DomesticOverlapFromBCRSMatrix Class Reference This class creates and manages the foreign overlap given an initial list of border indices and a BCRS matrix. More...
Detailed DescriptionThis class creates and manages the foreign overlap given an initial list of border indices and a BCRS matrix. The foreign overlap are all (row) indices which overlap with the some of the current process's local indices. Constructor & Destructor Documentation◆ DomesticOverlapFromBCRSMatrix() [1/2]
◆ DomesticOverlapFromBCRSMatrix() [2/2]
template<class BCRSMatrix >
Constructs the foreign overlap given a BCRS matrix and an initial list of border indices. References blackList_, buildDomesticOverlap_(), myRank_, setupDebugMapping_(), updateMasterRanks_(), Opm::Linear::BlackList::updateNativeToDomesticMap(), and worldSize_. Member Function Documentation◆ blackList()
Returns the object which represents the black-listed native indices. References blackList_. ◆ buildDomesticOverlap_()
◆ check()
◆ domesticOverlapOffsetToDomesticIdx()
Returns the domestic index given an offset in the domestic overlap of a peer process with the local process. References domesticOverlapWithPeer_, and mapInternalToExternal_(). ◆ domesticOverlapSize()
Returns number of indices which are contained in the domestic overlap with a peer. References domesticOverlapWithPeer_. ◆ domesticToGlobal()Returns a global index given a domestic one. References Opm::Linear::GlobalIndices< ForeignOverlap >::domesticToGlobal(), globalIndices_, and mapExternalToInternal_(). Referenced by check(). ◆ domesticToNative()Returns a native index given a domestic one. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::localToNative(), mapExternalToInternal_(), and numLocal(). ◆ foreignOverlapOffsetToDomesticIdx()
Returns the domestic index given an offset in the foreign overlap of a peer process with the local process. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::foreignOverlapWithPeer(), and mapInternalToExternal_(). ◆ foreignOverlapSize()
Returns number of indices which are contained in the foreign overlap with a peer. References foreignOverlap_, and Opm::Linear::ForeignOverlapFromBCRSMatrix::foreignOverlapWithPeer(). ◆ globalToDomestic()Returns a domestic index given a global one. References globalIndices_, Opm::Linear::GlobalIndices< ForeignOverlap >::globalToDomestic(), and mapInternalToExternal_(). Referenced by check(). ◆ iAmMasterOf()
Return true iff the current process is the master of a given domestic index. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::iAmMasterOf(), isLocal(), and mapExternalToInternal_(). ◆ isBorder()
Returns true iff a domestic index is a border index. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::isBorder(), isLocal(), and mapExternalToInternal_(). ◆ isBorderWith()
Returns true iff a domestic index is on the border with a given peer process. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::isBorderWith(), isLocal(), and mapExternalToInternal_(). ◆ isFront()
Returns true iff a domestic index is on the front. References domesticOverlapByIndex_, foreignOverlap_, isLocal(), mapExternalToInternal_(), and Opm::Linear::ForeignOverlapFromBCRSMatrix::overlapSize(). ◆ isFrontFor()
Returns true if a given domestic index is a front index for a peer rank. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::isFrontFor(), and mapExternalToInternal_(). ◆ isInOverlap()
Returns true if a given domestic index is either in the foreign or in the domestic overlap. References foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::isInOverlap(), isLocal(), and mapExternalToInternal_(). ◆ isLocal()
Return true if a domestic index is local for the process. I.e. the entity for this index is in the interior or on the border of the process' domain. References mapExternalToInternal_(), and numLocal(). Referenced by iAmMasterOf(), isBorder(), isBorderWith(), isFront(), and isInOverlap(). ◆ mapExternalToInternal_()
Referenced by domesticToGlobal(), domesticToNative(), iAmMasterOf(), isBorder(), isBorderWith(), isFront(), isFrontFor(), isInOverlap(), isLocal(), masterRank(), numPeers(), and peerHasIndex(). ◆ mapInternalToExternal_()◆ masterRank()
Return the rank of a master process for a domestic index. References mapExternalToInternal_(), and masterRank_. ◆ myRank()
Returns the rank of the current process. References myRank_. ◆ nativeToDomestic()Returns a domestic index given a native one. References foreignOverlap_, mapInternalToExternal_(), and Opm::Linear::ForeignOverlapFromBCRSMatrix::nativeToLocal(). ◆ numDomestic()
Returns the number domestic indices. The domestic indices are defined as the process' local indices plus its domestic overlap (i.e. indices for which it is not neither master nor are on the process border). References globalIndices_, and Opm::Linear::GlobalIndices< ForeignOverlap >::numDomestic(). Referenced by check(), and updateMasterRanks_(). ◆ numFront()
Returns the number of indices on the front within a given peer rank's grid partition. References foreignOverlap_, and Opm::Linear::ForeignOverlapFromBCRSMatrix::numFront(). ◆ numLocal()
Returns the number local indices. I.e. indices in the interior or on the border of the process' domain. References foreignOverlap_, and Opm::Linear::ForeignOverlapFromBCRSMatrix::numLocal(). Referenced by buildDomesticOverlap_(), domesticToNative(), isLocal(), and updateMasterRanks_(). ◆ numNative()
Returns the number native indices. I.e. the number of indices of the "raw" grid partition of the local process (including the indices in ghost and overlap elements). References foreignOverlap_, and Opm::Linear::ForeignOverlapFromBCRSMatrix::numNative(). ◆ numPeers()
Returns the number of processes which "see" a given index. References domesticOverlapByIndex_, and mapExternalToInternal_(). Referenced by sendIndicesToPeer_(). ◆ overlapSize()
Returns the size of the overlap region. References foreignOverlap_, and Opm::Linear::ForeignOverlapFromBCRSMatrix::overlapSize(). ◆ peerHasIndex()
Returns true iff a domestic index is seen by a peer rank. References foreignOverlap_, mapExternalToInternal_(), and Opm::Linear::ForeignOverlapFromBCRSMatrix::peerHasIndex(). ◆ peerSet()
Return the set of process ranks which share an overlap with the current process. References peerSet_. ◆ print()
Print the foreign overlap for debugging purposes. References globalIndices_, and Opm::Linear::GlobalIndices< ForeignOverlap >::print(). ◆ receiveIndicesFromPeer_()
References Opm::Linear::GlobalIndices< ForeignOverlap >::addIndex(), borderDistance_, domesticOverlapByIndex_, domesticOverlapWithPeer_, foreignOverlap_, globalIndices_, Opm::Linear::GlobalIndices< ForeignOverlap >::globalToDomestic(), Opm::Linear::GlobalIndices< ForeignOverlap >::hasGlobalIndex(), Opm::Linear::ForeignOverlapFromBCRSMatrix::isLocal(), Opm::Linear::GlobalIndices< ForeignOverlap >::numDomestic(), and Opm::MpiBuffer< DataType >::receive(). Referenced by buildDomesticOverlap_(). ◆ sendIndicesToPeer_()
References Opm::Linear::IndexDistanceNpeers::borderDistance, Opm::Linear::GlobalIndices< ForeignOverlap >::domesticToGlobal(), foreignOverlap_, Opm::Linear::ForeignOverlapFromBCRSMatrix::foreignOverlapByLocalIndex(), Opm::Linear::ForeignOverlapFromBCRSMatrix::foreignOverlapWithPeer(), globalIndices_, Opm::Linear::IndexDistanceNpeers::index, indicesSendBuffer_, numIndicesSendBuffer_, numPeers(), and Opm::Linear::IndexDistanceNpeers::numPeers. Referenced by buildDomesticOverlap_(). ◆ setupDebugMapping_()
Referenced by DomesticOverlapFromBCRSMatrix(). ◆ updateMasterRanks_()
◆ waitSendIndices_()
References indicesSendBuffer_, and numIndicesSendBuffer_. Referenced by buildDomesticOverlap_(). ◆ worldSize()
Returns the number of processes in the global MPI communicator. References worldSize_. Member Data Documentation◆ blackList_
Referenced by blackList(), and DomesticOverlapFromBCRSMatrix(). ◆ borderDistance_
Referenced by buildDomesticOverlap_(), and receiveIndicesFromPeer_(). ◆ domesticOverlapByIndex_
Referenced by buildDomesticOverlap_(), isFront(), numPeers(), and receiveIndicesFromPeer_(). ◆ domesticOverlapWithPeer_
◆ foreignOverlap_
Referenced by buildDomesticOverlap_(), check(), domesticToNative(), foreignOverlapOffsetToDomesticIdx(), foreignOverlapSize(), iAmMasterOf(), isBorder(), isBorderWith(), isFront(), isFrontFor(), isInOverlap(), nativeToDomestic(), numFront(), numLocal(), numNative(), overlapSize(), peerHasIndex(), receiveIndicesFromPeer_(), sendIndicesToPeer_(), and updateMasterRanks_(). ◆ globalIndices_
Referenced by domesticToGlobal(), globalToDomestic(), numDomestic(), print(), receiveIndicesFromPeer_(), and sendIndicesToPeer_(). ◆ indicesSendBuffer_
Referenced by sendIndicesToPeer_(), and waitSendIndices_(). ◆ masterRank_
Referenced by masterRank(), and updateMasterRanks_(). ◆ myRank_
Referenced by DomesticOverlapFromBCRSMatrix(), and myRank(). ◆ numIndicesSendBuffer_
Referenced by sendIndicesToPeer_(), and waitSendIndices_(). ◆ peerSet_
Referenced by buildDomesticOverlap_(), check(), peerSet(), and updateMasterRanks_(). ◆ worldSize_
Referenced by DomesticOverlapFromBCRSMatrix(), and worldSize(). The documentation for this class was generated from the following file: |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||