Xpetra Version of the Day
Loading...
Searching...
No Matches
Xpetra::EpetraCrsMatrixT< long long, EpetraNode > Class Reference

#include <Xpetra_EpetraCrsMatrix.hpp>

Inheritance diagram for Xpetra::EpetraCrsMatrixT< long long, EpetraNode >:
Xpetra::CrsMatrix< double, int, long long, EpetraNode > Xpetra::CrsMatrix< double, int, long long, EpetraNode > Xpetra::RowMatrix< double, int, long long, EpetraNode > Xpetra::DistObject< char, int, long long, EpetraNode > Xpetra::RowMatrix< double, int, long long, EpetraNode > Xpetra::DistObject< char, int, long long, EpetraNode > Xpetra::Operator< double, int, long long, EpetraNode > Teuchos::Describable Xpetra::Operator< double, int, long long, EpetraNode > Teuchos::Describable Teuchos::Describable Teuchos::LabeledObject Teuchos::Describable Teuchos::LabeledObject Teuchos::LabeledObject Teuchos::LabeledObject

Public Member Functions

local_matrix_type getLocalMatrixDevice () const
local_matrix_type::HostMirror getLocalMatrixHost () const
virtual void getLocalRowCopy (int LocalRow, const ArrayView< int > &Indices, const ArrayView< double > &Values, size_t &NumEntries) const=0
 Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calling routine.
virtual void residual (const MultiVector< double, int, long long, EpetraNode > &X, const MultiVector< double, int, long long, EpetraNode > &B, MultiVector< double, int, long long, EpetraNode > &R) const=0
 Compute a residual R = B - (*this) * X.
virtual ~CrsMatrix ()
 Destructor.
virtual void insertGlobalValues (long long globalRow, const ArrayView< const long long > &cols, const ArrayView< const double > &vals)=0
 Insert matrix entries, using global IDs.
virtual void insertLocalValues (int localRow, const ArrayView< const int > &cols, const ArrayView< const double > &vals)=0
 Insert matrix entries, using local IDs.
virtual void replaceGlobalValues (long long globalRow, const ArrayView< const long long > &cols, const ArrayView< const double > &vals)=0
 Replace matrix entries, using global IDs.
virtual void replaceLocalValues (int localRow, const ArrayView< const int > &cols, const ArrayView< const double > &vals)=0
 Replace matrix entries, using local IDs.
virtual void setAllToScalar (const double &alpha)=0
 Set all matrix entries equal to scalarThis.
virtual void scale (const double &alpha)=0
 Scale the current values of a matrix, this = alpha*this.
virtual void allocateAllValues (size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< int > &colind, ArrayRCP< double > &values)=0
 Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.
virtual void setAllValues (const ArrayRCP< size_t > &rowptr, const ArrayRCP< int > &colind, const ArrayRCP< double > &values)=0
 Sets the 1D pointer arrays of the graph.
virtual void getAllValues (ArrayRCP< const size_t > &rowptr, ArrayRCP< const int > &colind, ArrayRCP< const double > &values) const=0
 Gets the 1D pointer arrays of the graph.
virtual void fillComplete (const RCP< const Map< int, long long, EpetraNode > > &domainMap, const RCP< const Map< int, long long, EpetraNode > > &rangeMap, const RCP< ParameterList > &params=null)=0
 Signal that data entry is complete, specifying domain and range maps.
virtual void replaceDomainMapAndImporter (const Teuchos::RCP< const Map< int, long long, EpetraNode > > &newDomainMap, Teuchos::RCP< const Import< int, long long, EpetraNode > > &newImporter)=0
 Replaces the current domainMap and importer with the user-specified objects.
virtual void expertStaticFillComplete (const RCP< const Map< int, long long, EpetraNode > > &domainMap, const RCP< const Map< int, long long, EpetraNode > > &rangeMap, const RCP< const Import< int, long long, EpetraNode > > &importer=Teuchos::null, const RCP< const Export< int, long long, EpetraNode > > &exporter=Teuchos::null, const RCP< ParameterList > &params=Teuchos::null)=0
 Expert static fill complete.
virtual size_t getNumEntriesInLocalRow (int localRow) const=0
 Returns the current number of entries on this node in the specified local row.
virtual void getGlobalRowView (long long GlobalRow, ArrayView< const long long > &indices, ArrayView< const double > &values) const=0
 Extract a const, non-persisting view of global indices in a specified row of the matrix.
virtual void getGlobalRowCopy (long long GlobalRow, const ArrayView< long long > &indices, const ArrayView< double > &values, size_t &numEntries) const=0
 Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
virtual void getLocalRowView (int LocalRow, ArrayView< const int > &indices, ArrayView< const double > &values) const=0
 Extract a const, non-persisting view of local indices in a specified row of the matrix.
virtual void getLocalDiagCopy (Vector< double, int, long long, EpetraNode > &diag) const=0
 Get a copy of the diagonal entries owned by this node, with local row indices.
virtual void replaceDiag (const Vector< double, int, long long, EpetraNode > &diag)=0
 Replace the diagonal entries of the matrix.
virtual void leftScale (const Vector< double, int, long long, EpetraNode > &x)=0
 Left scale matrix using the given vector entries.
virtual void rightScale (const Vector< double, int, long long, EpetraNode > &x)=0
 Right scale matrix using the given vector entries.
virtual void removeEmptyProcessesInPlace (const RCP< const Map< int, long long, EpetraNode > > &newMap)=0
virtual void apply (const MultiVector< double, int, long long, EpetraNode > &X, MultiVector< double, int, long long, EpetraNode > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, double alpha=ScalarTraits< double >::one(), double beta=ScalarTraits< double >::zero()) const=0
 Computes the sparse matrix-multivector multiplication.
virtual ~RowMatrix ()
 Destructor.
Public Member Functions inherited from Xpetra::Operator< double, int, long long, EpetraNode >
virtual ~Operator ()
virtual void apply (const mv_type &X, mv_type &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, double alpha=Teuchos::ScalarTraits< double >::one(), double beta=Teuchos::ScalarTraits< double >::zero()) const=0
 Computes the operator-multivector application.
virtual bool hasTransposeApply () const
 Whether this operator supports applying the transpose or conjugate transpose.
virtual void removeEmptyProcessesInPlace (const RCP< const map_type > &)
virtual void residual (const mv_type &X, const mv_type &B, mv_type &R) const=0
 Compute a residual R = B - (*this) * X.
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
virtual ~DistObject ()
 Destructor.
virtual void doImport (const DistObject< char, int, long long, EpetraNode > &source, const Import< int, long long, EpetraNode > &importer, CombineMode CM)=0
 Import data into this object using an Import object ("forward mode").
virtual void beginImport (const DistObject< char, int, long long, EpetraNode > &source, const Import< int, long long, EpetraNode > &importer, CombineMode CM)
 Import data into this object using an Import object ("forward mode").
virtual void endImport (const DistObject< char, int, long long, EpetraNode > &source, const Import< int, long long, EpetraNode > &importer, CombineMode CM)
 Import data into this object using an Import object ("forward mode").
virtual void doExport (const DistObject< char, int, long long, EpetraNode > &source, const Export< int, long long, EpetraNode > &exporter, CombineMode CM)=0
 Export data into this object using an Export object ("forward mode").
virtual void beginExport (const DistObject< char, int, long long, EpetraNode > &source, const Export< int, long long, EpetraNode > &exporter, CombineMode CM)
 Export data into this object using an Export object ("forward mode").
virtual void endExport (const DistObject< char, int, long long, EpetraNode > &source, const Export< int, long long, EpetraNode > &exporter, CombineMode CM)
 Export data into this object using an Export object ("forward mode").

Private Types

typedef long long GlobalOrdinal
typedef EpetraNode Node
typedef CrsMatrix< double, int, GlobalOrdinal, Node >::scalar_type Scalar
typedef CrsMatrix< double, int, GlobalOrdinal, Node >::local_ordinal_type LocalOrdinal
typedef Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type local_matrix_type
typedef Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::node_type node_type

Xpetra specific

