Xpetra  Version of the Day
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

#include <Xpetra_TpetraCrsMatrix_decl.hpp>

Inheritance diagram for Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >:
Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > Teuchos::Describable Teuchos::LabeledObject

Private Types

typedef TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > TpetraCrsMatrixClass
 
typedef TpetraVector TpetraVectorClass
 
typedef TpetraImport< LocalOrdinal, GlobalOrdinal, Node > TpetraImportClass
 
typedef TpetraExport< LocalOrdinal, GlobalOrdinal, Node > TpetraExportClass
 

Xpetra specific

RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > mtx_
 
bool hasMatrix () const
 Does this have an underlying matrix. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &mtx)
 TpetraCrsMatrix constructor to wrap a Tpetra::CrsMatrix object. More...
 
RCP< const Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrix () const
 Get the underlying Tpetra matrix. More...
 
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_CrsMatrixNonConst () const
 Get the underlying Tpetra matrix. More...
 
void residual (const MultiVector &X, const MultiVector &B, MultiVector &R) const
 Compute a residual R = B - (*this) * X. More...
 

Constructor/Destructor Methods

 TpetraCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying fixed number of entries for each row. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying (possibly different) number of entries in each row. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, size_t maxNumEntriesPerRow, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying column Map and fixed number of entries for each row. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying column Map and number of entries in each row. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor specifying a previously constructed graph. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const CrsMatrix > &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. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const CrsMatrix > &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. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const CrsMatrix > &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. More...
 
 TpetraCrsMatrix (const Teuchos::RCP< const CrsMatrix > &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. More...
 
virtual ~TpetraCrsMatrix ()
 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. More...
 
void insertLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using local IDs. More...
 
void replaceGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Replace matrix entries, using global IDs. 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. 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. 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. More...
 
void getAllValues (ArrayRCP< Scalar > &values)
 Gets the 1D pointer arrays of the graph. More...
 
bool haveGlobalConstants () const
 Returns true if globalConstants have been computed; false otherwise. 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...
 
size_t getNumEntriesInGlobalRow (GlobalOrdinal globalRow) const
 Returns the current number of entries in the (locally owned) global row. 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 &X, MultiVector &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...
 
void apply (const MultiVector &X, MultiVector &Y, Teuchos::ETransp mode, Scalar alpha, Scalar beta, bool sumInterfaceValues, const RCP< Xpetra::Import< LocalOrdinal, GlobalOrdinal, Node > > &regionInterfaceImporter, const Teuchos::ArrayRCP< LocalOrdinal > &regionInterfaceLIDs) const
 Computes the matrix-multivector multiplication for region layout matrices. 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...
 

Overridden from Teuchos::LabeledObject

void setObjectLabel (const std::string &objectLabel)
 
 TpetraCrsMatrix (const TpetraCrsMatrix &matrix)
 Deep copy constructor. More...
 
void getLocalDiagCopy (Vector &diag) const
 Get a copy of the diagonal entries owned by this node, with local row indices. More...
 
void getLocalDiagOffsets (Teuchos::ArrayRCP< size_t > &offsets) const
 Get offsets of the diagonal entries in the matrix. More...
 
void getLocalDiagCopy (Vector &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 replaceDiag (const Vector &diag)
 Replace the diagonal entries of the matrix. More...
 
void leftScale (const Vector &x)
 Left scale operator with given vector values. More...
 
void rightScale (const Vector &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)
 

Additional Inherited Members

- Public Types inherited from Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef KokkosClassic::DefaultNode::DefaultNodeType node_type
 
- Public Types inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef KokkosClassic::DefaultNode::DefaultNodeType node_type
 
- Public Member Functions inherited from Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >
virtual ~CrsMatrix ()
 Destructor. More...
 
virtual void fillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &rangeMap, const RCP< ParameterList > &params=null)=0
 Signal that data entry is complete, specifying domain and range maps. More...
 
virtual void replaceDomainMapAndImporter (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &newImporter)=0
 Replaces the current domainMap and importer with the user-specified objects. More...
 
virtual void expertStaticFillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &rangeMap, const RCP< const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &importer=Teuchos::null, const RCP< const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)=0
 Expert static fill complete. More...
 
virtual void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &diag) const=0
 Get a copy of the diagonal entries owned by this node, with local row indices. More...
 
virtual void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &diag, const Teuchos::ArrayView< const size_t > &offsets) const=0
 Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets. More...
 
