Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
Stokhos::EpetraMultiVectorOperator Class Reference

An adaptor that supplies the operator interface to a multi-vector. More...

#include <Stokhos_EpetraMultiVectorOperator.hpp>

Inheritance diagram for Stokhos::EpetraMultiVectorOperator:
Inheritance graph
[legend]

Public Member Functions

 EpetraMultiVectorOperator (const Teuchos::RCP< const Epetra_MultiVector > &multi_vec, bool is_multi_vec_transposed)
 Constructor. More...
 
 EpetraMultiVectorOperator (const Teuchos::RCP< Epetra_MultiVector > &multi_vec, bool is_multi_vec_transposed)
 Constructor. More...
 
virtual ~EpetraMultiVectorOperator ()
 Destructor. More...
 
Teuchos::RCP< const
Epetra_MultiVector
getMultiVector () const
 
Teuchos::RCP< Epetra_MultiVectorgetMultiVector ()
 
virtual int SetUseTranspose (bool UseTranspose)
 Set to true if the transpose of the operator is requested. More...
 
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. More...
 
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. More...
 
virtual double NormInf () const
 Returns an approximate infinity norm of the operator matrix. More...
 
virtual const char * Label () const
 Returns a character string describing the operator. More...
 
virtual bool UseTranspose () const
 Returns the current UseTranspose setting. More...
 
virtual bool HasNormInf () const
 Returns true if the this object can provide an approximate Inf-norm, false otherwise. More...
 
virtual const Epetra_CommComm () const
 Returns a reference to the Epetra_Comm communicator associated with this operator. More...
 
virtual const Epetra_MapOperatorDomainMap () const
 Returns the Epetra_Map object associated with the domain of this matrix operator. More...
 
virtual const Epetra_MapOperatorRangeMap () const
 Returns the Epetra_Map object associated with the range of this matrix operator. More...
 

Protected Attributes

std::string label
 Label for operator. More...
 
Teuchos::RCP< const
Epetra_MultiVector
multi_vec
 Multi-vector. More...
 
Teuchos::RCP< Epetra_MultiVectornonconst_multi_vec
 Non-const multi-vector. More...
 
bool is_multi_vec_transposed
 Whether the multivector is already transposed. More...
 
bool useTranspose
 Flag indicating whether transpose was selected. More...
 
Teuchos::RCP< Epetra_Mapdomain_map
 Domain map ( = number of columns of multi_vec) More...
 

Private Member Functions

 EpetraMultiVectorOperator (const EpetraMultiVectorOperator &)
 Private to prohibit copying. More...
 
EpetraMultiVectorOperatoroperator= (const EpetraMultiVectorOperator &)
 Private to prohibit copying. More...
 

Detailed Description

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.

Definition at line 34 of file Stokhos_EpetraMultiVectorOperator.hpp.

Constructor & Destructor Documentation

Stokhos::EpetraMultiVectorOperator::EpetraMultiVectorOperator ( const Teuchos::RCP< const Epetra_MultiVector > &  multi_vec,
bool  is_multi_vec_transposed 
)

Constructor.

Definition at line 15 of file Stokhos_EpetraMultiVectorOperator.cpp.

Stokhos::EpetraMultiVectorOperator::EpetraMultiVectorOperator ( const Teuchos::RCP< Epetra_MultiVector > &  multi_vec,
bool  is_multi_vec_transposed 
)

Constructor.

Definition at line 30 of file Stokhos_EpetraMultiVectorOperator.cpp.

Stokhos::EpetraMultiVectorOperator::~EpetraMultiVectorOperator ( )
virtual

Destructor.

Definition at line 45 of file Stokhos_EpetraMultiVectorOperator.cpp.

Stokhos::EpetraMultiVectorOperator::EpetraMultiVectorOperator ( const EpetraMultiVectorOperator )
private

Private to prohibit copying.

Member Function Documentation

Teuchos::RCP<const Epetra_MultiVector> Stokhos::EpetraMultiVectorOperator::getMultiVector ( ) const
inline

Definition at line 52 of file Stokhos_EpetraMultiVectorOperator.hpp.

Teuchos::RCP<Epetra_MultiVector> Stokhos::EpetraMultiVectorOperator::getMultiVector ( )
inline

Definition at line 55 of file Stokhos_EpetraMultiVectorOperator.hpp.

int Stokhos::EpetraMultiVectorOperator::SetUseTranspose ( bool  UseTranspose)
virtual

