Tpetra Matrix/Vector Services Version of the Day
Protected Types | Protected Member Functions | Protected Attributes
Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > Class Template Reference

A class for constructing and using sparse compressed graphs with row access. More...

#include <Tpetra_CrsGraph_decl.hpp>

Inheritance diagram for Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Constructor/Destructor Methods
 CrsGraph (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile)
 Constructor with fixed number of indices per row.
 CrsGraph (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile)
 Constructor with variable number of indices per row.
 CrsGraph (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile)
 Constructor with fixed number of indices per row and specified column map.
 CrsGraph (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile)
 Constructor with variable number of indices per row and specified column map.
virtual ~CrsGraph ()
Insertion/Removal Methods
void insertGlobalIndices (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &indices)
 Insert graph indices, using global IDs.
void insertLocalIndices (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices)
 Insert graph indices, using local IDs.
void removeLocalIndices (LocalOrdinal localRow)
 Remove all graph indices from the specified local row.
Transformational Methods
void globalAssemble ()
 Communicate non-local contributions to other nodes.
void resumeFill ()
void fillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, OptimizeOption os=DoOptimizeStorage)
 Signal that data entry is complete, specifying domain and range maps.
void fillComplete (OptimizeOption os=DoOptimizeStorage)
 Signal that data entry is complete.
Methods implementing RowGraph.
const RCP< const Comm< int > > & getComm () const
 Returns the communicator.
RCP< Node > getNode () const
 Returns the underlying node.
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getRowMap () const
 Returns the Map that describes the row distribution in this graph.
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getColMap () const
 Returns the Map that describes the column distribution in this graph.
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getDomainMap () const
 Returns the Map associated with the domain of this graph.
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getRangeMap () const
 Returns the Map associated with the domain of this graph.
RCP< const Import
< LocalOrdinal, GlobalOrdinal,
Node > > 
getImporter () const
 Returns the importer associated with this graph.
RCP< const Export
< LocalOrdinal, GlobalOrdinal,
Node > > 
getExporter () const
 Returns the exporter associated with this graph.
global_size_t getGlobalNumRows () const
 Returns the number of global rows in the graph.
global_size_t getGlobalNumCols () const
 Returns the number of global columns in the graph.
size_t getNodeNumRows () const
 Returns the number of graph rows owned on the calling node.
size_t getNodeNumCols () const
 Returns the number of columns connected to the locally owned rows of this graph.
GlobalOrdinal getIndexBase () const
 Returns the index base for global indices for this graph.
global_size_t getGlobalNumEntries () const
 Returns the global number of entries in the graph.
size_t getNodeNumEntries () const
 Returns the local number of entries in the graph.
size_t getNumEntriesInGlobalRow (GlobalOrdinal globalRow) const
 Returns the current number of entries on this node in the specified global row.
size_t getNumEntriesInLocalRow (LocalOrdinal localRow) const
 Returns the current number of entries on this node in the specified local row.
size_t getNodeAllocationSize () const
 Returns the total number of indices allocated for the graph, across all rows on this node.
size_t getNumAllocatedEntriesInGlobalRow (GlobalOrdinal globalRow) const
 Returns the current number of allocated entries for this node in the specified global row .
size_t getNumAllocatedEntriesInLocalRow (LocalOrdinal localRow) const
 Returns the current number of allocated entries on this node in the specified local row.
global_size_t getGlobalNumDiags () const
 Returns the number of global diagonal entries, based on global row/column index comparisons.
size_t getNodeNumDiags () const
 Returns the number of local diagonal entries, based on global row/column index comparisons.
size_t getGlobalMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on all nodes.
size_t getNodeMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on this node.
bool hasColMap () const
 Indicates whether the graph has a well-defined column map.
bool isLowerTriangular () const
 Indicates whether the graph is lower triangular.
bool isUpperTriangular () const
 Indicates whether the graph is upper triangular.
bool isLocallyIndexed () const
 If graph indices are in the local range, this function returns true. Otherwise, this function returns false. */.
bool isGloballyIndexed () const
 If graph indices are in the global range, this function returns true. Otherwise, this function returns false. */.
bool isFillComplete () const
 Returns true if fillComplete() has been called and the graph is in compute mode.
