NOX Development
|
An Epetra operator for implementing the operator
#include <LOCA_Epetra_LowRankUpdateOp.H>
Public Member Functions | |
LowRankUpdateOp (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< Epetra_Operator > &jacOperator, const Teuchos::RCP< const Epetra_MultiVector > &U_multiVec, const Teuchos::RCP< const Epetra_MultiVector > &V_multiVec, bool setup_for_solve) | |
Constructor. | |
virtual | ~LowRankUpdateOp () |
Destructor. | |
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 |
This method does nothing. | |
virtual double | NormInf () const |
Returns an approximate infinity norm of the operator matrix. | |
virtual const char * | Label () const |
Returns a character std::string describing the operator. | |
virtual bool | UseTranspose () const |
Returns the current UseTranspose setting. Always returns false. | |
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 | |
Teuchos::RCP< LOCA::GlobalData > | globalData |
Global data object. | |
std::string | label |
Label for operator. | |
Epetra_LocalMap | localMap |
Local map for generating temporary matrices. | |
Teuchos::RCP< Epetra_Operator > | J |
Stores operator representing J. | |
Teuchos::RCP< const Epetra_MultiVector > | U |
Stores multivector representing U. | |
Teuchos::RCP< const Epetra_MultiVector > | V |
Stores multivector representing V. | |
bool | useTranspose |
Flag indicating whether to use the transpose. | |
Teuchos::RCP< Epetra_MultiVector > | tmpMat |
Temporary matrix. | |
Teuchos::RCP< Epetra_MultiVector > | JinvU |
Stores J^{-1}*U. | |
Teuchos::RCP< Epetra_MultiVector > | lu |
Stores LU factorization of I + V^T*J^{-1}*U. | |
std::vector< int > | ipiv |
Stores pivots for LU factorization. | |
Teuchos::LAPACK< int, double > | lapack |
Lapack wrappers. | |
An Epetra operator for implementing the operator
This class implements the Epetra_Operator interface for
LOCA::Epetra::LowRankUpdateOp::LowRankUpdateOp | ( | const Teuchos::RCP< LOCA::GlobalData > & | global_data, |
const Teuchos::RCP< Epetra_Operator > & | jacOperator, | ||
const Teuchos::RCP< const Epetra_MultiVector > & | U_multiVec, | ||
const Teuchos::RCP< const Epetra_MultiVector > & | V_multiVec, | ||
bool | setup_for_solve ) |
|
virtual |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector Input in Result as described above.
Implements Epetra_Operator.
References Epetra_MultiVector::Multiply(), and Epetra_MultiVector::NumVectors().
|
virtual |
This method does nothing.
Implements Epetra_Operator.
References Epetra_MultiVector::Multiply(), and Epetra_MultiVector::NumVectors().
|
virtual |
Returns a reference to the Epetra_Comm communicator associated with this operator.
Implements Epetra_Operator.
|
virtual |
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Implements Epetra_Operator.
|
virtual |
Returns a character std::string describing the operator.
Implements Epetra_Operator.
|
virtual |
Returns an approximate infinity norm of the operator matrix.
This is defined only if NormInf() of the underlying operator
Implements Epetra_Operator.
Reimplemented in LOCA::Epetra::LowRankUpdateRowMatrix.
|
virtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
Implements Epetra_Operator.
|
virtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
Implements Epetra_Operator.
|
virtual |
Set to true if the transpose of the operator is requested.
Implements Epetra_Operator.
|
virtual |
Returns the current UseTranspose setting. Always returns false.
Implements Epetra_Operator.