virtual void replaceDiag (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &diag)=0
 Replace the diagonal entries of the matrix. More...
 
virtual void leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &x)=0
 Left scale matrix using the given vector entries. More...
 
virtual void rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &x)=0
 Right scale matrix using the given vector entries. More...
 
virtual void removeEmptyProcessesInPlace (const RCP< const Map< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &newMap)=0
 
virtual void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=ScalarTraits< Scalar >::one(), Scalar beta=ScalarTraits< Scalar >::zero()) const=0
 Computes the sparse matrix-multivector multiplication. More...
 
virtual void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &Y, Teuchos::ETransp mode, Scalar alpha, Scalar beta, bool sumInterfaceValues, const RCP< Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > > &regionInterfaceImporter, const Teuchos::ArrayRCP< LocalOrdinal > &regionInterfaceLIDs) const=0
 Computes the sparse matrix-multivector multiplication for region layout matrices. More...
 
virtual void residual (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &X, const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &B, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &R) const=0
 Compute a residual R = B - (*this) * X. More...
 
- Public Member Functions inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >
virtual ~RowMatrix ()
 Destructor. More...
 
- Public Member Functions inherited from Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >
virtual ~DistObject ()
 Destructor. More...
 
virtual void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)=0
 Import data into this object using an Import object ("forward mode"). More...
 
virtual void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)=0
 Import data into this object using an Export object ("reverse mode"). More...
 
virtual void beginImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)
 Import data into this object using an Import object ("forward mode"). More...
 
virtual void beginImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)
 Import data into this object using an Export object ("reverse mode"). More...
 
virtual void endImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)
 Import data into this object using an Import object ("forward mode"). More...
 
virtual void endImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)
 Import data into this object using an Export object ("reverse mode"). More...
 
virtual void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)=0
 Export data into this object using an Export object ("forward mode"). More...
 
virtual void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)=0
 Export data into this object using an Import object ("reverse mode"). More...
 
virtual void beginExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)
 Export data into this object using an Export object ("forward mode"). More...
 
virtual void beginExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)
 Export data into this object using an Import object ("reverse mode"). More...
 
virtual void endExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Export< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &exporter, CombineMode CM)
 Export data into this object using an Export object ("forward mode"). More...
 
virtual void endExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &source, const Import< LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType > &importer, CombineMode CM)
 Export data into this object using an Import object ("reverse mode"). More...
 
- Public Member Functions inherited from Teuchos::Describable
void describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const
 
virtual ~Describable ()
 
DescribableStreamManipulatorState describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default)
 
std::ostream & operator<< (std::ostream &os, const DescribableStreamManipulatorState &d)
 
void describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const
 
virtual ~Describable ()
 
- Public Member Functions inherited from Teuchos::LabeledObject
 LabeledObject ()
 
virtual ~LabeledObject ()
 
virtual std::string getObjectLabel () const
 
- Static Public Attributes inherited from Teuchos::Describable
static const EVerbosityLevel verbLevel_default
 

Detailed Description

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

Definition at line 75 of file Xpetra_TpetraCrsMatrix_decl.hpp.

Member Typedef Documentation

◆ TpetraCrsMatrixClass

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = KokkosClassic::DefaultNode::DefaultNodeType>
typedef TpetraCrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node> Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrixClass
private

Definition at line 81 of file Xpetra_TpetraCrsMatrix_decl.hpp.

◆ TpetraVectorClass

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

Definition at line 82 of file Xpetra_TpetraCrsMatrix_decl.hpp.

◆ TpetraImportClass

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

Definition at line 83 of file Xpetra_TpetraCrsMatrix_decl.hpp.

◆ TpetraExportClass

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

Definition at line 84 of file Xpetra_TpetraCrsMatrix_decl.hpp.

Constructor & Destructor Documentation

◆ TpetraCrsMatrix() [1/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
size_t  maxNumEntriesPerRow,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)

Constructor specifying fixed number of entries for each row.

Definition at line 56 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [2/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)

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

Definition at line 60 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [3/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
size_t  maxNumEntriesPerRow,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)

Constructor specifying column Map and fixed number of entries for each row.

Definition at line 64 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [4/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  colMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)

Constructor specifying column Map and number of entries in each row.

Definition at line 68 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [5/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &  graph,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)

Constructor specifying a previously constructed graph.

