Public Member Functions | Private Types | Private Attributes | List of all members
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

#include <Xpetra_TpetraBlockCrsMatrix.hpp>

Inheritance diagram for Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >:
Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node >

Public Member Functions

 TpetraBlockCrsMatrix (const TpetraBlockCrsMatrix &matrix)
 Deep copy constructor. More...
 
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
 Get a copy of the diagonal entries owned by this node, with local row idices {. More...
 
void getLocalDiagOffsets (Teuchos::ArrayRCP< size_t > &offsets) const
 Get offsets of the diagonal entries in the matrix. More...
 
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Teuchos::ArrayView< const size_t > &offsets) const
 Get a copy of the diagonal entries owned by this node, with local row indices. More...
 
void leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
 Left scale operator with given vector values. More...
 
void rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
 Right scale operator with given vector values. More...
 
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap () const
 Implements DistObject interface. More...
 
void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Import. More...
 
void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Export. More...
 
void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Import (using an Exporter). More...
 
void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Export (using an Importer). More...
 
void removeEmptyProcessesInPlace (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)
 
template<class Node2 >
RCP< TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node2 > > clone (const RCP< Node2 > &node2) const
 
- Public Member Functions inherited from Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >
virtual ~CrsMatrix ()
 Destructor. More...
 
virtual void removeEmptyProcessesInPlace (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)=0
 
- Public Member Functions inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >
virtual ~RowMatrix ()
 Destructor. More...
 
virtual void getLocalRowCopy (LocalOrdinal LocalRow, const Teuchos::ArrayView< LocalOrdinal > &Indices, const Teuchos::ArrayView< Scalar > &Values, size_t &NumEntries) const =0
 Extract a list of entries in a specified local row of the graph. Put into storage allocated by calling routine. More...
 
- Public Member Functions inherited from Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node >
virtual ~DistObject ()
 Destructor. More...
 

Private Types

typedef TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraBlockCrsMatrixClass
 
typedef TpetraVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraVectorClass
 
typedef TpetraImport< LocalOrdinal, GlobalOrdinal, Node > TpetraImportClass
 
typedef TpetraExport< LocalOrdinal, GlobalOrdinal, Node > TpetraExportClass
 

Private Attributes

RCP< Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > mtx_
 

