|
NOX Development
|
Anasazi operator for computing eigenvalues of the inverse-Jacobian. More...
#include <LOCA_AnasaziOperator_JacobianInverse.H>


Public Member Functions | |
| JacobianInverse (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, const Teuchos::RCP< NOX::Abstract::Group > &grp) | |
| Constructor. | |
| virtual | ~JacobianInverse () |
| Destructor. | |
| virtual const std::string & | label () const |
| Return name of this operator. | |
| virtual void | apply (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &output) const |
| Apply the operator. | |
| virtual void | beginPostProcessing () |
| Begin PostProcessing of eigenvalues. | |
| virtual void | transformEigenvalue (double &ev_r, double &ev_i) const |
| Transform eigenvalue. | |
| virtual NOX::Abstract::Group::ReturnType | rayleighQuotient (NOX::Abstract::Vector &evec_r, NOX::Abstract::Vector &evec_i, double &rq_r, double &rq_i) const |
| Compute Rayleigh quotient. | |
| Public Member Functions inherited from LOCA::AnasaziOperator::AbstractStrategy | |
| AbstractStrategy () | |
| Constructor. | |
| virtual | ~AbstractStrategy () |
| Destructor. | |
| virtual void | preProcessSeedVector (NOX::Abstract::MultiVector &) |
| Give strategy an opportunit to massage the random seed vector. | |
Protected Attributes | |
| Teuchos::RCP< LOCA::GlobalData > | globalData |
| Global data. | |
| std::string | myLabel |
| Name of this operator. | |
| Teuchos::RCP< Teuchos::ParameterList > | eigenParams |
| Stores parameters relating to the operator. | |
| Teuchos::RCP< Teuchos::ParameterList > | solverParams |
| Stores linear solver parameters. | |
| Teuchos::RCP< NOX::Abstract::Group > | grp |
| Stores group representing Jacobian. | |
| Teuchos::RCP< NOX::Abstract::Vector > | tmp_r |
| Stores a temporary vector for computing Rayleigh quotients. | |
| Teuchos::RCP< NOX::Abstract::Vector > | tmp_i |
| Stores a temporary vector for computing Rayleigh quotients. | |
Anasazi operator for computing eigenvalues of the inverse-Jacobian.
This class implements the LOCA::AnasaziOperator::AbstractStrategy interface for computing eigenvalues of the inverse-Jacobian.
| LOCA::AnasaziOperator::JacobianInverse::JacobianInverse | ( | const Teuchos::RCP< LOCA::GlobalData > & | global_data, |
| const Teuchos::RCP< LOCA::Parameter::SublistParser > & | topParams, | ||
| const Teuchos::RCP< Teuchos::ParameterList > & | eigenParams, | ||
| const Teuchos::RCP< Teuchos::ParameterList > & | solverParams, | ||
| const Teuchos::RCP< NOX::Abstract::Group > & | grp ) |
Constructor.
References eigenParams, globalData, grp, myLabel, NOX::Abstract::Group::Ok, solverParams, tmp_i, and tmp_r.
|
virtual |
Apply the operator.
Computes 
Implements LOCA::AnasaziOperator::AbstractStrategy.
References globalData, grp, and solverParams.
|
virtual |
Begin PostProcessing of eigenvalues.
Compute Jacobian matrix once, for use in subsequent repeated calls to rayleighQuotient
Reimplemented from LOCA::AnasaziOperator::AbstractStrategy.
References grp.
|
virtual |
Return name of this operator.
Implements LOCA::AnasaziOperator::AbstractStrategy.
References myLabel.
|
virtual |
Compute Rayleigh quotient.
Computes the Rayleigh quotient 

Implements LOCA::AnasaziOperator::AbstractStrategy.
References NOX::Abstract::Vector::clone(), globalData, grp, NOX::Abstract::Vector::innerProduct(), NOX::Abstract::Group::Ok, NOX::ShapeCopy, tmp_i, and tmp_r.
|
virtual |
Transform eigenvalue.
Transforms the given eigenvalue to the eigenvalue of the Jacobian by inverting it.
Implements LOCA::AnasaziOperator::AbstractStrategy.
|
protected |
Stores parameters relating to the operator.
Referenced by JacobianInverse().
|
protected |
Global data.
Referenced by apply(), JacobianInverse(), and rayleighQuotient().
|
protected |
Stores group representing Jacobian.
Referenced by apply(), beginPostProcessing(), JacobianInverse(), and rayleighQuotient().
|
protected |
Name of this operator.
Referenced by JacobianInverse(), and label().
|
protected |
Stores linear solver parameters.
Referenced by apply(), and JacobianInverse().
|
mutableprotected |
Stores a temporary vector for computing Rayleigh quotients.
Referenced by JacobianInverse(), and rayleighQuotient().
|
mutableprotected |
Stores a temporary vector for computing Rayleigh quotients.
Referenced by JacobianInverse(), and rayleighQuotient().