bool isFillActive () const
 Returns true if resumeFill() has been called and the graph is in edit mode.
bool isSorted () const
 Indicates whether the graph indices in all rows are known to be sorted.
bool isStorageOptimized () const
 Returns true if storage has been optimized.
ProfileType getProfileType () const
 Returns true if the graph was allocated with static data structures.
void getGlobalRowCopy (GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &Indices, size_t &NumIndices) const
 Extract a list of elements in a specified global row of the graph. Put into pre-allocated storage.
void getLocalRowCopy (LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &indices, size_t &NumIndices) const
 Extract a list of elements in a specified local row of the graph. Put into storage allocated by calling routine.
void getGlobalRowView (GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &Indices) const
 Extract a const, non-persisting view of global indices in a specified row of the graph.
void getLocalRowView (LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices) const
 Extract a const, non-persisting view of local indices in a specified row of the graph.
Overridden from Teuchos::Describable
std::string description () const
 Return a simple one-line description of this object.
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
 Print the object with some verbosity level to an FancyOStream object.
Methods implementing Tpetra::DistObject
bool checkSizes (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source)
 Allows the source and target (this) objects to be compared for compatibility.
void copyAndPermute (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, size_t numSameIDs, const ArrayView< const LocalOrdinal > &permuteToLIDs, const ArrayView< const LocalOrdinal > &permuteFromLIDs)
 Perform copies and permutations that are local to this image.
void packAndPrepare (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const ArrayView< const LocalOrdinal > &exportLIDs, Array< GlobalOrdinal > &exports, const ArrayView< size_t > &numPacketsPerLID, size_t &constantNumPackets, Distributor &distor)
 Perform any packing or preparation required for communication.
void unpackAndCombine (const ArrayView< const LocalOrdinal > &importLIDs, const ArrayView< const GlobalOrdinal > &imports, const ArrayView< size_t > &numPacketsPerLID, size_t constantNumPackets, Distributor &distor, CombineMode CM)
 Perform any unpacking and combining after communication.
Advanced methods, at increased risk of deprecation.
ArrayRCP< const size_t > getNodeRowBegs () const
 Get an ArrayRCP of the row-offsets.
ArrayRCP< const LocalOrdinal > getNodePackedIndices () const
 Get an ArrayRCP of the packed column-indices.
Deprecated methods; will be removed at some point in the near future.
TPETRA_DEPRECATED void optimizeStorage ()
 Re-allocate the data into contiguous storage.
TPETRA_DEPRECATED ArrayRCP
< const GlobalOrdinal > 
getGlobalRowView (GlobalOrdinal GlobalRow) const
 Deprecated. Get a persisting const view of the elements in a specified global row of the graph.
TPETRA_DEPRECATED ArrayRCP
< const LocalOrdinal > 
getLocalRowView (LocalOrdinal LocalRow) const
 Deprecated. Get a persisting const view of the elements in a specified local row of the graph.