Constructor/Destructor Methods

 TpetraBlockCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying fixed number of entries for each row (not implemented) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying (possibly different) number of entries in each row (not implemented) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying column Map and fixed number of entries for each row (not implemented) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, ProfileType pftype=DynamicProfile, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying column Map and number of entries in each row (not implemented) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying a previously constructed graph ( not implemented ) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const LocalOrdinal blockSize)
 Constructor specifying a previously constructed graph & blocksize. More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor for a fused import ( not implemented ) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor for a fused export (not implemented(. More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &RowImporter, const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > DomainImporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 Constructor for a fused import ( not implemented ) More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &RowExporter, const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > DomainExporter, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 Constructor for a fused export (not implemented(. More...
 
virtual ~TpetraBlockCrsMatrix ()
 Destructor. More...
 

Insertion/Removal Methods

void insertGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using global IDs (not implemented) More...
 
void insertLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using local IDs (not implemented) More...
 
void replaceGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Replace matrix entries, using global IDs (not implemented) More...
 
void replaceLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Replace matrix entries, using local IDs. More...
 
void setAllToScalar (const Scalar &alpha)
 Set all matrix entries equal to scalarThis. More...
 
void scale (const Scalar &alpha)
 Scale the current values of a matrix, this = alpha*this (not implemented) More...
 
void allocateAllValues (size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< LocalOrdinal > &colind, ArrayRCP< Scalar > &values)
 Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine. More...
 
void setAllValues (const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)
 Sets the 1D pointer arrays of the graph (not impelmented) More...
 
void getAllValues (ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
 Gets the 1D pointer arrays of the graph (not implemented) More...
 

Transformational Methods

void resumeFill (const RCP< ParameterList > &params=null)
 
void fillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=null)
 Signal that data entry is complete, specifying domain and range maps. More...
 
void fillComplete (const RCP< ParameterList > &params=null)
 Signal that data entry is complete. More...
 
void replaceDomainMapAndImporter (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &newImporter)
 Replaces the current domainMap and importer with the user-specified objects. More...
 
void expertStaticFillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &importer=Teuchos::null, const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)
 Expert static fill complete. More...
 

Methods implementing RowMatrix

const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap () const
 Returns the Map that describes the row distribution in this matrix. More...
 
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap () const
 Returns the Map that describes the column distribution in this matrix. More...
 
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getCrsGraph () const
 Returns the CrsGraph associated with this matrix. More...
 
global_size_t getGlobalNumRows () const
 Number of global elements in the row map of this matrix. More...
 
global_size_t getGlobalNumCols () const
 Number of global columns in the matrix. More...
 
size_t getNodeNumRows () const
 Returns the number of matrix rows owned on the calling node. More...
 
size_t getNodeNumCols () const
 Returns the number of columns connected to the locally owned rows of this matrix. More...
 
global_size_t getGlobalNumEntries () const
 Returns the global number of entries in this matrix. More...
 
size_t getNodeNumEntries () const
 Returns the local number of entries in this matrix. More...
 
size_t getNumEntriesInLocalRow (LocalOrdinal localRow) const
 Returns the current number of entries on this node in the specified local row. More...
 
global_size_t getGlobalNumDiags () const
 Returns the number of global diagonal entries, based on global row/column index comparisons. More...
 
size_t getNodeNumDiags () const
 Returns the number of local diagonal entries, based on global row/column index comparisons. More...
 
size_t getGlobalMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on all nodes. More...
 
size_t getNodeMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on this node. More...
 
bool isLocallyIndexed () const
 If matrix indices are in the local range, this function returns true. Otherwise, this function returns false. More...
 
bool isGloballyIndexed () const
 If matrix indices are in the global range, this function returns true. Otherwise, this function returns false. More...
 
bool isFillComplete () const
 Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called. More...
 
bool isFillActive () const
 Returns true if the matrix is in edit mode. More...
 
ScalarTraits< Scalar >::magnitudeType getFrobeniusNorm () const
 Returns the Frobenius norm of the matrix. More...
 
bool supportsRowViews () const
 Returns true if getLocalRowView() and getGlobalRowView() are valid for this class. More...
 
void getLocalRowCopy (LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &Values, size_t &NumEntries) const
 Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calling routine. More...
 
void getGlobalRowView (GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const
 Extract a const, non-persisting view of global indices in a specified row of the matrix. More...
 
void getGlobalRowCopy (GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const ArrayView< Scalar > &values, size_t &numEntries) const
 Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage. More...
 
void getLocalRowView (LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const
 Extract a const, non-persisting view of local indices in a specified row of the matrix. More...
 

Methods implementing Operator

void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=ScalarTraits< Scalar >::one(), Scalar beta=ScalarTraits< Scalar >::zero()) const
 Computes the sparse matrix-multivector multiplication. More...
 
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getDomainMap () const
 Returns the Map associated with the domain of this operator. This will be null until fillComplete() is called. More...
 
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRangeMap () const
 Returns the Map associated with the range of this operator, which must be compatible with Y.getMap(). More...
 

Overridden from Teuchos::Describable

std::string description () const
 A simple one-line description of this object. More...
 
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. More...
 

Xpetra specific

bool hasMatrix () const
 Does this have an underlying matrix. More...
 
 TpetraBlockCrsMatrix (const Teuchos::RCP< Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &mtx)
 TpetraBlockCrsMatrix constructor to wrap a Tpetra::BlockCrsMatrix object. More...
 
RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_BlockCrsMatrix () const
 Get the underlying Tpetra matrix. More...
 
RCP< Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_BlockCrsMatrixNonConst () const
 Get the underlying Tpetra matrix. More...
 

Additional Inherited Members

- Public Types inherited from Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 
- Public Types inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 

Detailed Description

template<class Scalar, class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
class Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Definition at line 68 of file Xpetra_TpetraBlockCrsMatrix.hpp.

Member Typedef Documentation

◆ TpetraBlockCrsMatrixClass

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
typedef TpetraBlockCrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node> Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrixClass
private

Definition at line 73 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraVectorClass

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
typedef TpetraVector<Scalar,LocalOrdinal,GlobalOrdinal,Node> Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraVectorClass
private

Definition at line 74 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraImportClass

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
typedef TpetraImport<LocalOrdinal,GlobalOrdinal,Node> Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraImportClass
private

Definition at line 75 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraExportClass

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
typedef TpetraExport<LocalOrdinal,GlobalOrdinal,Node> Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraExportClass
private

Definition at line 76 of file Xpetra_TpetraBlockCrsMatrix.hpp.

Constructor & Destructor Documentation

◆ TpetraBlockCrsMatrix() [1/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
size_t  maxNumEntriesPerRow,
ProfileType  pftype = DynamicProfile,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor specifying fixed number of entries for each row (not implemented)

Definition at line 84 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [2/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
ProfileType  pftype = DynamicProfile,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor specifying (possibly different) number of entries in each row (not implemented)

Definition at line 88 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [3/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
size_t  maxNumEntriesPerRow,
ProfileType  pftype = DynamicProfile,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor specifying column Map and fixed number of entries for each row (not implemented)

Definition at line 92 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [4/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
ProfileType  pftype = DynamicProfile,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor specifying column Map and number of entries in each row (not implemented)

Definition at line 96 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [5/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &  graph,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor specifying a previously constructed graph ( not implemented )

Definition at line 100 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [6/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &  graph,
const LocalOrdinal  blockSize 
)
inline

Constructor specifying a previously constructed graph & blocksize.

Definition at line 105 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [7/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  sourceMatrix,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap = Teuchos::null,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor for a fused import ( not implemented )

Definition at line 112 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [8/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  sourceMatrix,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap = Teuchos::null,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inline

Constructor for a fused export (not implemented(.

Definition at line 120 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [9/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  sourceMatrix,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  RowImporter,
const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > >  DomainImporter,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
inline

Constructor for a fused import ( not implemented )

Definition at line 128 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [10/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  sourceMatrix,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  RowExporter,
const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > >  DomainExporter,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
inline

Constructor for a fused export (not implemented(.

Definition at line 137 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ ~TpetraBlockCrsMatrix()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
virtual Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~TpetraBlockCrsMatrix ( )
inlinevirtual

Destructor.

Definition at line 146 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [11/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  matrix)
inline

Deep copy constructor.

Definition at line 325 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ TpetraBlockCrsMatrix() [12/12]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraBlockCrsMatrix ( const Teuchos::RCP< Tpetra::Experimental::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  mtx)
inline

TpetraBlockCrsMatrix constructor to wrap a Tpetra::BlockCrsMatrix object.

Definition at line 399 of file Xpetra_TpetraBlockCrsMatrix.hpp.

Member Function Documentation

◆ insertGlobalValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::insertGlobalValues ( GlobalOrdinal  globalRow,
const ArrayView< const GlobalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
inlinevirtual

Insert matrix entries, using global IDs (not implemented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 154 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ insertLocalValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::insertLocalValues ( LocalOrdinal  localRow,
const ArrayView< const LocalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
inlinevirtual

Insert matrix entries, using local IDs (not implemented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 158 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ replaceGlobalValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceGlobalValues ( GlobalOrdinal  globalRow,
const ArrayView< const GlobalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
inlinevirtual

Replace matrix entries, using global IDs (not implemented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 162 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ replaceLocalValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceLocalValues ( LocalOrdinal  localRow,
const ArrayView< const LocalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
inlinevirtual

Replace matrix entries, using local IDs.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 166 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ setAllToScalar()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setAllToScalar ( const Scalar &  alpha)
inlinevirtual

Set all matrix entries equal to scalarThis.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 173 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ scale()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scale ( const Scalar &  alpha)
inlinevirtual

Scale the current values of a matrix, this = alpha*this (not implemented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 176 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ allocateAllValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::allocateAllValues ( size_t  numNonZeros,
ArrayRCP< size_t > &  rowptr,
ArrayRCP< LocalOrdinal > &  colind,
ArrayRCP< Scalar > &  values 
)
inlinevirtual

Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 181 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ setAllValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setAllValues ( const ArrayRCP< size_t > &  rowptr,
const ArrayRCP< LocalOrdinal > &  colind,
const ArrayRCP< Scalar > &  values 
)
inlinevirtual

Sets the 1D pointer arrays of the graph (not impelmented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 185 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getAllValues()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getAllValues ( ArrayRCP< const size_t > &  rowptr,
ArrayRCP< const LocalOrdinal > &  colind,
ArrayRCP< const Scalar > &  values 
) const
inlinevirtual

Gets the 1D pointer arrays of the graph (not implemented)

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 189 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ resumeFill()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::resumeFill ( const RCP< ParameterList > &  params = null)
inlinevirtual

◆ fillComplete() [1/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::fillComplete ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap,
const RCP< ParameterList > &  params = null 
)
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 201 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ fillComplete() [2/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::fillComplete ( const RCP< ParameterList > &  params = null)
inlinevirtual

Signal that data entry is complete.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 204 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ replaceDomainMapAndImporter()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceDomainMapAndImporter ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  newDomainMap,
Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &  newImporter 
)
inlinevirtual

Replaces the current domainMap and importer with the user-specified objects.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 208 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ expertStaticFillComplete()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::expertStaticFillComplete ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  domainMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rangeMap,
const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &  importer = Teuchos::null,
const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node > > &  exporter = Teuchos::null,
const RCP< ParameterList > &  params = Teuchos::null 
)
inlinevirtual

Expert static fill complete.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 212 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getRowMap()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRowMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 225 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getColMap()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getColMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 228 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getCrsGraph()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getCrsGraph ( ) const
inlinevirtual

Returns the CrsGraph associated with this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 231 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalNumRows()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumRows ( ) const
inlinevirtual

Number of global elements in the row map of this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 235 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalNumCols()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumCols ( ) const
inlinevirtual

Number of global columns in the matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 238 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNodeNumRows()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumRows ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 241 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNodeNumCols()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumCols ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 244 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalNumEntries()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumEntries ( ) const
inlinevirtual

Returns the global number of entries in this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 247 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNodeNumEntries()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumEntries ( ) const
inlinevirtual

Returns the local number of entries in this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 250 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNumEntriesInLocalRow()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNumEntriesInLocalRow ( LocalOrdinal  localRow) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 253 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalNumDiags()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumDiags ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 256 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNodeNumDiags()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumDiags ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 259 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalMaxNumRowEntries()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalMaxNumRowEntries ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 262 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getNodeMaxNumRowEntries()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeMaxNumRowEntries ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 265 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ isLocallyIndexed()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isLocallyIndexed ( ) const
inlinevirtual

If matrix indices are in the local range, this function returns true. Otherwise, this function returns false.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 268 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ isGloballyIndexed()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isGloballyIndexed ( ) const
inlinevirtual

If matrix indices are in the global range, this function returns true. Otherwise, this function returns false.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 271 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ isFillComplete()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isFillComplete ( ) const
inlinevirtual

Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 274 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ isFillActive()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isFillActive ( ) const
inlinevirtual

Returns true if the matrix is in edit mode.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 277 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getFrobeniusNorm()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
ScalarTraits< Scalar >::magnitudeType Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getFrobeniusNorm ( ) const
inlinevirtual

Returns the Frobenius norm of the matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 280 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ supportsRowViews()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::supportsRowViews ( ) const
inlinevirtual

Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 283 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getLocalRowCopy()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowCopy ( LocalOrdinal  LocalRow,
const ArrayView< LocalOrdinal > &  Indices,
const ArrayView< Scalar > &  Values,
size_t &  NumEntries 
) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 286 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalRowView()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowView ( GlobalOrdinal  GlobalRow,
ArrayView< const GlobalOrdinal > &  indices,
ArrayView< const Scalar > &  values 
) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 289 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getGlobalRowCopy()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowCopy ( GlobalOrdinal  GlobalRow,
const ArrayView< GlobalOrdinal > &  indices,
const ArrayView< Scalar > &  values,
size_t &  numEntries 
) const
inlinevirtual

Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 292 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getLocalRowView()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowView ( LocalOrdinal  LocalRow,
ArrayView< const LocalOrdinal > &  indices,
ArrayView< const Scalar > &  values 
) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 295 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ apply()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply ( const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  X,
MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  Y,
Teuchos::ETransp  mode = Teuchos::NO_TRANS,
Scalar  alpha = ScalarTraits< Scalar >::one(),
Scalar  beta = ScalarTraits< Scalar >::zero() 
) const
inlinevirtual

Computes the sparse matrix-multivector multiplication.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 303 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getDomainMap()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap ( ) const
inlinevirtual

Returns the Map associated with the domain of this operator. This will be null until fillComplete() is called.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 306 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getRangeMap()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap ( ) const
inlinevirtual

Returns the Map associated with the range of this operator, which must be compatible with Y.getMap().

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 309 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ description()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
std::string Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::description ( ) const
inlinevirtual

A simple one-line description of this object.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 317 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ describe()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::describe ( Teuchos::FancyOStream &  out,
const Teuchos::EVerbosityLevel  verbLevel = Teuchos::Describable::verbLevel_default 
) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 320 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getLocalDiagCopy() [1/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  diag) const
inlinevirtual

Get a copy of the diagonal entries owned by this node, with local row idices {.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 329 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getLocalDiagOffsets()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagOffsets ( Teuchos::ArrayRCP< size_t > &  offsets) const
inlinevirtual

Get offsets of the diagonal entries in the matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 337 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getLocalDiagCopy() [2/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  diag,
const Teuchos::ArrayView< const size_t > &  offsets 
) const
inlinevirtual

Get a copy of the diagonal entries owned by this node, with local row indices.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 343 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ leftScale()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::leftScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  x)
inlinevirtual

Left scale operator with given vector values.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 347 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ rightScale()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::rightScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  x)
inlinevirtual

Right scale operator with given vector values.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 352 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getMap()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getMap ( ) const
inlinevirtual

Implements DistObject interface.

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

Implements Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 360 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ doImport() [1/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  source,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
)
inlinevirtual

◆ doExport() [1/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
)
inlinevirtual

◆ doImport() [2/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  source,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
)
inlinevirtual

◆ doExport() [2/2]

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
)
inlinevirtual

◆ removeEmptyProcessesInPlace()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
void Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::removeEmptyProcessesInPlace ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  newMap)
inline

Definition at line 382 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ clone()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
template<class Node2 >
RCP<TpetraBlockCrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node2> > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::clone ( const RCP< Node2 > &  node2) const
inline

Definition at line 388 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ hasMatrix()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasMatrix ( ) const
inlinevirtual

Does this have an underlying matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 396 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getTpetra_BlockCrsMatrix()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
RCP<const Tpetra::Experimental::BlockCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getTpetra_BlockCrsMatrix ( ) const
inline

Get the underlying Tpetra matrix.

Definition at line 402 of file Xpetra_TpetraBlockCrsMatrix.hpp.

◆ getTpetra_BlockCrsMatrixNonConst()

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
RCP<Tpetra::Experimental::BlockCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getTpetra_BlockCrsMatrixNonConst ( ) const
inline

Get the underlying Tpetra matrix.

Definition at line 405 of file Xpetra_TpetraBlockCrsMatrix.hpp.

Member Data Documentation

◆ mtx_

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = KokkosClassic::DefaultNode::DefaultNodeType>
RCP< Tpetra::Experimental::BlockCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::mtx_
private

Definition at line 422 of file Xpetra_TpetraBlockCrsMatrix.hpp.


The documentation for this class was generated from the following file: