Stokhos
Development
|
An adaptor that supplies the operator interface to a multi-vector. More...
#include <Stokhos_EpetraMultiVectorOperator.hpp>
Public Member Functions | |
EpetraMultiVectorOperator (const Teuchos::RCP< const Epetra_MultiVector > &multi_vec, bool is_multi_vec_transposed) | |
Constructor. | |
EpetraMultiVectorOperator (const Teuchos::RCP< Epetra_MultiVector > &multi_vec, bool is_multi_vec_transposed) | |
Constructor. | |
virtual | ~EpetraMultiVectorOperator () |
Destructor. | |
Teuchos::RCP< const Epetra_MultiVector > | getMultiVector () const |
Teuchos::RCP< Epetra_MultiVector > | getMultiVector () |
virtual int | SetUseTranspose (bool UseTranspose) |
Set to true if the transpose of the operator is requested. | |
virtual int | Apply (const Epetra_MultiVector &Input, Epetra_MultiVector &Result) const |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above. | |
virtual int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of the inverse of the operator applied to a Epetra_MultiVector Input in Result as described above. | |
virtual double | NormInf () const |
Returns an approximate infinity norm of the operator matrix. | |
virtual const char * | Label () const |
Returns a character string describing the operator. | |
virtual bool | UseTranspose () const |
Returns the current UseTranspose setting. | |
virtual bool | HasNormInf () const |
Returns true if the this object can provide an approximate Inf-norm, false otherwise. | |
virtual const Epetra_Comm & | Comm () const |
Returns a reference to the Epetra_Comm communicator associated with this operator. | |
virtual const Epetra_Map & | OperatorDomainMap () const |
Returns the Epetra_Map object associated with the domain of this matrix operator. | |
virtual const Epetra_Map & | OperatorRangeMap () const |
Returns the Epetra_Map object associated with the range of this matrix operator. | |
Protected Attributes | |
std::string | label |
Label for operator. | |
Teuchos::RCP< const Epetra_MultiVector > | multi_vec |
Multi-vector. | |
Teuchos::RCP< Epetra_MultiVector > | nonconst_multi_vec |
Non-const multi-vector. | |
bool | is_multi_vec_transposed |
Whether the multivector is already transposed. | |
bool | useTranspose |
Flag indicating whether transpose was selected. | |
Teuchos::RCP< Epetra_Map > | domain_map |
Domain map ( = number of columns of multi_vec) | |
An adaptor that supplies the operator interface to a multi-vector.
Supplies the operator interface for the operator C = op(A)*B where A, B, and C are multi-vectors, and op() is the identity or transpose operator. The convention is when the transpose is not requested, A is treated as a row-oriented multi-vector and therefore the domain map is the map of A. The corresponding range map is a local map of size given by the number of vectors When the transpose is selected, these are reversed.
This should really live somewhere else as it has nothing to do with Stokhos.