|
Tpetra Matrix/Vector Services
Version of the Day
|
A pure virtual interface for row-partitioned matrices. More...
#include <Tpetra_RowMatrix.hpp>

Public Types | |
| typedef Scalar | scalar_type |
| The type of the entries of the input and output multivectors. | |
| typedef LocalOrdinal | local_ordinal_type |
| The local index type. | |
| typedef GlobalOrdinal | global_ordinal_type |
| The global index type. | |
| typedef Node | node_type |
| The Kokkos Node type. | |
Public Member Functions | |
Destructor Method | |
| virtual | ~RowMatrix () |
| Destructor. | |
Matrix Query Methods | |
| virtual const Teuchos::RCP < const Teuchos::Comm< int > > & | getComm () const =0 |
| Returns the communicator. | |
| virtual Teuchos::RCP< Node > | getNode () const =0 |
| Returns the underlying node. | |
| virtual const Teuchos::RCP < const Map< LocalOrdinal, GlobalOrdinal, Node > > & | getRowMap () const =0 |
| Returns the Map that describes the row distribution in this matrix. | |
| virtual const Teuchos::RCP < const Map< LocalOrdinal, GlobalOrdinal, Node > > & | getColMap () const =0 |
| Returns the Map that describes the column distribution in this matrix. | |
| virtual Teuchos::RCP< const RowGraph< LocalOrdinal, GlobalOrdinal, Node > > | getGraph () const =0 |
| Returns the RowGraph associated with this matrix. | |
| virtual global_size_t | getGlobalNumRows () const =0 |
| Returns the number of global rows in this matrix. | |
| virtual global_size_t | getGlobalNumCols () const =0 |
| Returns the number of global columns in this matrix. | |
| virtual size_t | getNodeNumRows () const =0 |
| Returns the number of rows owned on the calling node. | |
| virtual size_t | getNodeNumCols () const =0 |
| Returns the number of columns needed to apply the forward operator on this node, i.e., the number of elements listed in the column map. | |
| virtual GlobalOrdinal | getIndexBase () const =0 |
| Returns the index base for global indices for this matrix. | |
| virtual global_size_t | getGlobalNumEntries () const =0 |
| Returns the global number of entries in this matrix. | |
| virtual size_t | getNodeNumEntries () const =0 |
| Returns the local number of entries in this matrix. | |
| virtual size_t | getNumEntriesInGlobalRow (GlobalOrdinal globalRow) const =0 |
| Returns the current number of entries on this node in the specified global row. | |
| virtual size_t | getNumEntriesInLocalRow (LocalOrdinal localRow) const =0 |
| Returns the current number of entries on this node in the specified local row. | |
| virtual global_size_t | getGlobalNumDiags () const =0 |
| Returns the number of global diagonal entries, based on global row/column index comparisons. | |
| virtual size_t | getNodeNumDiags () const =0 |
| Returns the number of local diagonal entries, based on global row/column index comparisons. | |
| virtual size_t | getGlobalMaxNumRowEntries () const =0 |
| Returns the maximum number of entries across all rows/columns on all nodes. | |
| virtual size_t | getNodeMaxNumRowEntries () const =0 |
| Returns the maximum number of entries across all rows/columns on this node. | |
| virtual bool | hasColMap () const =0 |
| Indicates whether this matrix has a well-defined column map. | |
| virtual bool | isLowerTriangular () const =0 |
| Indicates whether this matrix is lower triangular. | |
| virtual bool | isUpperTriangular () const =0 |
| Indicates whether this matrix is upper triangular. | |
| virtual bool | isLocallyIndexed () const =0 |
| If matrix indices are in the local range, this function returns true. Otherwise, this function returns false. */. | |
| virtual bool | isGloballyIndexed () const =0 |
| If matrix indices are in the global range, this function returns true. Otherwise, this function returns false. */. | |
| virtual bool | isFillComplete () const =0 |
Returns true if fillComplete() has been called. | |
Extraction Methods | |
| virtual void | getGlobalRowCopy (GlobalOrdinal GlobalRow, const Teuchos::ArrayView< GlobalOrdinal > &Indices, const Teuchos::ArrayView< Scalar > &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 | getLocalRowCopy (LocalOrdinal LocalRow, const Teuchos::ArrayView< LocalOrdinal > &Indices, const Teuchos::ArrayView< Scalar > &Values, size_t &NumEntries) const =0 |
| Extract a list of entries in a specified local row of the graph. Put into storage allocated by calling routine. | |
| virtual void | getGlobalRowView (GlobalOrdinal GlobalRow, ArrayView< const GlobalOrdinal > &indices, ArrayView< const Scalar > &values) const =0 |
| Extract a const, non-persisting view of global indices in a specified row of the matrix. | |
| virtual void | getLocalRowView (LocalOrdinal LocalRow, ArrayView< const LocalOrdinal > &indices, ArrayView< const Scalar > &values) const =0 |
| Extract a const, non-persisting view of local indices in a specified row of the matrix. | |
| virtual void | getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag) const =0 |
| Get a copy of the diagonal entries owned by this node, with local row indices. | |
Mathematical Methods | |
| virtual void | leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)=0 |
| Scales the RowMatrix on the left with the Vector x. | |
| virtual void | rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)=0 |
| Scales the RowMatrix on the right with the Vector x. | |
| virtual ScalarTraits< Scalar > ::magnitudeType | getFrobeniusNorm () const =0 |
| Returns the Frobenius norm of the matrix. | |
Pure virtual functions to be overridden by subclasses. | |
| virtual const Teuchos::RCP < const Map< LocalOrdinal, GlobalOrdinal, Node > > & | getDomainMap () const =0 |
| Returns the Map associated with the domain of this operator, which must be compatible with X.getMap(). | |
| virtual const Teuchos::RCP < const Map< LocalOrdinal, GlobalOrdinal, Node > > & | getRangeMap () const =0 |
| Returns the Map associated with the range of this operator, which must be compatible with Y.getMap(). | |
| virtual void | apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &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 |
| Indicates whether this operator supports applying the adjoint operator. | |
A pure virtual interface for row-partitioned matrices.
This class is templated on Scalar, LocalOrdinal, GlobalOrdinal and Node. The LocalOrdinal type, if omitted, defaults to int. The GlobalOrdinal type defaults to the LocalOrdinal type. The Node type defaults to the default node in Kokkos.
Definition at line 64 of file Tpetra_RowMatrix.hpp.
| typedef Scalar Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scalar_type |
The type of the entries of the input and output multivectors.
Reimplemented from Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Reimplemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 66 of file Tpetra_RowMatrix.hpp.
| typedef LocalOrdinal Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_ordinal_type |
The local index type.
Reimplemented from Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Reimplemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 67 of file Tpetra_RowMatrix.hpp.
| typedef GlobalOrdinal Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::global_ordinal_type |
The global index type.
Reimplemented from Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Reimplemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 68 of file Tpetra_RowMatrix.hpp.
| typedef Node Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::node_type |
The Kokkos Node type.
Reimplemented from Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Reimplemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 69 of file Tpetra_RowMatrix.hpp.
| Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~RowMatrix | ( | ) | [virtual] |
Destructor.
Definition at line 265 of file Tpetra_RowMatrix.hpp.
| virtual const Teuchos::RCP<const Teuchos::Comm<int> >& Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getComm | ( | ) | const [pure virtual] |
| virtual Teuchos::RCP<Node> Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNode | ( | ) | const [pure virtual] |
Returns the underlying node.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRowMap | ( | ) | const [pure virtual] |
Returns the Map that describes the row distribution in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getColMap | ( | ) | const [pure virtual] |
Returns the Map that describes the column distribution in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual Teuchos::RCP<const RowGraph<LocalOrdinal,GlobalOrdinal,Node> > Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGraph | ( | ) | const [pure virtual] |
Returns the RowGraph associated with this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual global_size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumRows | ( | ) | const [pure virtual] |
Returns the number of global rows in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual global_size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumCols | ( | ) | const [pure virtual] |
Returns the number of global columns in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumRows | ( | ) | const [pure virtual] |
Returns the number of rows owned on the calling node.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumCols | ( | ) | const [pure virtual] |
Returns the number of columns needed to apply the forward operator on this node, i.e., the number of elements listed in the column map.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual GlobalOrdinal Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getIndexBase | ( | ) | const [pure virtual] |
Returns the index base for global indices for this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual global_size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumEntries | ( | ) | const [pure virtual] |
Returns the global number of entries in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumEntries | ( | ) | const [pure virtual] |
Returns the local number of entries in this matrix.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNumEntriesInGlobalRow | ( | GlobalOrdinal | globalRow | ) | const [pure virtual] |
Returns the current number of entries on this node in the specified global row.
Returns Teuchos::OrdinalTraits<size_t>::invalid() if the specified global row does not belong to this graph.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNumEntriesInLocalRow | ( | LocalOrdinal | localRow | ) | const [pure virtual] |
Returns the current number of entries on this node in the specified local row.
Returns Teuchos::OrdinalTraits<size_t>::invalid() if the specified local row is not valid for this graph.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual global_size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumDiags | ( | ) | const [pure virtual] |
Returns the number of global diagonal entries, based on global row/column index comparisons.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeNumDiags | ( | ) | const [pure virtual] |
Returns the number of local diagonal entries, based on global row/column index comparisons.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalMaxNumRowEntries | ( | ) | const [pure virtual] |
Returns the maximum number of entries across all rows/columns on all nodes.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual size_t Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNodeMaxNumRowEntries | ( | ) | const [pure virtual] |
Returns the maximum number of entries across all rows/columns on this node.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasColMap | ( | ) | const [pure virtual] |
Indicates whether this matrix has a well-defined column map.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isLowerTriangular | ( | ) | const [pure virtual] |
Indicates whether this matrix is lower triangular.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isUpperTriangular | ( | ) | const [pure virtual] |
Indicates whether this matrix is upper triangular.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isLocallyIndexed | ( | ) | const [pure virtual] |
If matrix indices are in the local range, this function returns true. Otherwise, this function returns false. */.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isGloballyIndexed | ( | ) | const [pure virtual] |
If matrix indices are in the global range, this function returns true. Otherwise, this function returns false. */.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual bool Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::isFillComplete | ( | ) | const [pure virtual] |
Returns true if fillComplete() has been called.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowCopy | ( | GlobalOrdinal | GlobalRow, |
| const Teuchos::ArrayView< GlobalOrdinal > & | Indices, | ||
| const Teuchos::ArrayView< Scalar > & | Values, | ||
| size_t & | NumEntries | ||
| ) | const [pure virtual] |
Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
| LocalRow | - (In) Global row number for which indices are desired. |
| Indices | - (Out) Global column indices corresponding to values. |
| Values | - (Out) Matrix values. |
| NumEntries | - (Out) Number of indices. |
Note: A std::runtime_error exception is thrown if either Indices or Values is not large enough to hold the data associated with row GlobalRow. If GlobalRow does not belong to this node, then Indices and Values are unchanged and NumIndices is returned as Teuchos::OrdinalTraits<size_t>::invalid().
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowCopy | ( | LocalOrdinal | LocalRow, |
| const Teuchos::ArrayView< LocalOrdinal > & | Indices, | ||
| const Teuchos::ArrayView< Scalar > & | Values, | ||
| size_t & | NumEntries | ||
| ) | const [pure virtual] |
Extract a list of entries in a specified local row of the graph. Put into storage allocated by calling routine.
| LocalRow | - (In) Local row number for which indices are desired. |
| Indices | - (Out) Local column indices corresponding to values. |
| Values | - (Out) Matrix values. |
| NumIndices | - (Out) Number of indices. |
Note: A std::runtime_error exception is thrown if either Indices or Values is not large enough to hold the data associated with row LocalRow. If LocalRow is not valid for this node, then Indices and Values are unchanged and NumIndices is returned as Teuchos::OrdinalTraits<size_t>::invalid().
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getGlobalRowView | ( | GlobalOrdinal | GlobalRow, |
| ArrayView< const GlobalOrdinal > & | indices, | ||
| ArrayView< const Scalar > & | values | ||
| ) | const [pure virtual] |
Extract a const, non-persisting view of global indices in a specified row of the matrix.
| GlobalRow | - (In) Global row number for which indices are desired. |
| Indices | - (Out) Global column indices corresponding to values. |
| Values | - (Out) Row values |
isLocallyIndexed() == false indices.size() == getNumEntriesInGlobalRow(GlobalRow)Note: If GlobalRow does not belong to this node, then indices is set to null.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalRowView | ( | LocalOrdinal | LocalRow, |
| ArrayView< const LocalOrdinal > & | indices, | ||
| ArrayView< const Scalar > & | values | ||
| ) | const [pure virtual] |
Extract a const, non-persisting view of local indices in a specified row of the matrix.
| LocalRow | - (In) Local row number for which indices are desired. |
| Indices | - (Out) Global column indices corresponding to values. |
| Values | - (Out) Row values |
isGloballyIndexed() == false indices.size() == getNumEntriesInLocalRow(LocalRow)Note: If LocalRow does not belong to this node, then indices is set to null.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalDiagCopy | ( | Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | diag | ) | const [pure virtual] |
Get a copy of the diagonal entries owned by this node, with local row indices.
Returns a distributed Vector object partitioned according to this matrix's row map, containing the the zero and non-zero diagonals owned by this node.
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::leftScale | ( | const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | x | ) | [pure virtual] |
Scales the RowMatrix on the left with the Vector x.
This matrix will be scaled such that A(i,j) = x(i)*A(i,j) where i denoes the global row number of A and j denotes the global column number of A.
| x | A vector to left scale this matrix. |
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual void Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::rightScale | ( | const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | x | ) | [pure virtual] |
Scales the RowMatrix on the right with the Vector x.
This matrix will be scaled such that A(i,j) = x(j)*A(i,j) where i denoes the global row number of A and j denotes the global column number of A.
| x | A vector to right scale this matrix. |
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual ScalarTraits<Scalar>::magnitudeType Tpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getFrobeniusNorm | ( | ) | const [pure virtual] |
Returns the Frobenius norm of the matrix.
Computes and returns the Frobenius norm of the matrix, defined as:
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, and Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
| virtual const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap | ( | ) | const [pure virtual, inherited] |
Returns the Map associated with the domain of this operator, which must be compatible with X.getMap().
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Tpetra::VbrMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrixMultiplyOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::RTI::KernelOp< S, LO, GO, Node, Kernel >, Tpetra::RTI::KernelOp< S, LO, GO, Node, Tpetra::RTI::detail::BinaryFunctorAdapterWithAlphaBeta< Op, S > >, and Tpetra::CrsMatrixSolveOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >.
| virtual const Teuchos::RCP<const Map<LocalOrdinal,GlobalOrdinal,Node> >& Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap | ( | ) | const [pure virtual, inherited] |
Returns the Map associated with the range of this operator, which must be compatible with Y.getMap().
Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Tpetra::VbrMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrixMultiplyOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrixSolveOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::RTI::KernelOp< S, LO, GO, Node, Kernel >, and Tpetra::RTI::KernelOp< S, LO, GO, Node, Tpetra::RTI::detail::BinaryFunctorAdapterWithAlphaBeta< Op, S > >.
| virtual void Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply | ( | const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | X, |
| MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | Y, | ||
| Teuchos::ETransp | mode = Teuchos::NO_TRANS, |
||
| Scalar | alpha = Teuchos::ScalarTraits< Scalar >::one(), |
||
| Scalar | beta = Teuchos::ScalarTraits< Scalar >::zero() |
||
| ) | const [pure virtual, inherited] |
Computes the operator-multivector application.
Loosely, performs
. However, the details of operation vary according to the values of alpha and beta. Specifically
beta == 0, apply() must overwrite Y, so that any values in Y (including NaNs) are ignored.alpha == 0, apply() may short-circuit the operator, so that any values in X (including NaNs) are ignored. Implemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Tpetra::VbrMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::RTI::KernelOp< S, LO, GO, Node, Kernel >, Tpetra::RTI::KernelOp< S, LO, GO, Node, Tpetra::RTI::detail::BinaryFunctorAdapterWithAlphaBeta< Op, S > >, Tpetra::CrsMatrixMultiplyOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, and Tpetra::CrsMatrixSolveOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >.
| bool Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasTransposeApply | ( | ) | const [virtual, inherited] |
Indicates whether this operator supports applying the adjoint operator.
Reimplemented in Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, SpMatOps >, Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Tpetra::VbrMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, Tpetra::CrsMatrixMultiplyOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >, and Tpetra::CrsMatrixSolveOp< Scalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >.
Definition at line 116 of file Tpetra_Operator.hpp.
1.7.6.1