#include <LOCA_EpetraNew_Group.H>
Inheritance diagram for LOCA::EpetraNew::Group:
Public Member Functions | |
| Group (NOX::Parameter::List &printingParams, LOCA::EpetraNew::Interface::Required &i, NOX::Epetra::Vector &initialGuess, const LOCA::ParameterVector &p) | |
| Constructor with NO linear system (VERY LIMITED). | |
| Group (NOX::Parameter::List &printingParams, LOCA::EpetraNew::Interface::Required &i, NOX::Epetra::Vector &initialGuess, NOX::EpetraNew::LinearSystem &linSys, const LOCA::ParameterVector &p) | |
| Standard Constructor. | |
| Group (const Group &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. If type is DeepCopy, takes ownership of valid shared Jacobian and shared preconditioning matrix. | |
| virtual | ~Group () |
| Destructor. | |
| virtual Group & | operator= (const Group &source) |
| Assignment operator. | |
| virtual NOX::EpetraNew::Interface::Required & | getUserInterface () |
| Return the userInterface. | |
| virtual void | printSolution (const NOX::Epetra::Vector &x, const double conParam) const |
| Call the user interface print() routine, any vector. | |
| void | setScaleVector (const NOX::Abstract::Vector &s) |
| Sets the scale vector. | |
Overloaded NOX::EpetraNew::Group methods. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
| Assignment operator. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::EpetraNew::Group &source) |
| Assignment operator. | |
| virtual NOX::Abstract::Group * | clone (NOX::CopyType type=NOX::DeepCopy) const |
| Cloning function. | |
| virtual NOX::Abstract::Group::ReturnType | computeF () |
| Overloaded computeF(). | |
| virtual NOX::Abstract::Group::ReturnType | computeJacobian () |
| Overloaded computeJacobian(). | |
Implementation of LOCA::Abstract::Group virtual methods. | |
| virtual LOCA::Abstract::Group & | operator= (const LOCA::Abstract::Group &source) |
| Assignment operator. | |
Implementation of LOCA::Continuation::AbstractGroup virtual methods. | |
| virtual void | setParams (const ParameterVector &p) |
| Set the parameters. | |
| virtual void | setParam (int paramID, double val) |
| Set parameter indexed by paramID. | |
| virtual void | setParam (string paramID, double val) |
| Set parameter indexed by paramID. | |
| const LOCA::ParameterVector & | getParams () const |
| Return a const reference to the ParameterVector owned by the group. | |
| virtual double | getParam (int paramID) const |
| Return copy of parameter indexed by paramID. | |
| virtual double | getParam (string paramID) const |
| Return copy of parameter indexed by paramID. | |
| virtual double | computeScaledDotProduct (const NOX::Abstract::Vector &a, const NOX::Abstract::Vector &b) const |
| Compute a scaled dot product. | |
| virtual void | printSolution (const double conParam) const |
| Call the user interface print() routine, solution vector. | |
| virtual void | printSolution (const NOX::Abstract::Vector &x, const double conParam) const |
| Call the user interface print() routine, any vector. | |
Protected Attributes | |
| LOCA::ParameterVector | params |
| Parameter vector. | |
| LOCA::EpetraNew::Interface::Required & | userInterface |
| Reference to the user supplied interface functions. | |
| Epetra_Vector * | tmpVectorPtr2 |
| Extra vector needed for intermediate calculations of LOCA routines. | |
| NOX::Abstract::Vector * | scaleVecPtr |
| Stores a pointer to the scale vector. | |
This class is derived both from the NOX::EpetraNew::Group and LOCA::Abstract::Group classes and therefore inherits the implementation of the NOX::Abstract::Group interface provided by NOX::EpetraNew::Group.
This class provides implementations of LOCA AbstractGroup virtual methods specific to the EpetraNew group. It stores a parameter vector for setting/retrieving parameter values (LOCA::Continuation::AbstractGroup), provides a facility for computing eigenvalues (LOCA::Continuation::AbstractGroup) using the Anasazi package, and augements the Jacobian matrix for homotopy (LOCA::Homotopy::AbstractGroup), It currently has no support for storing a mass matrix and therefore cannot be used in Hopf or generalized eigenvalue computations. Since it is derived from the LOCA::Abstract::Group (which is in-turn derived from all FiniteDifference groups), this group implicitly uses the finite-difference implementations of parameter and second derivatives provided by the FiniteDifference groups.
The computeF() and computeJacobian() methods of the NOX::EpetraNew::Group parent class are overloaded here. They both set the entire contents of the parameter vector in the problem interface before calling the NOX::EpetraNew::Group computeF() and computeJacobian().
|
||||||||||||||||||||
|
Constructor with NO linear system (VERY LIMITED). WARNING: If this constructor is used, then methods that require a Jacobian or preconditioning will not be available. You will be limited to simple algorithms like nonlinear-CG with no preconditioning. |
|
|
Overloaded computeF(). Calls LOCA::EpetraNew::Interface::setParams before evalulating F. Reimplemented from NOX::EpetraNew::Group. |
|
|
Overloaded computeJacobian(). Calls LOCA::EpetraNew::Interface::setParams before evalulating J. Reimplemented from NOX::EpetraNew::Group. |
|
||||||||||||
|
Compute a scaled dot product.
The implementation here uses the scaling vector
If the scaling vector is not provided, the standard dot product is used. Reimplemented from LOCA::Continuation::AbstractGroup. |
|
|
Extra vector needed for intermediate calculations of LOCA routines. NOTE: there already is a tmpVectorPtr in the NOX::Epetra::Group. This is a second temporary vector if that one extra isn't enough. |
1.3.9.1