Xpetra
Version of the Day
|
#include <Xpetra_CrsMatrix.hpp>
Public Types | |
typedef Scalar | scalar_type |
typedef LocalOrdinal | local_ordinal_type |
typedef GlobalOrdinal | global_ordinal_type |
typedef Node | node_type |
Public Types inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
typedef Scalar | scalar_type |
typedef LocalOrdinal | local_ordinal_type |
typedef GlobalOrdinal | global_ordinal_type |
typedef Node | node_type |
Public Types inherited from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
typedef Scalar | scalar_type |
The type of the entries of the input and output multivectors. More... | |
typedef LocalOrdinal | local_ordinal_type |
The local index type. More... | |
typedef GlobalOrdinal | global_ordinal_type |
The global index type. More... | |
typedef Node | node_type |
The Kokkos Node type. More... | |
Public Member Functions | |
virtual size_t | getLocalNumCols () const =0 |
Returns the number of matrix columns owned on the calling node. More... | |
virtual void | getLocalRowCopy (LocalOrdinal LocalRow, const ArrayView< LocalOrdinal > &Indices, const ArrayView< Scalar > &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. More... | |
virtual bool | hasMatrix () const =0 |
Does this have an underlying matrix. More... | |
virtual LocalOrdinal | GetStorageBlockSize () const =0 |
Returns the block size of the storage mechanism, which is usually 1, except for Tpetra::BlockCrsMatrix. More... | |
virtual void | residual (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &B, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &R) const =0 |
Compute a residual R = B - (*this) * X. More... | |
Public Member Functions inherited from Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
virtual | ~RowMatrix () |
Destructor. More... | |
virtual void | getLocalRowCopy (LocalOrdinal LocalRow, const Teuchos::ArrayView< LocalOrdinal > &Indices, const Teuchos::ArrayView< Scalar > &Values, size_t &NumEntries) const =0 |
Extract a list of entries in a specified local row of the graph. Put into storage allocated by calling routine. More... | |
Public Member Functions inherited from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
virtual | ~Operator () |
virtual bool | hasTransposeApply () const |
Whether this operator supports applying the transpose or conjugate transpose. More... | |
Public Member Functions inherited from Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node > | |
virtual | ~DistObject () |
Destructor. More... | |
virtual void | doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)=0 |
Import data into this object using an Import object ("forward mode"). More... | |
virtual void | doImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)=0 |
Import data into this object using an Export object ("reverse mode"). More... | |
virtual void | beginImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
Import data into this object using an Import object ("forward mode"). More... | |
virtual void | beginImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
Import data into this object using an Export object ("reverse mode"). More... | |
virtual void | endImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
Import data into this object using an Import object ("forward mode"). More... | |
virtual void | endImport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
Import data into this object using an Export object ("reverse mode"). More... | |
virtual void | doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM)=0 |
Export data into this object using an Export object ("forward mode"). More... | |
virtual void | doExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM)=0 |
Export data into this object using an Import object ("reverse mode"). More... | |
virtual void | beginExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
Export data into this object using an Export object ("forward mode"). More... | |
virtual void | beginExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
Export data into this object using an Import object ("reverse mode"). More... | |
virtual void | endExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, CombineMode CM) |
Export data into this object using an Export object ("forward mode"). More... | |
virtual void | endExport (const DistObject< char, LocalOrdinal, GlobalOrdinal, Node > &source, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, CombineMode CM) |
Export data into this object using an Import object ("reverse mode"). More... | |
virtual Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > | getMap () const =0 |
The Map describing the parallel distribution of this object. More... | |
Constructor/Destructor Methods | |
virtual | ~CrsMatrix () |
Destructor. More... | |
Insertion/Removal Methods | |
virtual void | insertGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)=0 |
Insert matrix entries, using global IDs. More... | |
virtual void | insertLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)=0 |
Insert matrix entries, using local IDs. More... | |
virtual void | replaceGlobalValues (GlobalOrdinal globalRow, const ArrayView< const GlobalOrdinal > &cols, const ArrayView< const Scalar > &vals)=0 |
Replace matrix entries, using global IDs. More... | |
virtual void | replaceLocalValues (LocalOrdinal localRow, const ArrayView< const LocalOrdinal > &cols, const ArrayView< const Scalar > &vals)=0 |
Replace matrix entries, using local IDs. More... | |
virtual void | setAllToScalar (const Scalar &alpha)=0 |
Set all matrix entries equal to scalarThis. More... | |
virtual void | scale (const Scalar &alpha)=0 |
Scale the current values of a matrix, this = alpha*this. More... | |
virtual void | allocateAllValues (size_t numNonZeros, ArrayRCP< size_t > &rowptr, ArrayRCP< LocalOrdinal > &colind, ArrayRCP< Scalar > &values)=0 |
Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine. More... | |
virtual void | setAllValues (const ArrayRCP< size_t > &rowptr, const ArrayRCP< LocalOrdinal > &colind, const ArrayRCP< Scalar > &values)=0 |
Sets the 1D pointer arrays of the graph. More... | |
virtual void | getAllValues (ArrayRCP< const size_t > &rowptr, ArrayRCP< const LocalOrdinal > &colind, ArrayRCP< const Scalar > &values) const =0 |
Gets the 1D pointer arrays of the graph. More... | |
virtual void | getAllValues (ArrayRCP< Scalar > &values)=0 |
Gets the 1D pointer arrays of the graph. More... | |
Transformational Methods | |
virtual void | resumeFill (const RCP< ParameterList > ¶ms=null)=0 |
virtual void | fillComplete (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &rangeMap, const RCP< ParameterList > ¶ms=null)=0 |
Signal that data entry is complete, specifying domain and range maps. More... | |
virtual void | fillComplete (const RCP< ParameterList > ¶ms=null)=0 |
Signal that data entry is complete. More... | |
virtual void | replaceDomainMapAndImporter (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newDomainMap, Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node > > &newImporter)=0 |
Replaces the current domainMap and importer with the user-specified objects. More... | |
virtual 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 > ¶ms=Teuchos::null)=0 |
Expert static fill complete. More... | |
Methods implementing RowMatrix | |
virtual const RCP< const Map < LocalOrdinal, GlobalOrdinal, Node > > | getRowMap () const =0 |
Returns the Map that describes the row distribution in this matrix. More... | |
virtual const RCP< const Map < LocalOrdinal, GlobalOrdinal, Node > > | getColMap () const =0 |
Returns the Map that describes the column distribution in this matrix. More... | |
virtual RCP< const CrsGraph < LocalOrdinal, GlobalOrdinal, Node > > | getCrsGraph () const =0 |
Returns the CrsGraph associated with this matrix. More... | |
virtual global_size_t | getGlobalNumRows () const =0 |
Number of global elements in the row map of this matrix. More... | |
virtual global_size_t | getGlobalNumCols () const =0 |
Number of global columns in the matrix. More... | |
virtual size_t | getLocalNumRows () const =0 |
Returns the number of matrix rows owned on the calling node. More... | |
virtual global_size_t | getGlobalNumEntries () const =0 |
Returns the global number of entries in this matrix. More... | |
virtual size_t | getLocalNumEntries () const =0 |
Returns the local number of entries in this matrix. More... | |
virtual size_t | getNumEntriesInLocalRow (LocalOrdinal localRow) const =0 |
Returns the current number of entries on this node in the specified local row. More... | |
virtual size_t | getNumEntriesInGlobalRow (GlobalOrdinal globalRow) const =0 |
Returns the current number of entries in the specified global row. More... | |
virtual size_t | getGlobalMaxNumRowEntries () const =0 |
Returns the maximum number of entries across all rows/columns on all nodes. More... | |
virtual size_t | getLocalMaxNumRowEntries () const =0 |
Returns the maximum number of entries across all rows/columns on this node. More... | |
virtual bool | isLocallyIndexed () const =0 |
If matrix indices are in the local range, this function returns true. Otherwise, this function returns false. More... | |
virtual bool | isGloballyIndexed () const =0 |
If matrix indices are in the global range, this function returns true. Otherwise, this function returns false. More... | |
virtual bool | isFillComplete () const =0 |
Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called. More... | |
virtual bool | isFillActive () const =0 |
Returns true if the matrix is in edit mode. More... | |
virtual ScalarTraits< Scalar > ::magnitudeType | getFrobeniusNorm () const =0 |
Returns the Frobenius norm of the matrix. More... | |
virtual bool | supportsRowViews () const =0 |
Returns true if getLocalRowView() and getGlobalRowView() are valid for this class. More... | |
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. More... | |
virtual void | getGlobalRowCopy (GlobalOrdinal GlobalRow, const ArrayView< GlobalOrdinal > &indices, const 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. More... | |
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. More... | |
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. More... | |
virtual void | getLocalDiagOffsets (Teuchos::ArrayRCP< size_t > &offsets) const =0 |
Get offsets of the diagonal entries in the matrix. More... | |
virtual void | getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Teuchos::ArrayView< const size_t > &offsets) const =0 |
Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets. More... | |
virtual void | getLocalDiagCopy (Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag, const Kokkos::View< const size_t *, typename Node::device_type, Kokkos::MemoryUnmanaged > &offsets) const =0 |
Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets. More... | |
virtual void | replaceDiag (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &diag)=0 |
Replace the diagonal entries of the matrix. More... | |
virtual void | leftScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)=0 |
Left scale matrix using the given vector entries. More... | |
virtual void | rightScale (const Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x)=0 |
Right scale matrix using the given vector entries. More... | |
virtual void | removeEmptyProcessesInPlace (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &newMap)=0 |
virtual bool | haveGlobalConstants () const =0 |
Returns true if globalConstants have been computed; false otherwise. More... | |
Methods implementing Operator | |
virtual 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 =0 |
Computes the sparse matrix-multivector multiplication. More... | |
virtual 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 > > ®ionInterfaceImporter, const Teuchos::ArrayRCP< LocalOrdinal > ®ionInterfaceLIDs) const =0 |
Computes the sparse matrix-multivector multiplication for region layout matrices. More... | |
virtual const RCP< const Map < LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const =0 |
Returns the Map associated with the domain of this operator. This will be null until fillComplete() is called. More... | |
virtual const 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(). More... | |
Overridden from Teuchos::Describable | |
virtual std::string | description () const =0 |
A simple one-line description of this object. More... | |
virtual void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const =0 |
Print the object with some verbosity level to an FancyOStream object. More... | |
Overridden from Teuchos::LabeledObject | |
virtual void | setObjectLabel (const std::string &objectLabel)=0 |
Xpetra-specific routines | |
using | impl_scalar_type = typename Kokkos::ArithTraits< Scalar >::val_type |
using | execution_space = typename node_type::device_type |
using | local_graph_type = Kokkos::StaticCrsGraph< LocalOrdinal, Kokkos::LayoutLeft, execution_space, void, size_t > |
using | local_matrix_type = KokkosSparse::CrsMatrix< impl_scalar_type, LocalOrdinal, execution_space, void, typename local_graph_type::size_type > |
The specialization of Kokkos::CrsMatrix that represents the part of the sparse matrix on each MPI process. The same as for Tpetra. More... | |
virtual local_matrix_type | getLocalMatrixDevice () const =0 |
virtual local_matrix_type::HostMirror | getLocalMatrixHost () const =0 |
virtual void | setAllValues (const typename local_matrix_type::row_map_type &ptr, const typename local_graph_type::entries_type::non_const_type &ind, const typename local_matrix_type::values_type &val)=0 |
Definition at line 33 of file Xpetra_CrsMatrix.hpp.
typedef Scalar Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scalar_type |
Definition at line 37 of file Xpetra_CrsMatrix.hpp.
typedef LocalOrdinal Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_ordinal_type |
Definition at line 38 of file Xpetra_CrsMatrix.hpp.
typedef GlobalOrdinal Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::global_ordinal_type |
Definition at line 39 of file Xpetra_CrsMatrix.hpp.
typedef Node Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::node_type |
Definition at line 40 of file Xpetra_CrsMatrix.hpp.
using Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::impl_scalar_type = typename Kokkos::ArithTraits<Scalar>::val_type |
Definition at line 276 of file Xpetra_CrsMatrix.hpp.
using Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::execution_space = typename node_type::device_type |
Definition at line 277 of file Xpetra_CrsMatrix.hpp.
using Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_graph_type = Kokkos::StaticCrsGraph<LocalOrdinal, Kokkos::LayoutLeft, execution_space, void, size_t> |
Definition at line 284 of file Xpetra_CrsMatrix.hpp.
using Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type = KokkosSparse::CrsMatrix<impl_scalar_type, LocalOrdinal, execution_space, void, typename local_graph_type::size_type> |
The specialization of Kokkos::CrsMatrix that represents the part of the sparse matrix on each MPI process. The same as for Tpetra.
Definition at line 289 of file Xpetra_CrsMatrix.hpp.
|
inlinevirtual |
Destructor.
Definition at line 46 of file Xpetra_CrsMatrix.hpp.
|
pure virtual |
Insert matrix entries, using global IDs.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Insert matrix entries, using local IDs.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Replace matrix entries, using global IDs.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Replace matrix entries, using local IDs.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Set all matrix entries equal to scalarThis.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Scale the current values of a matrix, this = alpha*this.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Allocates and returns ArrayRCPs of the Crs arrays — This is an Xpetra-only routine.
numNonZeros | Number of non-zeros |
rowptr | Pointer to row array of Crs data |
colind | Pointer to colInd array of Crs data |
values | Pointer to value array of Crs data |
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Sets the 1D pointer arrays of the graph.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Gets the 1D pointer arrays of the graph.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Gets the 1D pointer arrays of the graph.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Signal that data entry is complete, specifying domain and range maps.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Signal that data entry is complete.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Replaces the current domainMap and importer with the user-specified objects.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Expert static fill complete.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Returns the Map that describes the row distribution in this matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the Map that describes the column distribution in this matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the CrsGraph associated with this matrix.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Number of global elements in the row map of this matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Number of global columns in the matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the number of matrix rows owned on the calling node.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the global number of entries in this matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the local number of entries in this matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the current number of entries on this node in the specified local row.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Returns the current number of entries in the specified global row.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the maximum number of entries across all rows/columns on all nodes.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the maximum number of entries across all rows/columns on this node.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
If matrix indices are in the local range, this function returns true. Otherwise, this function returns false.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
If matrix indices are in the global range, this function returns true. Otherwise, this function returns false.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns true if the matrix is in compute mode, i.e. if fillComplete() has been called.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns true if the matrix is in edit mode.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the Frobenius norm of the matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns true if getLocalRowView() and getGlobalRowView() are valid for this class.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Extract a const, non-persisting view of global indices in a specified row of the matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Extract a list of entries in a specified global row of this matrix. Put into pre-allocated storage.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Extract a const, non-persisting view of local indices in a specified row of the matrix.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Get a copy of the diagonal entries owned by this node, with local row indices.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Get offsets of the diagonal entries in the matrix.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Get a copy of the diagonal entries owned by this node, with local row indices, using row offsets.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Replace the diagonal entries of the matrix.
Implemented in Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Left scale matrix using the given vector entries.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Right scale matrix using the given vector entries.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Reimplemented from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Returns true if globalConstants have been computed; false otherwise.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Computes the sparse matrix-multivector multiplication.
This method computes Y := beta*Y + alpha*Op(A)*X
, where Op(A)
is either \(A\), \(A^T\) (the transpose), or \(A^H\) (the conjugate transpose).
[in] | X | Input vector |
[in,out] | Y | Result vector |
[in] | mode | Transpose mode |
[in] | alpha | Scaling factor |
[in] | beta | Scaling factor |
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Computes the sparse matrix-multivector multiplication for region layout matrices.
This method is for use with matrices that are in a region layout with duplicated degrees of freedom on rejgion interfaces. This method computes Y := beta*Y + alpha*Op(A)*X
, where Op(A)
is either \(A\), \(A^T\) (the transpose), or \(A^H\) (the conjugate transpose).
[in] | X | Input vector |
[in,out] | Y | Result vector |
[in] | mode | Transpose mode |
[in] | alpha | Scaling factor |
[in] | beta | Scaling factor |
[in] | sumInterfaceValues | Whether or not to sum interface values between regions after the matvec |
[in] | regionInterfaceImporter | Importer with region interface information |
[in] | regionInterfaceLIDs | Array of LIDs on region interfaces in local region format |
Implemented in Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Returns the Map associated with the domain of this operator. This will be null until fillComplete() is called.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the Map associated with the range of this operator, which must be compatible with Y.getMap().
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
A simple one-line description of this object.
Implements Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Print the object with some verbosity level to an FancyOStream object.
Implements Xpetra::DistObject< char, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Implemented in Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Implemented in Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
|
pure virtual |
Returns the number of matrix columns owned on the calling node.
Implements Xpetra::RowMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Extract a list of entries in a specified local row of the matrix. Put into storage allocated by calling routine.
Implemented in Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
|
pure virtual |
Does this have an underlying matrix.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraBlockCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Returns the block size of the storage mechanism, which is usually 1, except for Tpetra::BlockCrsMatrix.
Implemented in Xpetra::EpetraCrsMatrixT< long long, EpetraNode >, Xpetra::EpetraCrsMatrixT< int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::EpetraCrsMatrixT< EpetraGlobalOrdinal, Node >.
|
pure virtual |
Compute a residual R = B - (*this) * X.
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Implemented in Xpetra::TpetraCrsMatrix< Scalar, int, long long, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, int, int, EpetraNode >, Xpetra::TpetraCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::TpetraBlockCrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >.