#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 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 | transformEigenvalue (double &ev_r, double &ev_i) const |
Transform eigenvalue. | |
virtual NOX::Abstract::Group::ReturnType | rayleighQuotient (const NOX::Abstract::Vector &evec_r, const NOX::Abstract::Vector &evec_i, double &rq_r, double &rq_i) const |
Compute Rayleigh quotient. | |
Protected Attributes | |
Teuchos::RCP< LOCA::GlobalData > | globalData |
Global data. | |
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. |
This class implements the LOCA::AnasaziOperator::AbstractStrategy interface for computing eigenvalues of the inverse-Jacobian.
Definition at line 66 of file LOCA_AnasaziOperator_JacobianInverse.H.
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.
Definition at line 47 of file LOCA_AnasaziOperator_JacobianInverse.C.
References globalData, grp, and NOX::Abstract::Group::Ok.
LOCA::AnasaziOperator::JacobianInverse::~JacobianInverse | ( | ) | [virtual] |
const string & LOCA::AnasaziOperator::JacobianInverse::label | ( | ) | const [virtual] |
Return name of this operator.
Implements LOCA::AnasaziOperator::AbstractStrategy.
Definition at line 79 of file LOCA_AnasaziOperator_JacobianInverse.C.
References myLabel.
void LOCA::AnasaziOperator::JacobianInverse::apply | ( | const NOX::Abstract::MultiVector & | input, | |
NOX::Abstract::MultiVector & | output | |||
) | const [virtual] |
Apply the operator.
Computes .
Implements LOCA::AnasaziOperator::AbstractStrategy.
Definition at line 85 of file LOCA_AnasaziOperator_JacobianInverse.C.
References globalData, grp, and solverParams.
void LOCA::AnasaziOperator::JacobianInverse::transformEigenvalue | ( | double & | ev_r, | |
double & | ev_i | |||
) | const [virtual] |
Transform eigenvalue.
Transforms the given eigenvalue to the eigenvalue of the Jacobian by inverting it.
Implements LOCA::AnasaziOperator::AbstractStrategy.
Definition at line 96 of file LOCA_AnasaziOperator_JacobianInverse.C.
NOX::Abstract::Group::ReturnType LOCA::AnasaziOperator::JacobianInverse::rayleighQuotient | ( | const NOX::Abstract::Vector & | evec_r, | |
const NOX::Abstract::Vector & | evec_i, | |||
double & | rq_r, | |||
double & | rq_i | |||
) | const [virtual] |
Compute Rayleigh quotient.
Computes the Rayleigh quotient for the eigenvector
.
Implements LOCA::AnasaziOperator::AbstractStrategy.
Definition at line 106 of file LOCA_AnasaziOperator_JacobianInverse.C.
References NOX::Abstract::Vector::clone(), globalData, grp, NOX::Abstract::Vector::innerProduct(), NOX::Abstract::Group::Ok, NOX::ShapeCopy, tmp_i, and tmp_r.
Teuchos::RCP<LOCA::GlobalData> LOCA::AnasaziOperator::JacobianInverse::globalData [protected] |
Global data.
Definition at line 118 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by apply(), JacobianInverse(), and rayleighQuotient().
string LOCA::AnasaziOperator::JacobianInverse::myLabel [protected] |
Name of this operator.
Definition at line 121 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by label().
Teuchos::RCP<Teuchos::ParameterList> LOCA::AnasaziOperator::JacobianInverse::eigenParams [protected] |
Stores parameters relating to the operator.
Definition at line 124 of file LOCA_AnasaziOperator_JacobianInverse.H.
Teuchos::RCP<Teuchos::ParameterList> LOCA::AnasaziOperator::JacobianInverse::solverParams [protected] |
Stores linear solver parameters.
Definition at line 127 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by apply().
Teuchos::RCP<NOX::Abstract::Group> LOCA::AnasaziOperator::JacobianInverse::grp [protected] |
Stores group representing Jacobian.
Definition at line 130 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by apply(), JacobianInverse(), and rayleighQuotient().
Teuchos::RCP<NOX::Abstract::Vector> LOCA::AnasaziOperator::JacobianInverse::tmp_r [mutable, protected] |
Stores a temporary vector for computing Rayleigh quotients.
Definition at line 133 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by rayleighQuotient().
Teuchos::RCP<NOX::Abstract::Vector> LOCA::AnasaziOperator::JacobianInverse::tmp_i [mutable, protected] |
Stores a temporary vector for computing Rayleigh quotients.
Definition at line 136 of file LOCA_AnasaziOperator_JacobianInverse.H.
Referenced by rayleighQuotient().