Xpetra Version of the Day
Loading...
Searching...
No Matches
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode > Class Template Reference

#include <Xpetra_TpetraBlockCrsMatrix_def.hpp>

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

Private Types

typedef int LocalOrdinal
typedef long long GlobalOrdinal
typedef EpetraNode Node
typedef TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, NodeTpetraBlockCrsMatrixClass
typedef TpetraVector< Scalar, LocalOrdinal, GlobalOrdinal, NodeTpetraVectorClass
typedef TpetraImport< LocalOrdinal, GlobalOrdinal, NodeTpetraImportClass
typedef TpetraExport< LocalOrdinal, GlobalOrdinal, NodeTpetraExportClass

Xpetra specific

typedef Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type local_matrix_type
bool hasMatrix () const
 Does this have an underlying matrix.
 TpetraBlockCrsMatrix (const Teuchos::RCP< Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &mtx)
 TpetraBlockCrsMatrix constructor to wrap a Tpetra::BlockCrsMatrix object.
RCP< const Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_BlockCrsMatrix () const
 Get the underlying Tpetra matrix.
RCP< Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetra_BlockCrsMatrixNonConst () const
 Get the underlying Tpetra matrix.
local_matrix_type getLocalMatrix () const
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)

Constructor/Destructor Methods

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

Insertion/Removal Methods

void insertGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using global IDs (not implemented).
void insertLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Insert matrix entries, using local IDs (not implemented).
void replaceGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 Replace matrix entries, using global IDs (not implemented).
void replaceLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)
 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 (not implemented).
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 (not impelmented).
void getAllValues (ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const
 Gets the 1D pointer arrays of the graph (not implemented).
void getAllValues (ArrayRCP< Scalar > &values)
 Gets the 1D pointer arrays of the graph (not implemented).

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.
void fillComplete (const RCP< ParameterList > &params=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.
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.

Methods implementing RowMatrix

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 in the (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 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 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 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.
bool haveGlobalConstants () const
 Returns true if globalConstants have been computed; false otherwise.

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.
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.
 TpetraBlockCrsMatrix (const TpetraBlockCrsMatrix &matrix)
 Deep copy constructor.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
 Get a copy of the diagonal entries owned by this node, with local row idices.
void getLocalDiagOffsets (Teuchos::ArrayRCP< size_t > &offsets) const
 Get offsets of the diagonal entries in the matrix.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Teuchos::ArrayView< const size_t > &offsets) const
 Get a copy of the diagonal entries owned by this node, with local row indices.
void getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Kokkos::View< const size_t *, typename Node::device_type, Kokkos::MemoryUnmanaged > &offsets) const
 Get a copy of the diagonal entries owned by this node, with local row indices.
void replaceDiag (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const
void leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
 Left scale matrix using the given vector entries.
void rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)
 Right scale matrix using the given vector entries.
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)

Overridden from Teuchos::LabeledObject

void setObjectLabel (const std::string &objectLabel)

Xpetra specific

local_matrix_type getLocalMatrixDevice () const
local_matrix_type::HostMirror getLocalMatrixHost () const
int GetStorageBlockSize () const
 Returns the block size of the storage mechanism.
void residual (const MultiVector< Scalar, int, long long, EpetraNode > &X, const MultiVector< Scalar, int, long long, EpetraNode > &B, MultiVector< Scalar, int, long long, EpetraNode > &R) const
 Compute a residual R = B - (*this) * X.
RCP< Tpetra::BlockCrsMatrix< Scalar, int, long long, EpetraNode > > mtx_

Additional Inherited Members

Public Types inherited from Xpetra::CrsMatrix< Scalar, int, long long, EpetraNode >
typedef Scalar 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< Scalar, int, long long, EpetraNode >
typedef Scalar scalar_type
typedef int local_ordinal_type
typedef long long global_ordinal_type
typedef EpetraNode node_type
typedef Scalar 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.
virtual ~CrsMatrix ()
 Destructor.
virtual void replaceDiag (const Vector< Scalar, int, long long, EpetraNode > &diag)=0
 Replace the diagonal entries of the matrix.
virtual ~RowMatrix ()
 Destructor.