Set to true if the transpose of the operator is requested.

Implements Epetra_Operator.

Definition at line 51 of file Stokhos_EpetraMultiVectorOperator.cpp.

int Stokhos::EpetraMultiVectorOperator::Apply ( const Epetra_MultiVector Input,
Epetra_MultiVector Result 
) const
virtual

Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above.

Implements Epetra_Operator.

Definition at line 63 of file Stokhos_EpetraMultiVectorOperator.cpp.

int Stokhos::EpetraMultiVectorOperator::ApplyInverse ( const Epetra_MultiVector X,
Epetra_MultiVector Y 
) const
virtual

Returns the result of the inverse of the operator applied to a Epetra_MultiVector Input in Result as described above.

Implements Epetra_Operator.

Definition at line 79 of file Stokhos_EpetraMultiVectorOperator.cpp.

double Stokhos::EpetraMultiVectorOperator::NormInf ( ) const
virtual

Returns an approximate infinity norm of the operator matrix.

Implements Epetra_Operator.

Definition at line 88 of file Stokhos_EpetraMultiVectorOperator.cpp.

const char * Stokhos::EpetraMultiVectorOperator::Label ( ) const
virtual

Returns a character string describing the operator.

Implements Epetra_Operator.

Definition at line 107 of file Stokhos_EpetraMultiVectorOperator.cpp.

bool Stokhos::EpetraMultiVectorOperator::UseTranspose ( ) const
virtual

Returns the current UseTranspose setting.

Implements Epetra_Operator.

Definition at line 114 of file Stokhos_EpetraMultiVectorOperator.cpp.

bool Stokhos::EpetraMultiVectorOperator::HasNormInf ( ) const
virtual

Returns true if the this object can provide an approximate Inf-norm, false otherwise.

Implements Epetra_Operator.

Definition at line 123 of file Stokhos_EpetraMultiVectorOperator.cpp.

const Epetra_Comm & Stokhos::EpetraMultiVectorOperator::Comm ( ) const
virtual

Returns a reference to the Epetra_Comm communicator associated with this operator.

Implements Epetra_Operator.

Definition at line 130 of file Stokhos_EpetraMultiVectorOperator.cpp.

const Epetra_Map & Stokhos::EpetraMultiVectorOperator::OperatorDomainMap ( ) const
virtual

Returns the Epetra_Map object associated with the domain of this matrix operator.

Implements Epetra_Operator.

Definition at line 136 of file Stokhos_EpetraMultiVectorOperator.cpp.

const Epetra_Map & Stokhos::EpetraMultiVectorOperator::OperatorRangeMap ( ) const
virtual

Returns the Epetra_Map object associated with the range of this matrix operator.

Implements Epetra_Operator.

Definition at line 145 of file Stokhos_EpetraMultiVectorOperator.cpp.

EpetraMultiVectorOperator& Stokhos::EpetraMultiVectorOperator::operator= ( const EpetraMultiVectorOperator )
private

Private to prohibit copying.

Member Data Documentation

std::string Stokhos::EpetraMultiVectorOperator::label
protected

Label for operator.

Definition at line 118 of file Stokhos_EpetraMultiVectorOperator.hpp.

Teuchos::RCP<const Epetra_MultiVector> Stokhos::EpetraMultiVectorOperator::multi_vec
protected

Multi-vector.

Definition at line 121 of file Stokhos_EpetraMultiVectorOperator.hpp.

Teuchos::RCP<Epetra_MultiVector> Stokhos::EpetraMultiVectorOperator::nonconst_multi_vec
protected

Non-const multi-vector.

Definition at line 124 of file Stokhos_EpetraMultiVectorOperator.hpp.

bool Stokhos::EpetraMultiVectorOperator::is_multi_vec_transposed
protected

Whether the multivector is already transposed.

Definition at line 127 of file Stokhos_EpetraMultiVectorOperator.hpp.

bool Stokhos::EpetraMultiVectorOperator::useTranspose
protected

Flag indicating whether transpose was selected.

Definition at line 130 of file Stokhos_EpetraMultiVectorOperator.hpp.

Teuchos::RCP<Epetra_Map> Stokhos::EpetraMultiVectorOperator::domain_map
protected

Domain map ( = number of columns of multi_vec)

Definition at line 133 of file Stokhos_EpetraMultiVectorOperator.hpp.


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