Import/Export Methods
void doImport (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Import.
void doImport (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Import (using an Exporter)
void doExport (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Export.
void doExport (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Export (using an Importer)
Attribute Accessor Methods
bool isDistributed () const
 Accessor for whether or not this is a global object.
const Teuchos::RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getMap () const
 Access function for the Tpetra::Map this DistObject was constructed with.
I/O methods
void print (std::ostream &os) const
 Print method.

Protected Types

enum  ReverseOption
 Enum indicating whether the transer should be performed in forward or reverse mode. More...

Protected Member Functions

virtual void doTransfer (const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &source, CombineMode CM, size_t numSameIDs, const Teuchos::ArrayView< const LocalOrdinal > &permuteToLIDs, const Teuchos::ArrayView< const LocalOrdinal > &permuteFromLIDs, const Teuchos::ArrayView< const LocalOrdinal > &remoteLIDs, const Teuchos::ArrayView< const LocalOrdinal > &exportLIDs, Distributor &distor, ReverseOption revOp)
 Perform transfer (redistribution) of data across memory images.

Protected Attributes

ArrayRCP< LocalOrdinal > lclInds1D_
ArrayRCP< GlobalOrdinal > gblInds1D_
 gblInds1D_ are the indices for all rows
ArrayRCP< ArrayRCP
< LocalOrdinal > > 
lclInds2D_
ArrayRCP< ArrayRCP
< GlobalOrdinal > > 
gblInds2D_
 gblInds2D_[r] are the indices for row r.
ArrayRCP< size_t > numEntriesPerRow_
 The number valid entries in the row.

Detailed Description

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
class Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >

A class for constructing and using sparse compressed graphs with row access.

Template Parameters:
LocalOrdinalA ordinal type for lists of local indices. This specifies the LocalOrdinal type for Map objects used by this graph.
GlobalOrdinalA ordinal type for lists of global indices. This specifies the GlobalOrdinal type for Map objects used by this graph.
NodeA shared-memory node class, fulfilling the Kokkos Node API
LocalMatOpsA local sparse matrix operations class, fulfiling the Kokkos CRS Ops API.

This class allows the construction of sparse graphs with row-access.

Local vs. Global

Graph entries can be added using either local or global coordinates for the indices. The accessors isGloballyIndexed() and isLocallyIndexed() indicate whether the indices are currently stored as global or local indices. Many of the class methods are divided into global and local versions, which differ only in whether they accept/return indices in the global or local coordinate space. Some of these methods may only be used if the graph coordinates are in the appropriate coordinates. For example, getGlobalRowView() returns a View to the indices in global coordinates; if the indices are not in global coordinates, then no such View can be created.

The global/local distinction does distinguish between operation on the global/local graph. Almost all methods operate on the local graph, i.e., the rows of the graph associated with the local node, per the distribution specified by the row map. Access to non-local rows requires performing an explicit communication via the import/export capabilities of the CrsGraph object; see DistObject. However, the method insertGlobalValues() is an exception to this rule, as non-local rows are allowed to be added via the local graph. These rows are stored in the local graph and communicated to the appropriate node on the next call to globalAssemble() or fillComplete() (the latter calls the former).

Definition at line 96 of file Tpetra_CrsGraph_decl.hpp.


Member Enumeration Documentation

enum Tpetra::DistObject::ReverseOption [protected, inherited]

Enum indicating whether the transer should be performed in forward or reverse mode.

Definition at line 127 of file Tpetra_DistObject.hpp.


Constructor & Destructor Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::CrsGraph ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
size_t  maxNumEntriesPerRow,
ProfileType  pftype = DynamicProfile 
)

Constructor with fixed number of indices per row.

Definition at line 49 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::CrsGraph ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
ProfileType  pftype = DynamicProfile 
)

Constructor with variable number of indices per row.

Definition at line 97 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::CrsGraph ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
size_t  maxNumEntriesPerRow,
ProfileType  pftype = DynamicProfile 
)

Constructor with fixed number of indices per row and specified column map.

The column map will be used to filter any graph indices inserted using insertLocalIndices() or insertGlobalIndices().

Definition at line 72 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::CrsGraph ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
ProfileType  pftype = DynamicProfile 
)

Constructor with variable number of indices per row and specified column map.

The column map will be used to filter any graph indices inserted using insertLocalIndices() or insertGlobalIndices().

Definition at line 128 of file Tpetra_CrsGraph_def.hpp.


Member Function Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::insertGlobalIndices ( GlobalOrdinal  globalRow,
const ArrayView< const GlobalOrdinal > &  indices 
)

Insert graph indices, using global IDs.

All index values must be in the global space.

Precondition:
globalRow exists as an ID in the global row map
isLocallyIndexed() == false
isStorageOptimized() == false
Postcondition:
indicesAreAllocated() == true
isGloballyIndexed() == true
Note:
If globalRow does not belong to the graph on this node, then it will be communicated to the appropriate node when globalAssemble() is called (which will, at the latest, occur during the next call to fillComplete().) Otherwise, the entries will be inserted in the local graph.
If the graph row already contains entries at the indices corresponding to values in indices, then the redundant indices will be eliminated; this may happen at insertion or during the next call to fillComplete().

Definition at line 1517 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::insertLocalIndices ( LocalOrdinal  localRow,
const ArrayView< const LocalOrdinal > &  indices 
)

Insert graph indices, using local IDs.

Precondition:
localRow is a local row belonging to the graph on this node
isGloballyIndexed() == false
isStorageOptimized() == false
hasColMap() == true
Postcondition:
indicesAreAllocated() == true
isLocallyIndexed() == true
Note:
If the graph row already contains entries at the indices corresponding to values in indices, then the redundant indices will be eliminated; this may happen at insertion or during the next call to fillComplete().

Definition at line 1476 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::removeLocalIndices ( LocalOrdinal  localRow)

Remove all graph indices from the specified local row.

Precondition:
localRow is a local row of this graph.
isGloballyIndexed() == false
isStorageOptimized() == false
Postcondition:
getNumEntriesInLocalRow(localRow) == 0
indicesAreAllocated() == true
isLocallyIndexed() == true

Definition at line 1583 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::globalAssemble ( )

Communicate non-local contributions to other nodes.

Each of the methods in this group is a global collective. It is necessary to call these mehtods on all nodes participating in the communicator associated with this graph.

Definition at line 1611 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::resumeFill ( )

Resume fill operations. After calling fillComplete(), resumeFill() must be called before initiating any changes to the graph.

resumeFill() may be called repeatedly.

Postcondition:
isFillActive() == true
isFillComplete() == false

Definition at line 1835 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::fillComplete ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap,
OptimizeOption  os = DoOptimizeStorage 
)

Signal that data entry is complete, specifying domain and range maps.

Off-node indices are distributed (via globalAssemble()), indices are sorted, redundant indices are eliminated, and global indices are transformed to local indices.

Precondition:
isFillActive() == true
isFillComplete()() == false
Postcondition:
isFillActive() == false
isFillComplete() == true
if os == DoOptimizeStorage, then isStorageOptimized() == true. See isStorageOptimized() for consequences.

Definition at line 1866 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::fillComplete ( OptimizeOption  os = DoOptimizeStorage)

Signal that data entry is complete.

Off-node entries are distributed (via globalAssemble()), repeated entries are summed, and global indices are transformed to local indices.

Note:
This method calls fillComplete( getRowMap(), getRowMap(), os ).
Precondition:
isFillActive() == true
isFillComplete()() == false
Postcondition:
isFillActive() == false
isFillComplete() == true
if os == DoOptimizeStorage, then isStorageOptimized() == true. See isStorageOptimized() for consequences.

Definition at line 1857 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const RCP< const Comm< int > > & Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getComm ( ) const [virtual]

Returns the communicator.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 366 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
RCP< Node > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNode ( ) const [virtual]

Returns the underlying node.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 206 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getRowMap ( ) const [virtual]

Returns the Map that describes the row distribution in this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 214 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getColMap ( ) const [virtual]

Returns the Map that describes the column distribution in this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 222 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getDomainMap ( ) const [virtual]

Returns the Map associated with the domain of this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 230 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getRangeMap ( ) const [virtual]

Returns the Map associated with the domain of this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 238 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getImporter ( ) const [virtual]

Returns the importer associated with this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 246 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getExporter ( ) const [virtual]

Returns the exporter associated with this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 254 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
global_size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalNumRows ( ) const [virtual]

Returns the number of global rows in the graph.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 159 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
global_size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalNumCols ( ) const [virtual]

Returns the number of global columns in the graph.

Returns the number of entries in the domain map of the matrix. Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 166 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeNumRows ( ) const [virtual]

Returns the number of graph rows owned on the calling node.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 175 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeNumCols ( ) const [virtual]

Returns the number of columns connected to the locally owned rows of this graph.

Throws std::runtime_error if hasColMap() == false

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 182 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
GlobalOrdinal Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getIndexBase ( ) const [virtual]

Returns the index base for global indices for this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 372 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
global_size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalNumEntries ( ) const [virtual]

Returns the global number of entries in the graph.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 288 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeNumEntries ( ) const [virtual]

Returns the local number of entries in the graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 295 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNumEntriesInGlobalRow ( GlobalOrdinal  globalRow) const [virtual]

Returns the current number of entries on this node in the specified global row.

Returns OrdinalTraits<size_t>::invalid() if the specified global row does not belong to this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 1284 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNumEntriesInLocalRow ( LocalOrdinal  localRow) const [virtual]

Returns the current number of entries on this node in the specified local row.

Returns OrdinalTraits<size_t>::invalid() if the specified local row is not valid for this graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 1300 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeAllocationSize ( ) const

Returns the total number of indices allocated for the graph, across all rows on this node.