Definition at line 72 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [6/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const CrsMatrix > &  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.

Definition at line 78 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [7/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const CrsMatrix > &  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.

Definition at line 98 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [8/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const CrsMatrix > &  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.

Definition at line 115 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [9/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< const CrsMatrix > &  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.

Definition at line 136 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ ~TpetraCrsMatrix()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~TpetraCrsMatrix
virtual

Destructor.

Definition at line 190 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [10/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  matrix)

Deep copy constructor.

Definition at line 437 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ TpetraCrsMatrix() [11/11]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraCrsMatrix ( const Teuchos::RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  mtx)

TpetraCrsMatrix constructor to wrap a Tpetra::CrsMatrix object.

Definition at line 537 of file Xpetra_TpetraCrsMatrix_def.hpp.

Member Function Documentation

◆ insertGlobalValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::insertGlobalValues ( GlobalOrdinal  globalRow,
const ArrayView< const GlobalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
virtual

◆ insertLocalValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::insertLocalValues ( LocalOrdinal  localRow,
const ArrayView< const LocalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
virtual

◆ replaceGlobalValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceGlobalValues ( GlobalOrdinal  globalRow,
const ArrayView< const GlobalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
virtual

◆ replaceLocalValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceLocalValues ( LocalOrdinal  localRow,
const ArrayView< const LocalOrdinal > &  cols,
const ArrayView< const Scalar > &  vals 
)
virtual

◆ setAllToScalar()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setAllToScalar ( const Scalar &  alpha)
virtual

◆ scale()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scale ( const Scalar &  alpha)
virtual

Scale the current values of a matrix, this = alpha*this.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 221 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ allocateAllValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::allocateAllValues ( size_t  numNonZeros,
ArrayRCP< size_t > &  rowptr,
ArrayRCP< LocalOrdinal > &  colind,
ArrayRCP< Scalar > &  values 
)
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 224 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ setAllValues()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setAllValues ( const ArrayRCP< size_t > &  rowptr,
const ArrayRCP< LocalOrdinal > &  colind,
const ArrayRCP< Scalar > &  values 
)
virtual

◆ getAllValues() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getAllValues ( ArrayRCP< const size_t > &  rowptr,
ArrayRCP< const LocalOrdinal > &  colind,
ArrayRCP< const Scalar > &  values 
) const
virtual

◆ getAllValues() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getAllValues ( ArrayRCP< Scalar > &  values)
virtual

◆ haveGlobalConstants()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::haveGlobalConstants
virtual

Returns true if globalConstants have been computed; false otherwise.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 240 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ resumeFill()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::resumeFill ( const RCP< ParameterList > &  params = null)
virtual

◆ fillComplete() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< 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 
)

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

Definition at line 247 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ fillComplete() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::fillComplete ( const RCP< ParameterList > &  params = null)
virtual

◆ replaceDomainMapAndImporter()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::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.

Definition at line 254 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ expertStaticFillComplete()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< 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 
)

Expert static fill complete.

Definition at line 262 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getRowMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRowMap
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 284 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getColMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getColMap
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 287 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getCrsGraph()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getCrsGraph
virtual

◆ getGlobalNumRows()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
global_size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumRows
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 293 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getGlobalNumCols()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
global_size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumCols
virtual

◆ getNodeNumRows()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumRows
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 299 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getNodeNumCols()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumCols
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 302 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getGlobalNumEntries()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
global_size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumEntries
virtual

Returns the global number of entries in this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 305 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getNodeNumEntries()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumEntries
virtual

Returns the local number of entries in this matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 308 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getNumEntriesInLocalRow()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNumEntriesInLocalRow ( LocalOrdinal  localRow) const
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 311 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getNumEntriesInGlobalRow()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNumEntriesInGlobalRow ( GlobalOrdinal  globalRow) const
virtual

Returns the current number of entries in the (locally owned) global row.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 314 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getGlobalMaxNumRowEntries()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalMaxNumRowEntries
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 317 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getNodeMaxNumRowEntries()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeMaxNumRowEntries
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 320 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ isLocallyIndexed()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isLocallyIndexed
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 323 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ isGloballyIndexed()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isGloballyIndexed
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 326 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ isFillComplete()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isFillComplete
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 329 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ isFillActive()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isFillActive
virtual

◆ getFrobeniusNorm()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
ScalarTraits< Scalar >::magnitudeType Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getFrobeniusNorm
virtual

◆ supportsRowViews()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::supportsRowViews
virtual

◆ getLocalRowCopy()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowCopy ( LocalOrdinal  LocalRow,
const ArrayView< LocalOrdinal > &  Indices,
const ArrayView< Scalar > &  Values,
size_t &  NumEntries 
) const
virtual

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, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 341 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getGlobalRowView()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowView ( GlobalOrdinal  GlobalRow,
ArrayView< const GlobalOrdinal > &  indices,
ArrayView< const Scalar > &  values 
) const
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 368 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getGlobalRowCopy()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowCopy ( GlobalOrdinal  GlobalRow,
const ArrayView< GlobalOrdinal > &  indices,
const ArrayView< Scalar > &  values,
size_t &  numEntries 
) const
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 354 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getLocalRowView()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowView ( LocalOrdinal  LocalRow,
ArrayView< const LocalOrdinal > &  indices,
ArrayView< const Scalar > &  values 
) const
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 379 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ apply() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply ( const MultiVector X,
MultiVector Y,
Teuchos::ETransp  mode = Teuchos::NO_TRANS,
Scalar  alpha = ScalarTraits< Scalar >::one(),
Scalar  beta = ScalarTraits< Scalar >::zero() 
) const

Computes the sparse matrix-multivector multiplication.

Definition at line 390 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ apply() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply ( const MultiVector X,
MultiVector Y,
Teuchos::ETransp  mode,
Scalar  alpha,
Scalar  beta,
bool  sumInterfaceValues,
const RCP< Xpetra::Import< LocalOrdinal, GlobalOrdinal, Node > > &  regionInterfaceImporter,
const Teuchos::ArrayRCP< LocalOrdinal > &  regionInterfaceLIDs 
) const

Computes the matrix-multivector multiplication for region layout matrices.

Definition at line 393 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getDomainMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 416 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getRangeMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap
virtual

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

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 419 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ description()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
std::string Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::description
virtual

A simple one-line description of this object.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 422 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ describe()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::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.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 425 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ setObjectLabel()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::setObjectLabel ( const std::string &  objectLabel)
virtual

◆ getLocalDiagCopy() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagCopy ( Vector diag) const

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

Definition at line 441 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getLocalDiagOffsets()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagOffsets ( Teuchos::ArrayRCP< size_t > &  offsets) const
virtual

Get offsets of the diagonal entries in the matrix.

Implements Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 448 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getLocalDiagCopy() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagCopy ( Vector diag,
const Teuchos::ArrayView< const size_t > &  offsets 
) const

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

Definition at line 454 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ replaceDiag()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::replaceDiag ( const Vector diag)

Replace the diagonal entries of the matrix.

Definition at line 460 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ leftScale()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::leftScale ( const Vector x)

Left scale operator with given vector values.

Definition at line 466 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ rightScale()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::rightScale ( const Vector x)

Right scale operator with given vector values.

Definition at line 472 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getMap
virtual

Implements DistObject interface.

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

Implements Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, KokkosClassic::DefaultNode::DefaultNodeType >.

Definition at line 478 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ doImport() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  source,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
)

Import.

Definition at line 481 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ doExport() [1/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
CombineMode  CM 
)

Export.

Definition at line 493 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ doImport() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  source,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
)

Import (using an Exporter).

Definition at line 504 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ doExport() [2/2]

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &  dest,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
CombineMode  CM 
)

Export (using an Importer).

Definition at line 515 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ removeEmptyProcessesInPlace()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::removeEmptyProcessesInPlace ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  newMap)

Definition at line 526 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ hasMatrix()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasMatrix
virtual

◆ getTpetra_CrsMatrix()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< const Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getTpetra_CrsMatrix

Get the underlying Tpetra matrix.

Definition at line 540 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ getTpetra_CrsMatrixNonConst()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getTpetra_CrsMatrixNonConst

Get the underlying Tpetra matrix.

Definition at line 544 of file Xpetra_TpetraCrsMatrix_def.hpp.

◆ residual()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::residual ( const MultiVector X,
const MultiVector B,
MultiVector R 
) const

Compute a residual R = B - (*this) * X.

Definition at line 548 of file Xpetra_TpetraCrsMatrix_def.hpp.

Member Data Documentation

◆ mtx_

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = KokkosClassic::DefaultNode::DefaultNodeType>
RCP< Tpetra::CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::mtx_
private

Definition at line 464 of file Xpetra_TpetraCrsMatrix_decl.hpp.


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