Tpetra parallel linear algebra
Version of the Day
|
Implementation of Directory for a contiguous, uniformly distributed Map. More...
#include <Tpetra_DirectoryImpl_decl.hpp>
Public Member Functions | |
bool | isOneToOne (const Teuchos::Comm< int > &) const override |
Whether the Directory's input Map is (globally) one to one. More... | |
LookupStatus | getEntries (const map_type &map, const Teuchos::ArrayView< const GlobalOrdinal > &globalIDs, const Teuchos::ArrayView< int > &nodeIDs, const Teuchos::ArrayView< LocalOrdinal > &localIDs, const bool computeLIDs) const |
Implementation of Teuchos::Describable. | |
std::string | description () const override |
A one-line human-readable description of this object. More... | |
Protected Member Functions | |
LookupStatus | getEntriesImpl (const map_type &map, const Teuchos::ArrayView< const GlobalOrdinal > &globalIDs, const Teuchos::ArrayView< int > &nodeIDs, const Teuchos::ArrayView< LocalOrdinal > &localIDs, const bool computeLIDs) const override |
Find process IDs and (optionally) local IDs for the given global IDs. More... | |
Implementation of Directory for a contiguous, uniformly distributed Map.
The Map may have any number of processes starting with one. Since the entries are uniformly distributed over the processes, this implementation of Directory can compute which process owns a GID (and the GID's corresponding LID) in space and time.
Definition at line 179 of file Tpetra_DirectoryImpl_decl.hpp.
|
inlineoverridevirtual |
Whether the Directory's input Map is (globally) one to one.
This method should always be treated as a collective on all processes in the given communicator, which must be the same as the input Map's communicator. Not all implementations necessarily communicate.
Implements Tpetra::Details::Directory< LocalOrdinal, GlobalOrdinal, NodeType >.
Definition at line 193 of file Tpetra_DirectoryImpl_decl.hpp.
|
override |
A one-line human-readable description of this object.
Definition at line 116 of file Tpetra_DirectoryImpl_def.hpp.
|
overrideprotectedvirtual |
Find process IDs and (optionally) local IDs for the given global IDs.
Implements Tpetra::Details::Directory< LocalOrdinal, GlobalOrdinal, NodeType >.
Definition at line 130 of file Tpetra_DirectoryImpl_def.hpp.
|
inherited |
Find process IDs and (optionally) local IDs for the given global IDs.
map | [in] The Directory's Map. This must be the same as given to the Directory's constructor. Directory may not keep a reference to the Map, in order to avoid circular references between a Map and its Directory. |
globalIDs | [in] The global IDs for which to find process IDs (and optionally local IDs). |
nodeIDs | [out] The process IDs corresponding to the given global IDs. If a global ID does not belong to any process, the corresponding entry of nodeIDs will be -1. |
localIDs | [out] If computeLIDs is true, we fill this with the local IDs corresponding to the given global IDs. If a given global ID does not correspond to a local ID, the corresponding entry will be Teuchos::OrdinalTraits<LocalOrdinal>::invalid(). |
computeLIDs | [in] Whether to fill in localIDs. |
Definition at line 36 of file Tpetra_DirectoryImpl_def.hpp.