RCP< Epetra_CrsMatrixmtx_
bool isFillResumed_
bool hasMatrix () const
 Does this have an underlying matrix.
 EpetraCrsMatrixT (const Teuchos::RCP< Epetra_CrsMatrix > &mtx)
 EpetraCrsMatrixT constructor to wrap a Epetra_CrsMatrix object.
RCP< const Epetra_CrsMatrixgetEpetra_CrsMatrix () const
 Get the underlying Epetra matrix.
RCP< Epetra_CrsMatrixgetEpetra_CrsMatrixNonConst () const
 Get the underlying Epetra matrix.
local_matrix_type getLocalMatrix () const
 Compatibility layer for accessing the matrix data through a Kokkos interface.
void setAllValues (const typename local_matrix_type::row_map_type &ptr, const typename local_matrix_type::StaticCrsGraphType::entries_type::non_const_type &ind, const typename local_matrix_type::values_type &val)
LocalOrdinal GetStorageBlockSize () const
 Returns the block size of the storage mechanism, which is usually 1, except for Tpetra::BlockCrsMatrix.
void residual (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &B, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &R) const

Constructor/Destructor Methods

 EpetraCrsMatrixT (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, size_t maxNumEntriesPerRow, const Teuchos::RCP< Teuchos::ParameterList > &=Teuchos::null)
 Constructor specifying fixed number of entries for each row.
 EpetraCrsMatrixT (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, const Teuchos::RCP< Teuchos::ParameterList > &=Teuchos::null)
 Constructor specifying (possibly different) number of entries in each row.
 EpetraCrsMatrixT (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 > &=Teuchos::null)
 Constructor specifying column Map and fixed number of entries for each row.
 EpetraCrsMatrixT (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 > &=Teuchos::null)
 Constructor specifying column Map and number of entries in each row.
 EpetraCrsMatrixT (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph, const Teuchos::RCP< Teuchos::ParameterList > &=Teuchos::null)
 Constructor specifying a previously constructed graph.
 EpetraCrsMatrixT (const Teuchos::RCP< const CrsMatrix< 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.
 EpetraCrsMatrixT (const Teuchos::RCP< const CrsMatrix< 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.
 EpetraCrsMatrixT (const Teuchos::RCP< const CrsMatrix< 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)
 EpetraCrsMatrixT (const Teuchos::RCP< const CrsMatrix< 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)
 EpetraCrsMatrixT (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, const local_matrix_type &lclMatrix, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 Constructor specifying column Map and a local matrix, which the resulting CrsMatrix views.
 EpetraCrsMatrixT (const local_matrix_type &lclMatrix, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &colMap, 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=null)
virtual ~EpetraCrsMatrixT ()
 Destructor.

Insertion/Removal Methods

void insertGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using global IDs.
void insertLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using local IDs.
void replaceGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &indices, const ArrayView< const Scalar > &values)
 Replace matrix entries, using global IDs.
void replaceLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &indices, const ArrayView< const Scalar > &values)
 Replace matrix entries, using local IDs.
void setAllToScalar (const Scalar &alpha)
 Set all matrix entries equal to scalarThis.
void scale (const Scalar &alpha)
 Scale the current values of a matrix, this = alpha*this.
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.
void setAllValues (const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)
 Sets the 1D pointer arrays of the graph.
void getAllValues (ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
 Gets the 1D pointer arrays of the graph.
void getAllValues (ArrayRCP< Scalar > &values)
 Gets the 1D pointer arrays of the graph.
bool haveGlobalConstants () const
 Returns true if globalConstants have been computed; false otherwise.
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 > &=Teuchos::null)
 Expert static fill complete.

Transformational Methods

void resumeFill (const RCP< ParameterList > &=Teuchos::null)
void fillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > &params=Teuchos::null)
 Signal that data entry is complete, specifying domain and range maps.
void fillComplete (const RCP< ParameterList > &params=Teuchos::null)
 Signal that data entry is complete.
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.

Methods implementing RowMatrix

const RCP< const Comm< int > > getComm () const
 Returns the communicator.
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getRowMap () const
 Returns the Map that describes the row distribution in this matrix.
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getColMap () const
 Returns the Map that describes the column distribution in this matrix.
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > getCrsGraph () const
 Returns the CrsGraph associated with this matrix.