This is the allocation available to the user. Actual allocation may be larger, for example, after calling fillComplete(), and thus this does not necessarily reflect the memory consumption of the this graph.

This quantity is computed during the actual allocation. Therefore, if indicesAreAllocated() == false, this method returns OrdinalTraits<size_t>::invalid().

Definition at line 358 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNumAllocatedEntriesInGlobalRow ( GlobalOrdinal  globalRow) const

Returns the current number of allocated entries for this node in the specified global row .

Throws exception std::runtime_error if the specified global row does not belong to this node.

Definition at line 1314 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNumAllocatedEntriesInLocalRow ( LocalOrdinal  localRow) const

Returns the current number of allocated entries on this node in the specified local row.

Throws exception std::runtime_error if the specified local row is not valid for this node.

Definition at line 1330 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
global_size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalNumDiags ( ) const [virtual]

Returns the number of global diagonal entries, based on global row/column index comparisons.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 198 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeNumDiags ( ) const [virtual]

Returns the number of local diagonal entries, based on global row/column index comparisons.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 191 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
global_size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalMaxNumRowEntries ( ) const [virtual]

Returns the maximum number of entries across all rows/columns on all nodes.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 302 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
size_t Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeMaxNumRowEntries ( ) const [virtual]

Returns the maximum number of entries across all rows/columns on this node.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 309 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::hasColMap ( ) const [virtual]

Indicates whether the graph has a well-defined column map.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 261 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isLowerTriangular ( ) const [virtual]

Indicates whether the graph is lower triangular.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 337 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isUpperTriangular ( ) const [virtual]

Indicates whether the graph is upper triangular.

Undefined if isFillActive().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 330 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isLocallyIndexed ( ) const [virtual]

If graph indices are in the local range, this function returns true. Otherwise, this function returns false. */.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 344 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isGloballyIndexed ( ) const [virtual]

If graph indices are in the global range, this function returns true. Otherwise, this function returns false. */.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 351 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isFillComplete ( ) const [virtual]

Returns true if fillComplete() has been called and the graph is in compute mode.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 316 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isFillActive ( ) const

Returns true if resumeFill() has been called and the graph is in edit mode.

Definition at line 323 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isSorted ( ) const

Indicates whether the graph indices in all rows are known to be sorted.

A fill-complete graph is always sorted, as is a newly constructed graph. A graph is sorted immediately after calling resumeFill(), but any changes to the graph may result in the sorting status becoming unknown (and therefore, presumed unsorted.)

Definition at line 396 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::isStorageOptimized ( ) const

Returns true if storage has been optimized.

Optimized storage means that the allocation of each row is equal to the number of entries. The effect is that a pass through the matrix, i.e., during a mat-vec, requires minimal memory traffic. One limitation of optimized storage is that no new indices can be added to the graph.

Definition at line 268 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
ProfileType Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getProfileType ( ) const

Returns true if the graph was allocated with static data structures.

Definition at line 281 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalRowCopy ( GlobalOrdinal  GlobalRow,
const ArrayView< GlobalOrdinal > &  Indices,
size_t &  NumIndices 
) const [virtual]

Extract a list of elements in a specified global row of the graph. Put into pre-allocated storage.

Parameters:
LocalRow- (In) Global row number for which indices are desired.
Indices- (Out) Global column indices corresponding to values.
NumIndices- (Out) Number of indices.

Note: A std::runtime_error exception is thrown indices is not large enough to hold the column indices associated with row GlobalRow. If GlobalRow does not belong to this node, then indices is unchanged and NumIndices is returned as OrdinalTraits<size_t>::invalid().

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 1402 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getLocalRowCopy ( LocalOrdinal  LocalRow,
const ArrayView< LocalOrdinal > &  indices,
size_t &  NumIndices 
) const [virtual]

Extract a list of elements in a specified local row of the graph. Put into storage allocated by calling routine.

Parameters:
LocalRow- (In) Local row number for which indices are desired.
Indices- (Out) Local column indices corresponding to values.
NumIndices- (Out) Number of indices.

Note: A std::runtime_error exception is thrown indices is not large enough to hold the column indices associated with row LocalRow. If LocalRow is not valid for this node, then indices is unchanged and NumIndices is returned as OrdinalTraits<size_t>::invalid().

