|
|
typedef GraphType::local_ordinal_type | local_ordinal_type |
|
typedef GraphType::global_ordinal_type | global_ordinal_type |
|
typedef GraphType::node_type | node_type |
|
typedef GraphType::local_inds_host_view_type | local_inds_host_view_type |
|
typedef GraphType::nonconst_local_inds_host_view_type | nonconst_local_inds_host_view_type |
|
typedef GraphType::global_inds_host_view_type | global_inds_host_view_type |
|
typedef GraphType::nonconst_global_inds_host_view_type | nonconst_global_inds_host_view_type |
|
typedef Tpetra::Export< local_ordinal_type, global_ordinal_type, node_type > | export_type |
|
typedef Tpetra::Import< local_ordinal_type, global_ordinal_type, node_type > | import_type |
|
typedef Tpetra::Map< local_ordinal_type, global_ordinal_type, node_type > | map_type |
|
typedef Tpetra::RowGraph< local_ordinal_type, global_ordinal_type, node_type > | row_graph_type |
|
typedef GraphType::local_ordinal_type | local_ordinal_type |
|
typedef GraphType::global_ordinal_type | global_ordinal_type |
|
typedef GraphType::node_type | node_type |
|
typedef GraphType::local_inds_host_view_type | local_inds_host_view_type |
|
typedef GraphType::nonconst_local_inds_host_view_type | nonconst_local_inds_host_view_type |
|
typedef GraphType::global_inds_host_view_type | global_inds_host_view_type |
|
typedef GraphType::nonconst_global_inds_host_view_type | nonconst_global_inds_host_view_type |
|
|
|
| OverlappingRowGraph (const Teuchos::RCP< const row_graph_type > &nonoverlappingGraph, const Teuchos::RCP< const row_graph_type > &overlappingGraph, const Teuchos::RCP< const map_type > &rowMap, const Teuchos::RCP< const map_type > &colMap, const Tpetra::global_size_t numGlobalRows, const Tpetra::global_size_t numGlobalCols, const Tpetra::global_size_t numGlobalNonzeros, const size_t maxNumEntries, const Teuchos::RCP< const import_type > &nonoverlappingImporter, const Teuchos::RCP< const import_type > &overlappingImporter) |
|
virtual | ~OverlappingRowGraph () |
| Destructor.
|
|
|
virtual Teuchos::RCP< const Teuchos::Comm< int > > | getComm () const |
| The communicator over which the graph is distributed.
|
|
virtual Teuchos::RCP< const map_type > | getRowMap () const |
| The Map that describes the distribution of rows over processes.
|
|
virtual Teuchos::RCP< const map_type > | getColMap () const |
| The Map that describes the distribution of columns over processes.
|
|
virtual Teuchos::RCP< const map_type > | getDomainMap () const |
| The Map that describes the domain of this graph.
|
|
virtual Teuchos::RCP< const map_type > | getRangeMap () const |
| The Map that describes the range of this graph.
|
|
virtual Teuchos::RCP< const import_type > | getImporter () const |
| Import object (from domain Map to column Map).
|
|
virtual Teuchos::RCP< const export_type > | getExporter () const |
| Export object (from row Map to range Map).
|
|
virtual global_size_t | getGlobalNumRows () const |
| The global number of rows in this graph.
|
|
virtual global_size_t | getGlobalNumCols () const |
| The global number of columns in this graph.
|
|
virtual size_t | getLocalNumRows () const |
| The number of rows owned by the calling process.
|
|
virtual size_t | getLocalNumCols () const |
| The number of columns owned by the calling process.
|
|
virtual global_ordinal_type | getIndexBase () const |
| The index base for global indices for this graph.
|
|
virtual global_size_t | getGlobalNumEntries () const |
| The global number of entries in this graph.
|
|
virtual size_t | getLocalNumEntries () const |
| The number of entries in this graph owned by the calling process.
|
|
virtual size_t | getNumEntriesInGlobalRow (global_ordinal_type globalRow) const |
| The number of entries in the given global row that are owned by the calling process.
|
|
virtual size_t | getNumEntriesInLocalRow (local_ordinal_type localRow) const |
| The number of entries in the given local row that are owned by the calling process.
|
|
virtual size_t | getGlobalMaxNumRowEntries () const |
| The maximum number of entries in any row on any process.
|
|
virtual size_t | getLocalMaxNumRowEntries () const |
| The maximum number of entries in any row on the calling process.
|
|
virtual bool | hasColMap () const |
| Whether this graph has a column Map.
|
|
virtual bool | isLocallyIndexed () const |
| Whether this graph is locally indexed.
|
|
virtual bool | isGloballyIndexed () const |
| Whether this graph is globally indexed.
|
|
virtual bool | isFillComplete () const |
| true if fillComplete() has been called, else false .
|
|
|
virtual void | getGlobalRowCopy (global_ordinal_type globalRow, nonconst_global_inds_host_view_type &gblColInds, size_t &numIndices) const |
| Copy out a list of column indices in the given global row that are owned by the calling process.
|
|
virtual void | getLocalRowCopy (local_ordinal_type localRow, nonconst_local_inds_host_view_type &gblColInds, size_t &numIndices) const |
| Copy out a list of local column indices in the given local row that are owned by the calling process.
|
|
virtual void | getLocalRowView (const local_ordinal_type lclRow, local_inds_host_view_type &lclColInds) const |
| Get a constant, nonpersisting, locally indexed view of the given row of the graph.
|
|
virtual void | getGlobalRowView (const global_ordinal_type gblRow, global_inds_host_view_type &gblColInds) const |
| Get a const, non-persisting view of the given global row's global column indices, as a Teuchos::ArrayView.
|
|
virtual | ~RowGraph ()=default |
| Destructor (virtual for memory safety of derived classes)
|
|
template<class GraphType>
class Ifpack2::Details::OverlappingRowGraph< GraphType >
Sparse graph (Tpetra::RowGraph subclass) with ghost rows.
- Template Parameters
-
GraphType | Tpetra::RowGraph or Tpetra::CrsGraph specialization. |
This class is meant to be created by and used with OverlappingRowMatrix. It is the subclass of Tpetra::RowGraph returned by that class' getGraph() method.
- Warning
- This class is an implementation detail of Ifpack2. Users should not rely on its interface.
template<class GraphType >
Get a constant, nonpersisting, locally indexed view of the given row of the graph.
The returned views of the column indices are not guaranteed to persist beyond the lifetime of this
. Furthermore, some RowGraph implementations allow changing the values, or the indices and values. Any such changes invalidate the returned views.
This method only gets the entries in the given row that are stored on the calling process. Note that if the graph has an overlapping row Map, it is possible that the calling process does not store all the entries in that row.
- Precondition
isLocallyIndexed () && supportsRowViews ()
- Postcondition
indices.size () == getNumEntriesInGlobalRow (LocalRow)
- Parameters
-
lclRow | [in] Local index of the row. |
lclColInds | [out] Local indices of the columns in the row. If the given row is not a valid row index on the calling process, then the result has no entries (its size is zero). |
Subclasses are expected to implement this method. We would have made this method pure virtual, but that would have broken backwards compatibility, since we added the method at least one major release after introducing this class.