global_size_t getGlobalNumRows () const
 Number of global elements in the row map of this matrix.
global_size_t getGlobalNumCols () const
 Number of global columns in the matrix.
size_t getLocalNumRows () const
 Returns the number of matrix rows owned on the calling node.
size_t getLocalNumCols () const
 Returns the number of columns connected to the locally owned rows of this matrix.
global_size_t getGlobalNumEntries () const
 Returns the global number of entries in this matrix.
size_t getLocalNumEntries () const
 Returns the local number of entries in this matrix.
size_t getNumEntriesInLocalRow (LocalOrdinal localRow) const
 Returns the current number of entries on this node in the specified local row.
size_t getNumEntriesInGlobalRow (GlobalOrdinal globalRow) const
 Returns the current number of entries on this node in the specified (locally owned) global row.
size_t getGlobalMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on all nodes.
size_t getLocalMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on this node.
bool isLocallyIndexed () const
 If matrix indices are in the local range, this function returns true. Otherwise, this function returns false.
bool isGloballyIndexed () const
 If matrix indices are in the global range, this function returns true. Otherwise, this function returns false.
bool isFillComplete () const
 Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.
bool isFillActive () const
 Returns true if the matrix is in edit mode.
ScalarTraits< Scalar >::magnitudeType getFrobeniusNorm () const
 Returns the Frobenius norm of the matrix.
bool supportsRowViews () const
 Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.
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.
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.
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.
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.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
 Get a copy of the diagonal entries owned by this node, with local row indices.
void getLocalDiagOffsets (Teuchos::ArrayRCP< size_t > &) const
 Get offsets of the diagonal entries in the matrix.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &, const Teuchos::ArrayView< const size_t > &) const
 Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &, const Kokkos::View< const size_t *, typename Node::device_type, Kokkos::MemoryUnmanaged > &) const
 Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets.
void replaceDiag (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag)
 Replace the diagonal entries of the matrix.
void leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
void rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)

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.
void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode, Scalar alpha, Scalar beta, bool sumInterfaceValues, const RCP< Import< LocalOrdinal, GlobalOrdinal, Node > > &regionInterfaceImporter, const Teuchos::ArrayRCP< LocalOrdinal > &regionInterfaceLIDs) const
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.
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().

Overridden from Teuchos::Describable

std::string description () const
 A simple one-line description of this object.
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
 Print the object with some verbosity level to an FancyOStream object.
void setObjectLabel (const std::string &objectLabel)
 EpetraCrsMatrixT (const EpetraCrsMatrixT &matrix)
 Deep copy constructor.
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getMap () const
 Implements DistObject interface.
void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Import.
void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)
 Export.
void doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Import (using an Exporter).
void doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &dest, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)
 Export (using an Importer).
void removeEmptyProcessesInPlace (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)

Additional Inherited Members

Public Types inherited from Xpetra::CrsMatrix< double, int, long long, EpetraNode >
typedef double scalar_type
typedef int local_ordinal_type
typedef long long global_ordinal_type
typedef EpetraNode node_type
using impl_scalar_type
using execution_space
using local_graph_type
using local_matrix_type
 The specialization of Kokkos::CrsMatrix that represents the part of the sparse matrix on each MPI process. The same as for Tpetra.
Public Types inherited from Xpetra::RowMatrix< double, int, long long, EpetraNode >
typedef double scalar_type
typedef int local_ordinal_type
typedef long long global_ordinal_type
typedef EpetraNode node_type
typedef double scalar_type
 The type of the entries of the input and output multivectors.
typedef int local_ordinal_type
 The local index type.
typedef long long global_ordinal_type
 The global index type.
typedef EpetraNode node_type
 The Kokkos Node type.
Static Public Attributes inherited from Teuchos::Describable
static const EVerbosityLevel verbLevel_default

Detailed Description

Definition at line 1358 of file Xpetra_EpetraCrsMatrix.hpp.

Member Typedef Documentation

◆ GlobalOrdinal

typedef long long Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::GlobalOrdinal
private

Definition at line 1360 of file Xpetra_EpetraCrsMatrix.hpp.

◆ Node

typedef EpetraNode Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::Node
private