Public Member Functions inherited from Xpetra::Operator< Scalar, int, long long, EpetraNode >
virtual ~Operator ()
virtual void apply (const mv_type &X, mv_type &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::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 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 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").
Static Public Attributes inherited from Teuchos::Describable
static const EVerbosityLevel verbLevel_default

Detailed Description

template<class Scalar>
class Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >

Definition at line 1039 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

Member Typedef Documentation

◆ LocalOrdinal

template<class Scalar>
typedef int Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::LocalOrdinal
private

Definition at line 1043 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ GlobalOrdinal

template<class Scalar>
typedef long long Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::GlobalOrdinal
private

Definition at line 1044 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ Node

template<class Scalar>
typedef EpetraNode Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::Node
private

Definition at line 1045 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrixClass

template<class Scalar>
typedef TpetraBlockCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraBlockCrsMatrixClass
private

Definition at line 1046 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraVectorClass

template<class Scalar>
typedef TpetraVector<Scalar, LocalOrdinal, GlobalOrdinal, Node> Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraVectorClass
private

Definition at line 1047 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraImportClass

template<class Scalar>
typedef TpetraImport<LocalOrdinal, GlobalOrdinal, Node> Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraImportClass
private

Definition at line 1048 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraExportClass

template<class Scalar>
typedef TpetraExport<LocalOrdinal, GlobalOrdinal, Node> Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraExportClass
private

Definition at line 1049 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ local_matrix_type

template<class Scalar>
typedef Xpetra::CrsMatrix<Scalar,LocalOrdinal,GlobalOrdinal,Node>::local_matrix_type Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::local_matrix_type

Definition at line 1315 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

Constructor & Destructor Documentation

◆ TpetraBlockCrsMatrix() [1/12]

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

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

Definition at line 1055 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [2/12]

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

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

Definition at line 1058 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [3/12]

template<class Scalar>
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraBlockCrsMatrix ( 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 )
inline

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

Definition at line 1061 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [4/12]

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

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

Definition at line 1064 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [5/12]

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

Constructor specifying a previously constructed graph ( not implemented ).

Definition at line 1067 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [6/12]

template<class Scalar>
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraBlockCrsMatrix ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > & graph,
const LocalOrdinal blockSize )
inline

Constructor specifying a previously constructed graph & blocksize.

Definition at line 1070 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [7/12]

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

Constructor for a fused import (not implemented).

Definition at line 1073 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [8/12]

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

Constructor for a fused export (not implemented).

Definition at line 1080 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [9/12]

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

Constructor for a fused import (not implemented).

Definition at line 1087 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [10/12]

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

Constructor for a fused export (not implemented).

Definition at line 1095 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ ~TpetraBlockCrsMatrix()

template<class Scalar>
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::~TpetraBlockCrsMatrix ( )
inline

Destructor.

Definition at line 1103 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [11/12]

template<class Scalar>
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraBlockCrsMatrix ( const TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode > & matrix)
inline

Deep copy constructor.

Definition at line 1256 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ TpetraBlockCrsMatrix() [12/12]

template<class Scalar>
Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::TpetraBlockCrsMatrix ( const Teuchos::RCP< Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & mtx)
inline

TpetraBlockCrsMatrix constructor to wrap a Tpetra::BlockCrsMatrix object.

Definition at line 1304 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

Member Function Documentation

◆ insertGlobalValues()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::insertGlobalValues ( GlobalOrdinal globalRow,
const ArrayView< const GlobalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inlinevirtual

Insert matrix entries, using global IDs (not implemented).

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

Definition at line 1108 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ insertLocalValues()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::insertLocalValues ( LocalOrdinal localRow,
const ArrayView< const LocalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inlinevirtual

Insert matrix entries, using local IDs (not implemented).

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

Definition at line 1111 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ replaceGlobalValues()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::replaceGlobalValues ( GlobalOrdinal globalRow,
const ArrayView< const GlobalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inlinevirtual

Replace matrix entries, using global IDs (not implemented).

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

Definition at line 1114 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ replaceLocalValues()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::replaceLocalValues ( LocalOrdinal localRow,
const ArrayView< const LocalOrdinal > & cols,
const ArrayView< const Scalar > & vals )
inlinevirtual

Replace matrix entries, using local IDs.

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

Definition at line 1117 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ setAllToScalar()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::setAllToScalar ( const Scalar & alpha)
inlinevirtual

Set all matrix entries equal to scalarThis.

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

Definition at line 1120 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ scale()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::scale ( const Scalar & alpha)
inlinevirtual

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

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

Definition at line 1123 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ allocateAllValues()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::allocateAllValues ( size_t numNonZeros,
ArrayRCP< size_t > & rowptr,
ArrayRCP< LocalOrdinal > & colind,
ArrayRCP< Scalar > & values )
inlinevirtual

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

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

Definition at line 1127 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ setAllValues() [1/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::setAllValues ( const ArrayRCP< size_t > & rowptr,
const ArrayRCP< LocalOrdinal > & colind,
const ArrayRCP< Scalar > & values )
inlinevirtual

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

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

Definition at line 1130 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getAllValues() [1/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getAllValues ( ArrayRCP< const size_t > & rowptr,
ArrayRCP< const LocalOrdinal > & colind,
ArrayRCP< const Scalar > & values ) const
inlinevirtual

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

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

Definition at line 1133 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getAllValues() [2/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getAllValues ( ArrayRCP< Scalar > & values)
inline

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

Definition at line 1136 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ resumeFill()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::resumeFill ( const RCP< ParameterList > & params = null)
inlinevirtual

◆ fillComplete() [1/2]

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

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

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

Definition at line 1145 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ fillComplete() [2/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::fillComplete ( const RCP< ParameterList > & params = null)
inline

Signal that data entry is complete.

Definition at line 1149 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ replaceDomainMapAndImporter()

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

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

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

Definition at line 1153 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ expertStaticFillComplete()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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 > & params = Teuchos::null )
inlinevirtual

Expert static fill complete.

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

Definition at line 1156 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getRowMap()

template<class Scalar>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getRowMap ( ) const
inlinevirtual

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

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

Definition at line 1165 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getColMap()

template<class Scalar>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getColMap ( ) const
inlinevirtual

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

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

Definition at line 1168 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getCrsGraph()

template<class Scalar>
RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getCrsGraph ( ) const
inlinevirtual

Returns the CrsGraph associated with this matrix.

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

Definition at line 1171 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalNumRows()

template<class Scalar>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumRows ( ) const
inlinevirtual

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

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

Definition at line 1174 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalNumCols()

template<class Scalar>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumCols ( ) const
inlinevirtual

Number of global columns in the matrix.

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

Definition at line 1177 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalNumRows()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalNumRows ( ) const
inlinevirtual

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

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

Definition at line 1180 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalNumCols()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalNumCols ( ) const
inlinevirtual

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

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

Definition at line 1183 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalNumEntries()

template<class Scalar>
global_size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalNumEntries ( ) const
inlinevirtual

Returns the global number of entries in this matrix.

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

Definition at line 1186 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalNumEntries()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalNumEntries ( ) const
inlinevirtual

Returns the local number of entries in this matrix.

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

Definition at line 1189 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getNumEntriesInLocalRow()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getNumEntriesInLocalRow ( LocalOrdinal localRow) const
inlinevirtual

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

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

Definition at line 1192 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getNumEntriesInGlobalRow()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getNumEntriesInGlobalRow ( GlobalOrdinal globalRow) const
inlinevirtual

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

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

Definition at line 1195 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalMaxNumRowEntries()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalMaxNumRowEntries ( ) const
inlinevirtual

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

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

Definition at line 1198 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalMaxNumRowEntries()

template<class Scalar>
size_t Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalMaxNumRowEntries ( ) const
inlinevirtual

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

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

Definition at line 1201 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ isLocallyIndexed()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1204 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ isGloballyIndexed()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1207 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ isFillComplete()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1210 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ isFillActive()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::isFillActive ( ) const
inlinevirtual

Returns true if the matrix is in edit mode.

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

Definition at line 1213 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getFrobeniusNorm()

template<class Scalar>
ScalarTraits< Scalar >::magnitudeType Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getFrobeniusNorm ( ) const
inlinevirtual

Returns the Frobenius norm of the matrix.

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

Definition at line 1216 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ supportsRowViews()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::supportsRowViews ( ) const
inlinevirtual

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

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

Definition at line 1219 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalRowCopy()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalRowCopy ( LocalOrdinal LocalRow,
const ArrayView< LocalOrdinal > & Indices,
const ArrayView< Scalar > & Values,
size_t & NumEntries ) const
inlinevirtual

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

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

Definition at line 1222 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalRowView()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalRowView ( GlobalOrdinal GlobalRow,
ArrayView< const GlobalOrdinal > & indices,
ArrayView< const Scalar > & values ) const
inlinevirtual

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

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

Definition at line 1225 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getGlobalRowCopy()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getGlobalRowCopy ( GlobalOrdinal GlobalRow,
const ArrayView< GlobalOrdinal > & indices,
const ArrayView< Scalar > & values,
size_t & numEntries ) const
inlinevirtual

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

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

Definition at line 1228 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalRowView()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalRowView ( LocalOrdinal LocalRow,
ArrayView< const LocalOrdinal > & indices,
ArrayView< const Scalar > & values ) const
inlinevirtual

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

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

Definition at line 1231 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ haveGlobalConstants()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::haveGlobalConstants ( ) const
inlinevirtual

Returns true if globalConstants have been computed; false otherwise.

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

Definition at line 1234 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ apply()

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

Computes the sparse matrix-multivector multiplication.

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

Definition at line 1239 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getDomainMap()

template<class Scalar>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1242 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getRangeMap()

template<class Scalar>
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1245 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ description()

template<class Scalar>
std::string Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::description ( ) const
inlinevirtual

A simple one-line description of this object.

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

Definition at line 1250 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ describe()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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< Scalar, int, long long, EpetraNode >.

Definition at line 1253 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalDiagCopy() [1/3]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & diag) const
inlinevirtual

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

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

Definition at line 1259 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalDiagOffsets()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagOffsets ( Teuchos::ArrayRCP< size_t > & offsets) const
inlinevirtual

Get offsets of the diagonal entries in the matrix.

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

Definition at line 1262 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalDiagCopy() [2/3]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & diag,
const Teuchos::ArrayView< const size_t > & offsets ) const
inline

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

Definition at line 1265 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalDiagCopy() [3/3]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalDiagCopy ( Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & diag,
const Kokkos::View< const size_t *, typename Node::device_type, Kokkos::MemoryUnmanaged > & offsets ) const
inline

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

Definition at line 1268 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ replaceDiag()

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

Definition at line 1270 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ leftScale()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::leftScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & x)
inlinevirtual

Left scale matrix using the given vector entries.

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

Definition at line 1272 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ rightScale()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::rightScale ( const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & x)
inlinevirtual

Right scale matrix using the given vector entries.

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

Definition at line 1273 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getMap()

template<class Scalar>
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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 1278 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ doImport() [1/2]

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

◆ doExport() [1/2]

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

Export.

Definition at line 1285 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ doImport() [2/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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 1289 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ doExport() [2/2]

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

Export (using an Importer).

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

Definition at line 1293 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ removeEmptyProcessesInPlace()

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::removeEmptyProcessesInPlace ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & newMap)
inlinevirtual

◆ hasMatrix()

template<class Scalar>
bool Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::hasMatrix ( ) const
inlinevirtual

Does this have an underlying matrix.

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

Definition at line 1301 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getTpetra_BlockCrsMatrix()

template<class Scalar>
RCP< const Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getTpetra_BlockCrsMatrix ( ) const
inline

Get the underlying Tpetra matrix.

Definition at line 1309 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getTpetra_BlockCrsMatrixNonConst()

template<class Scalar>
RCP< Tpetra::BlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getTpetra_BlockCrsMatrixNonConst ( ) const
inline

Get the underlying Tpetra matrix.

Definition at line 1312 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ getLocalMatrix()

template<class Scalar>
local_matrix_type Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalMatrix ( ) const
inline

Definition at line 1317 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ setAllValues() [2/2]

template<class Scalar>
void Xpetra::TpetraBlockCrsMatrix< Scalar, int, 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 1323 of file Xpetra_TpetraBlockCrsMatrix_def.hpp.

◆ setObjectLabel()

void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::setObjectLabel ( const std::string & objectLabel)
virtual

◆ getLocalMatrixDevice()

CrsMatrix< Scalar, int, long long, EpetraNode >::local_matrix_type Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalMatrixDevice ( ) const
virtual

◆ getLocalMatrixHost()

CrsMatrix< Scalar, int, long long, EpetraNode >::local_matrix_type::HostMirror Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::getLocalMatrixHost ( ) const
virtual

◆ GetStorageBlockSize()

int Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::GetStorageBlockSize ( ) const
inlinevirtual

Returns the block size of the storage mechanism.

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

Definition at line 351 of file Xpetra_TpetraBlockCrsMatrix_decl.hpp.

◆ residual()

void Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::residual ( const MultiVector< Scalar, int, long long, EpetraNode > & X,
const MultiVector< Scalar, int, long long, EpetraNode > & B,
MultiVector< Scalar, int, long long, EpetraNode > & R ) const
inlinevirtual

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

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

Definition at line 354 of file Xpetra_TpetraBlockCrsMatrix_decl.hpp.

Member Data Documentation

◆ mtx_

RCP<Tpetra::BlockCrsMatrix<Scalar, int, long long, EpetraNode> > Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >::mtx_
private

Definition at line 363 of file Xpetra_TpetraBlockCrsMatrix_decl.hpp.


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