Precondition:
isLocallyIndexed()==true or hasColMap() == true

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 1362 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalRowView ( GlobalOrdinal  GlobalRow,
ArrayView< const GlobalOrdinal > &  Indices 
) const

Extract a const, non-persisting view of global indices in a specified row of the graph.

Parameters:
GlobalRow- (In) Global row number for which indices are desired.
Indices- (Out) Global column indices corresponding to values.
Precondition:
isLocallyIndexed() == false
Postcondition:
indices.size() == getNumEntriesInGlobalRow(GlobalRow)

Note: If GlobalRow does not belong to this node, then indices is set to null.

Definition at line 1453 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getLocalRowView ( LocalOrdinal  LocalRow,
ArrayView< const LocalOrdinal > &  indices 
) const

Extract a const, non-persisting view of local indices in a specified row of the graph.

Parameters:
LocalRow- (In) Local row number for which indices are desired.
Indices- (Out) Global column indices corresponding to values.
Precondition:
isGloballyIndexed() == false
Postcondition:
indices.size() == getNumEntriesInLocalRow(LocalRow)

Note: If LocalRow does not belong to this node, then indices is set to null.

Definition at line 1431 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
std::string Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::description ( ) const [virtual]

Return a simple one-line description of this object.

Reimplemented from Teuchos::Describable.

Definition at line 2366 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::describe ( Teuchos::FancyOStream out,
const Teuchos::EVerbosityLevel  verbLevel = Teuchos::Describable::verbLevel_default 
) const [virtual]

Print the object with some verbosity level to an FancyOStream object.

Reimplemented from Teuchos::Describable.

Definition at line 2389 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::checkSizes ( const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &  source) [virtual]

Allows the source and target (this) objects to be compared for compatibility.

Return true if they are compatible, return false if they aren't.

Implements Tpetra::DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2503 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::copyAndPermute ( const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &  source,
size_t  numSameIDs,
const ArrayView< const LocalOrdinal > &  permuteToLIDs,
const ArrayView< const LocalOrdinal > &  permuteFromLIDs 
) [virtual]

Perform copies and permutations that are local to this image.

Parameters:
sourceIn On entry, the DistObject that we are importing from.
numSameIDsIn On entry, the number of elements that are the same on the source and dest objects. (i.e. The element is owned by the same image in both source and dest, and no permutation occurs.)
numPermuteIDsIn On entry, the number of elements that are locally permuted between source and dest objects.
permuteToLIDsIn On entry, contains a list of the elements that are permuted. (Listed by their LID in the destination DistObject.)
permuteFromLIDsIn On entry, contains a list of the elements that are permuted. (Listed by their LID in the source DistObject.)

Implements Tpetra::DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2514 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::packAndPrepare ( const DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node > &  source,
const ArrayView< const LocalOrdinal > &  exportLIDs,
Array< GlobalOrdinal > &  exports,
const ArrayView< size_t > &  numPacketsPerLID,
size_t &  constantNumPackets,
Distributor distor 
) [virtual]

Perform any packing or preparation required for communication.

Parameters:
sourceIn On entry, the DistObject that we are importing from.
exportLIDsIn On entry, a list of the entries we will be sending to other images. (Listed by their LID in the source DistObject.)
exportsOut On exit, buffer for data we will be sending out.
numPacketsPerLIDOut On exit, numPacketsPerLID[i] contains the number of packets to be exported for exportLIDs[i].
constantNumPacketsOut On exit, 0 if numPacketsPerLID has variable contents (different size for each LID). If nonzero, then it is expected that num-packets-per-LID is constant, and constantNumPackets holds that value.
distorIn On entry, contains the Distributor object we are using.

Implements Tpetra::DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2565 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::unpackAndCombine ( const ArrayView< const LocalOrdinal > &  importLIDs,
const ArrayView< const GlobalOrdinal > &  imports,
const ArrayView< size_t > &  numPacketsPerLID,
size_t  constantNumPackets,
Distributor distor,
CombineMode  CM 
) [virtual]

Perform any unpacking and combining after communication.