Definition at line 1361 of file Xpetra_EpetraCrsMatrix.hpp.

◆ Scalar

typedef CrsMatrix<double,int,GlobalOrdinal,Node>::scalar_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::Scalar
private

Definition at line 1362 of file Xpetra_EpetraCrsMatrix.hpp.

◆ LocalOrdinal

typedef CrsMatrix<double,int,GlobalOrdinal,Node>::local_ordinal_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::LocalOrdinal
private

Definition at line 1363 of file Xpetra_EpetraCrsMatrix.hpp.

◆ local_matrix_type

typedef Xpetra::CrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>::local_matrix_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::local_matrix_type
private

Definition at line 1367 of file Xpetra_EpetraCrsMatrix.hpp.

◆ node_type

typedef Xpetra::CrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>::node_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::node_type
private

Definition at line 1368 of file Xpetra_EpetraCrsMatrix.hpp.

Constructor & Destructor Documentation

◆ EpetraCrsMatrixT() [1/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & rowMap,
size_t maxNumEntriesPerRow,
const Teuchos::RCP< Teuchos::ParameterList > & = Teuchos::null )
inline

Constructor specifying fixed number of entries for each row.

Definition at line 1376 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [2/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & rowMap,
const ArrayRCP< const size_t > & NumEntriesPerRowToAlloc,
const Teuchos::RCP< Teuchos::ParameterList > & = Teuchos::null )
inline

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

Definition at line 1381 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [3/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( 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 > & = Teuchos::null )
inline

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

Definition at line 1388 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [4/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( 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 > & = Teuchos::null )
inline

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

Definition at line 1393 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [5/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > & graph,
const Teuchos::RCP< Teuchos::ParameterList > & = Teuchos::null )
inline

Constructor specifying a previously constructed graph.

Definition at line 1400 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [6/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const CrsMatrix< 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.

Definition at line 1405 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [7/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const CrsMatrix< 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.

Definition at line 1426 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [8/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const CrsMatrix< 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

Definition at line 1445 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [9/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const CrsMatrix< 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

Definition at line 1467 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [10/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & colMap,
const local_matrix_type & lclMatrix,
const Teuchos::RCP< Teuchos::ParameterList > & params = null )
inline

Constructor specifying column Map and a local matrix, which the resulting CrsMatrix views.

Unlike most other CrsMatrix constructors, successful completion of this constructor will result in a fill-complete matrix.

Parameters
rowMap[in] Distribution of rows of the matrix.
colMap[in] Distribution of columns of the matrix.
lclMatrix[in] A local CrsMatrix containing all local matrix values as well as a local graph. The graph's local row indices must come from the specified row Map, and its local column indices must come from the specified column Map.
params[in/out] Optional list of parameters. If not null, any missing parameters will be filled in with their default values.

Definition at line 1509 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [11/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const local_matrix_type & lclMatrix,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & colMap,
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 = null )
inline

Definition at line 1515 of file Xpetra_EpetraCrsMatrix.hpp.

◆ ~EpetraCrsMatrixT()

virtual Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::~EpetraCrsMatrixT ( )
inlinevirtual

Destructor.

Definition at line 1579 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [12/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const EpetraCrsMatrixT< long long, EpetraNode > & matrix)
inline

Deep copy constructor.

Definition at line 2269 of file Xpetra_EpetraCrsMatrix.hpp.

◆ EpetraCrsMatrixT() [13/13]

Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::EpetraCrsMatrixT ( const Teuchos::RCP< Epetra_CrsMatrix > & mtx)
inline

EpetraCrsMatrixT constructor to wrap a Epetra_CrsMatrix object.

Definition at line 2350 of file Xpetra_EpetraCrsMatrix.hpp.

Member Function Documentation

◆ insertGlobalValues()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::insertGlobalValues ( GlobalOrdinal globalRow,
const ArrayView< const GlobalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inline

Insert matrix entries, using global IDs.

Definition at line 1587 of file Xpetra_EpetraCrsMatrix.hpp.

◆ insertLocalValues()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::insertLocalValues ( LocalOrdinal localRow,
const ArrayView< const LocalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inline

Insert matrix entries, using local IDs.

Definition at line 1593 of file Xpetra_EpetraCrsMatrix.hpp.

◆ replaceGlobalValues()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::replaceGlobalValues ( GlobalOrdinal globalRow,
const ArrayView< const GlobalOrdinal > & indices,
const ArrayView< const Scalar > & values )
inline

Replace matrix entries, using global IDs.

Definition at line 1599 of file Xpetra_EpetraCrsMatrix.hpp.

◆ replaceLocalValues()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::replaceLocalValues ( LocalOrdinal localRow,
const ArrayView< const LocalOrdinal > & indices,
const ArrayView< const Scalar > & values )
inline

Replace matrix entries, using local IDs.

Definition at line 1617 of file Xpetra_EpetraCrsMatrix.hpp.

◆ setAllToScalar()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::setAllToScalar ( const Scalar & alpha)
inline

Set all matrix entries equal to scalarThis.

Definition at line 1635 of file Xpetra_EpetraCrsMatrix.hpp.

◆ scale()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::scale ( const Scalar & alpha)
inline

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

Definition at line 1641 of file Xpetra_EpetraCrsMatrix.hpp.

◆ allocateAllValues()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::allocateAllValues ( size_t numNonZeros,
ArrayRCP< size_t > & rowptr,
ArrayRCP< LocalOrdinal > & colind,
ArrayRCP< Scalar > & values )
inline

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

Definition at line 1648 of file Xpetra_EpetraCrsMatrix.hpp.

◆ setAllValues() [1/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::setAllValues ( const ArrayRCP< size_t > & rowptr,
const ArrayRCP< LocalOrdinal > & colind,
const ArrayRCP< Scalar > & values )
inline

Sets the 1D pointer arrays of the graph.

Definition at line 1676 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getAllValues() [1/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getAllValues ( ArrayRCP< const size_t > & rowptr,
ArrayRCP< const LocalOrdinal > & colind,
ArrayRCP< const Scalar > & values ) const
inline

Gets the 1D pointer arrays of the graph.

Definition at line 1704 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getAllValues() [2/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getAllValues ( ArrayRCP< Scalar > & values)
inline

Gets the 1D pointer arrays of the graph.

Definition at line 1728 of file Xpetra_EpetraCrsMatrix.hpp.

◆ haveGlobalConstants()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::haveGlobalConstants ( ) const
inlinevirtual

Returns true if globalConstants have been computed; false otherwise.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1740 of file Xpetra_EpetraCrsMatrix.hpp.

◆ expertStaticFillComplete()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::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 > & = Teuchos::null )
inline

Expert static fill complete.

Definition at line 1744 of file Xpetra_EpetraCrsMatrix.hpp.

◆ resumeFill()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::resumeFill ( const RCP< ParameterList > & = Teuchos::null)
inlinevirtual

◆ fillComplete() [1/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::fillComplete ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & domainMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & rangeMap,
const RCP< ParameterList > & params = Teuchos::null )
inline

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

Definition at line 1785 of file Xpetra_EpetraCrsMatrix.hpp.

◆ fillComplete() [2/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::fillComplete ( const RCP< ParameterList > & params = Teuchos::null)
inline

Signal that data entry is complete.

Definition at line 1800 of file Xpetra_EpetraCrsMatrix.hpp.

◆ replaceDomainMapAndImporter()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::replaceDomainMapAndImporter ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & newDomainMap,
Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > & newImporter )
inline

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

Definition at line 1815 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getComm()

const RCP< const Comm< int > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getComm ( ) const
inline

Returns the communicator.

Definition at line 1834 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getRowMap()

const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getRowMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1840 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getColMap()

const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getColMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1846 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getCrsGraph()

RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getCrsGraph ( ) const
inlinevirtual

Returns the CrsGraph associated with this matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1852 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalNumRows()

global_size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalNumRows ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1858 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalNumCols()

global_size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalNumCols ( ) const
inlinevirtual

Number of global columns in the matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1864 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalNumRows()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalNumRows ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1870 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalNumCols()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalNumCols ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1876 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalNumEntries()

global_size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalNumEntries ( ) const
inlinevirtual

Returns the global number of entries in this matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1882 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalNumEntries()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalNumEntries ( ) const
inlinevirtual

Returns the local number of entries in this matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1888 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getNumEntriesInLocalRow()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getNumEntriesInLocalRow ( LocalOrdinal localRow) const
inline

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

Definition at line 1894 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getNumEntriesInGlobalRow()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getNumEntriesInGlobalRow ( GlobalOrdinal globalRow) const
inlinevirtual

Returns the current number of entries on this node in the specified (locally owned) global row.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1900 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalMaxNumRowEntries()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalMaxNumRowEntries ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1906 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalMaxNumRowEntries()

size_t Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalMaxNumRowEntries ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1912 of file Xpetra_EpetraCrsMatrix.hpp.

◆ isLocallyIndexed()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::isLocallyIndexed ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1918 of file Xpetra_EpetraCrsMatrix.hpp.

◆ isGloballyIndexed()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::isGloballyIndexed ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1924 of file Xpetra_EpetraCrsMatrix.hpp.

◆ isFillComplete()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::isFillComplete ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1930 of file Xpetra_EpetraCrsMatrix.hpp.

◆ isFillActive()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::isFillActive ( ) const
inlinevirtual

Returns true if the matrix is in edit mode.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1939 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getFrobeniusNorm()

ScalarTraits< Scalar >::magnitudeType Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getFrobeniusNorm ( ) const
inlinevirtual

Returns the Frobenius norm of the matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1945 of file Xpetra_EpetraCrsMatrix.hpp.

◆ supportsRowViews()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::supportsRowViews ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 1951 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalRowCopy()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalRowCopy ( LocalOrdinal LocalRow,
const ArrayView< LocalOrdinal > & Indices,
const ArrayView< Scalar > & Values,
size_t & NumEntries ) const
inline

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

Definition at line 1957 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalRowCopy()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalRowCopy ( GlobalOrdinal GlobalRow,
const ArrayView< GlobalOrdinal > & Indices,
const ArrayView< Scalar > & Values,
size_t & NumEntries ) const
inline

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

Definition at line 1966 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getGlobalRowView()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getGlobalRowView ( GlobalOrdinal GlobalRow,
ArrayView< const GlobalOrdinal > & indices,
ArrayView< const Scalar > & values ) const
inline

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

Definition at line 1975 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalRowView()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalRowView ( LocalOrdinal LocalRow,
ArrayView< const LocalOrdinal > & indices,
ArrayView< const Scalar > & values ) const
inline

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

Definition at line 1993 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalDiagCopy() [1/3]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & diag) const
inline

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

Definition at line 2011 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalDiagOffsets()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalDiagOffsets ( Teuchos::ArrayRCP< size_t > & ) const
inlinevirtual

Get offsets of the diagonal entries in the matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2017 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalDiagCopy() [2/3]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & ,
const Teuchos::ArrayView< const size_t > &  ) const
inline

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

Definition at line 2022 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalDiagCopy() [3/3]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & ,
const Kokkos::View< const size_t *, typename Node::device_type, Kokkos::MemoryUnmanaged > &  ) const
inline

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

Definition at line 2027 of file Xpetra_EpetraCrsMatrix.hpp.

◆ replaceDiag()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::replaceDiag ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & diag)
inline

Replace the diagonal entries of the matrix.

Definition at line 2032 of file Xpetra_EpetraCrsMatrix.hpp.

◆ leftScale()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::leftScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & x)
inline

Definition at line 2036 of file Xpetra_EpetraCrsMatrix.hpp.

◆ rightScale()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::rightScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & x)
inline

Definition at line 2039 of file Xpetra_EpetraCrsMatrix.hpp.

◆ apply() [1/2]

Computes the sparse matrix-multivector multiplication.

Definition at line 2049 of file Xpetra_EpetraCrsMatrix.hpp.

◆ apply() [2/2]

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

Definition at line 2074 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getDomainMap()

const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getDomainMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2079 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getRangeMap()

const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getRangeMap ( ) const
inlinevirtual

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

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2085 of file Xpetra_EpetraCrsMatrix.hpp.

◆ description()

std::string Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::description ( ) const
inlinevirtual

A simple one-line description of this object.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2096 of file Xpetra_EpetraCrsMatrix.hpp.

◆ describe()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::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< double, int, long long, EpetraNode >.

Definition at line 2117 of file Xpetra_EpetraCrsMatrix.hpp.

◆ setObjectLabel()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::setObjectLabel ( const std::string & objectLabel)
inlinevirtual

◆ getMap()

Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getMap ( ) const
inlinevirtual

Implements DistObject interface.

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

Implements Xpetra::DistObject< char, int, long long, EpetraNode >.

Definition at line 2277 of file Xpetra_EpetraCrsMatrix.hpp.

◆ doImport() [1/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > & source,
const Import< LocalOrdinal, GlobalOrdinal, Node > & importer,
CombineMode CM )
inline

Import.

Definition at line 2283 of file Xpetra_EpetraCrsMatrix.hpp.

◆ doExport() [1/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > & dest,
const Import< LocalOrdinal, GlobalOrdinal, Node > & importer,
CombineMode CM )
inline

Export.

Definition at line 2296 of file Xpetra_EpetraCrsMatrix.hpp.

◆ doImport() [2/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::doImport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > & source,
const Export< LocalOrdinal, GlobalOrdinal, Node > & exporter,
CombineMode CM )
inline

Import (using an Exporter).

Definition at line 2309 of file Xpetra_EpetraCrsMatrix.hpp.

◆ doExport() [2/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::doExport ( const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > & dest,
const Export< LocalOrdinal, GlobalOrdinal, Node > & exporter,
CombineMode CM )
inline

Export (using an Importer).

Definition at line 2322 of file Xpetra_EpetraCrsMatrix.hpp.

◆ removeEmptyProcessesInPlace()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::removeEmptyProcessesInPlace ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & newMap)
inline

Definition at line 2334 of file Xpetra_EpetraCrsMatrix.hpp.

◆ hasMatrix()

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::hasMatrix ( ) const
inlinevirtual

Does this have an underlying matrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2347 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getEpetra_CrsMatrix()

RCP< const Epetra_CrsMatrix > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getEpetra_CrsMatrix ( ) const
inline

Get the underlying Epetra matrix.

Definition at line 2355 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getEpetra_CrsMatrixNonConst()

RCP< Epetra_CrsMatrix > Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getEpetra_CrsMatrixNonConst ( ) const
inline

Get the underlying Epetra matrix.

Definition at line 2358 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalMatrix()

local_matrix_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalMatrix ( ) const
inline

Compatibility layer for accessing the matrix data through a Kokkos interface.

Definition at line 2362 of file Xpetra_EpetraCrsMatrix.hpp.

◆ setAllValues() [2/2]

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::setAllValues ( const typename local_matrix_type::row_map_type & ptr,
const typename local_matrix_type::StaticCrsGraphType::entries_type::non_const_type & ind,
const typename local_matrix_type::values_type & val )
inline

Definition at line 2389 of file Xpetra_EpetraCrsMatrix.hpp.

◆ GetStorageBlockSize()

LocalOrdinal Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::GetStorageBlockSize ( ) const
inlinevirtual

Returns the block size of the storage mechanism, which is usually 1, except for Tpetra::BlockCrsMatrix.

Implements Xpetra::CrsMatrix< double, int, long long, EpetraNode >.

Definition at line 2416 of file Xpetra_EpetraCrsMatrix.hpp.

◆ residual()

void Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::residual ( const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & X,
const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & B,
MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & R ) const
inlineprivate

Definition at line 2427 of file Xpetra_EpetraCrsMatrix.hpp.

◆ getLocalMatrixDevice()

local_matrix_type Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalMatrixDevice ( ) const
inlinevirtual

◆ getLocalMatrixHost()

local_matrix_type::HostMirror Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::getLocalMatrixHost ( ) const
inlinevirtual

Member Data Documentation

◆ mtx_

Definition at line 2436 of file Xpetra_EpetraCrsMatrix.hpp.

◆ isFillResumed_

bool Xpetra::EpetraCrsMatrixT< long long, EpetraNode >::isFillResumed_
private

Definition at line 2438 of file Xpetra_EpetraCrsMatrix.hpp.


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