Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Related Functions | List of all members
CrsMatrixSolveOp Class Reference

Wrap a CrsMatrix instance's triangular solve in an Operator. More...

#include <Tpetra_CrsMatrixSolveOp.hpp>

Related Functions

(Note that these are not member functions.)

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< CrsMatrixSolveOp
< OpScalar, MatScalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
createCrsMatrixSolveOp (const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node > > &A)
 Nonmember function that wraps a CrsMatrix in a CrsMatrixSolveOp. More...
 

Detailed Description

Wrap a CrsMatrix instance's triangular solve in an Operator.

Warning
This class is DEPRECATED, along with CrsMatrix::localSolve. DO NOT USE IT ANY MORE! It may disappear at any time.
Template Parameters
ScalarSame as the first template parameter of Operator. The type of the entries of the MultiVector input and output of apply(). Not necessarily the same as the first template parameter of the CrsMatrix used to create this object.
MatScalarSame as the first template parameter of CrsMatrix. The type of the entries of the sparse matrix. Not necessarily the same as the type of the entries of the MultiVector input and output of apply().
LocalOrdinalSame as the second template parameter of CrsMatrix and Operator.
GlobalOrdinalSame as the third template parameter of CrsMatrix and Operator.
NodeSame as the fourth template parameter of CrsMatrix and Operator.

This class' apply() method does a "local" triangular solve. "Local" is in quotes because apply() does the same communication (Import and Export) operations that CrsMatrix's apply() method would do for a sparse matrix-vector multiply, but the triangular solve is restricted to each process' part of the data. Thus, it is not a triangular solve of a fully distributed triangular matrix.

Here are some situations where this operation is useful:

Friends And Related Function Documentation

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< CrsMatrixSolveOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node > > createCrsMatrixSolveOp ( const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node > > &  A)
related

Nonmember function that wraps a CrsMatrix in a CrsMatrixSolveOp.

The function has the same template parameters of CrsMatrixSolveOp.

Parameters
A[in] The CrsMatrix instance to wrap in an CrsMatrixSolveOp.
Returns
The CrsMatrixSolveOp wrapper for the given CrsMatrix.

Definition at line 381 of file Tpetra_CrsMatrixSolveOp.hpp.


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