Parameters:
importLIDsIn On entry, a list of the entries we received from other images. (Listed by their LID in the target DistObject.)
importsIn Buffer containing data we received.
numPacketsPerLIDIn numPacketsPerLID[i] contains the number of packets imported for importLIDs[i].
constantNumPacketsIn If nonzero, then numPacketsPerLID is constant (same value in all entries) and constantNumPackets is that value.
distorIn The Distributor object we are using.
CMIn The Tpetra::CombineMode to use when combining the imported entries with existing entries.

Implements Tpetra::DistObject< GlobalOrdinal, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2616 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
ArrayRCP< const size_t > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodeRowBegs ( ) const

Get an ArrayRCP of the row-offsets.

Returns null if optimizeStorage() hasn't been called. The returned buffer exists in host-memory.

Definition at line 1344 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
ArrayRCP< const LocalOrdinal > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getNodePackedIndices ( ) const

Get an ArrayRCP of the packed column-indices.

Returns null if optimizeStorage() hasn't been called. The returned buffer exists in host-memory.

Definition at line 1353 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::optimizeStorage ( )

Re-allocate the data into contiguous storage.

This method is deprecated and will be removed in a future version of Tpetra, as the implementation of storage optimization has been below Tpetra to Kokkos.

Currently, the implementation simply calls resumeFill() and then fillComplete(OptimizeStorage). As such, it is required to be called by all nodes that participate in the associated communicator.

Definition at line 2710 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
ArrayRCP< const GlobalOrdinal > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getGlobalRowView ( GlobalOrdinal  GlobalRow) const [virtual]

Deprecated. Get a persisting const view of the elements in a specified global row of the graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2686 of file Tpetra_CrsGraph_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
ArrayRCP< const LocalOrdinal > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getLocalRowView ( LocalOrdinal  LocalRow) const [virtual]

Deprecated. Get a persisting const view of the elements in a specified local row of the graph.

Implements Tpetra::RowGraph< LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 2663 of file Tpetra_CrsGraph_def.hpp.

void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node > &  source,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
) [inherited]

Import.

void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node > &  source,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
) [inherited]

Import (using an Exporter)

void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
) [inherited]

Export.

void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
) [inherited]

Export (using an Importer)

bool Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::isDistributed ( ) const [inline, inherited]

Accessor for whether or not this is a global object.

const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::getMap ( ) const [inline, inherited]

Access function for the Tpetra::Map this DistObject was constructed with.

Definition at line 111 of file Tpetra_DistObject.hpp.

void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::print ( std::ostream &  os) const [inherited]

Print method.

virtual void Tpetra::DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node >::doTransfer ( const DistObject< GlobalOrdinal , LocalOrdinal, GlobalOrdinal, Node > &  source,
CombineMode  CM,
size_t  numSameIDs,
const Teuchos::ArrayView< const LocalOrdinal > &  permuteToLIDs,
const Teuchos::ArrayView< const LocalOrdinal > &  permuteFromLIDs,
const Teuchos::ArrayView< const LocalOrdinal > &  remoteLIDs,
const Teuchos::ArrayView< const LocalOrdinal > &  exportLIDs,
Distributor distor,
ReverseOption  revOp 
) [protected, virtual, inherited]

Perform transfer (redistribution) of data across memory images.


Member Data Documentation

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
ArrayRCP< LocalOrdinal> Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::lclInds1D_ [protected]

lclInds1D_ are the indices for all rows

Definition at line 600 of file Tpetra_CrsGraph_decl.hpp.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
ArrayRCP<GlobalOrdinal> Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::gblInds1D_ [protected]

gblInds1D_ are the indices for all rows

Definition at line 602 of file Tpetra_CrsGraph_decl.hpp.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
ArrayRCP<ArrayRCP< LocalOrdinal> > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::lclInds2D_ [protected]

lclInds2D_[r] are the indices for row r.

Definition at line 616 of file Tpetra_CrsGraph_decl.hpp.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
ArrayRCP<ArrayRCP<GlobalOrdinal> > Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::gblInds2D_ [protected]

gblInds2D_[r] are the indices for row r.

Definition at line 618 of file Tpetra_CrsGraph_decl.hpp.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<void,LocalOrdinal,Node>::SparseOps>
ArrayRCP<size_t> Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::numEntriesPerRow_ [protected]

The number valid entries in the row.

Definition at line 620 of file Tpetra_CrsGraph_decl.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines