|
NOX
Development
|
Extension of the NOX::Thyra::Group to LOCA. More...
#include <LOCA_Thyra_Group.H>


Public Member Functions | |
| Group (const Teuchos::RCP< LOCA::GlobalData > &global_data, const NOX::Thyra::Vector &initial_guess, const Teuchos::RCP< ::Thyra::ModelEvaluator< double > > &model, const LOCA::ParameterVector &p, int p_index, bool implement_dfdp=false) | |
| Constructor. | |
| Group (const Group &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. If type is DeepCopy, takes ownership of valid shared Jacobian. | |
| virtual | ~Group () |
| Destructor. | |
| virtual Group & | operator= (const Group &source) |
| Assignment operator. | |
| void | setSaveDataStrategy (const Teuchos::RCP< LOCA::Thyra::SaveDataStrategy > &s) |
| Set strategy object for saving continuation data. | |
Overloaded NOX::Thyra::Group methods. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
| Assignment operator. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::Thyra::Group &source) |
| Assignment operator. | |
|
virtual Teuchos::RCP < 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::MultiContinuation::AbstractGroup virtual methods. | |
| virtual void | copy (const NOX::Abstract::Group &source) |
| Copy. | |
| virtual void | setParams (const ParameterVector &p) |
| Set the parameters. | |
| virtual void | setParam (int paramID, double val) |
| Set parameter indexed by paramID. | |
| virtual void | setParam (std::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 (std::string paramID) const |
| Return copy of parameter indexed by paramID. | |
| virtual NOX::Abstract::Group::ReturnType | computeDfDpMulti (const std::vector< int > ¶mIDs, NOX::Abstract::MultiVector &dfdp, bool isValidF) |
| virtual void | preProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus) |
| Perform any preprocessing before a continuation step starts. | |
| virtual void | postProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus) |
| Perform any postprocessing after a continuation step finishes. | |
| virtual void | projectToDraw (const NOX::Abstract::Vector &x, double *px) const |
| Projects solution to a few scalars for multiparameter continuation. | |
| virtual int | projectToDrawDimension () const |
| Returns the dimension of the project to draw array. | |
| 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. | |
| virtual void | scaleVector (NOX::Abstract::Vector &x) const |
| Scales a vector using scaling vector. | |
Implementation of LOCA::TimeDependent::AbstractGroup virtual methods. | |
|
virtual NOX::Abstract::Group::ReturnType | computeShiftedMatrix (double alpha, double beta) |
| Compute the shifted matrix. | |
|
virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrix (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Multiply the shifted matrix by a vector. | |
|
virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrixMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| Multiply the shifted matrix by a multi-vector. | |
|
virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrixInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| Apply the inverse of the shifted matrix by a multi-vector, as needed by the shift-and-invert and generalized Cayley transformations. | |
Protected Attributes | |
| Teuchos::RCP< LOCA::GlobalData > | globalData |
| Global data. | |
| LOCA::ParameterVector | params |
| Parameter vector. | |
| int | param_index |
| Parameter index in Thyra::ModelEvaluator. | |
|
Teuchos::RCP< const ::Thyra::VectorBase< double > > | param_thyra_vec |
| Pointer to Thyra vector storing parameters. | |
|
Teuchos::RCP< const ::Thyra::VectorBase< double > > | x_dot_vec |
| Pointer to x_dot vector of zeros. | |
|
Teuchos::RCP < LOCA::Thyra::SaveDataStrategy > | saveDataStrategy |
| Strategy object for saving continuation data. | |
| bool | implement_dfdp |
| Whether we should implement df/dp, or use DerivUtils. | |
Extension of the NOX::Thyra::Group to LOCA.
| NOX::Abstract::Group::ReturnType LOCA::Thyra::Group::computeDfDpMulti | ( | const std::vector< int > & | paramIDs, |
| NOX::Abstract::MultiVector & | dfdp, | ||
| bool | isValidF | ||
| ) | [virtual] |
Compute
for each parameter
indexed by paramIDs. The first column of dfdp holds F, which is valid if isValidF is true. Otherwise F must be computed.
Implements LOCA::MultiContinuation::AbstractGroup.
References Teuchos::RCP< T >::assert_not_null(), NOX::Abstract::MultiVector::clone(), LOCA::MultiContinuation::AbstractGroup::computeDfDpMulti(), NOX::Abstract::Group::Failed, NOX::Thyra::MultiVector::getThyraMultiVector(), NOX::Thyra::Vector::getThyraRCPVector(), NOX::Abstract::MultiVector::numVectors(), NOX::Abstract::Group::Ok, and NOX::Abstract::MultiVector::subView().
| double LOCA::Thyra::Group::computeScaledDotProduct | ( | const NOX::Abstract::Vector & | a, |
| const NOX::Abstract::Vector & | b | ||
| ) | const [virtual] |
Compute a scaled dot product.
The implementation here uses the standard dot product divided by the length of the vectors.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
References NOX::Abstract::Vector::innerProduct(), and NOX::Abstract::Vector::length().
| void LOCA::Thyra::Group::scaleVector | ( | NOX::Abstract::Vector & | x | ) | const [virtual] |
Scales a vector using scaling vector.
The implementation here rescales the vector by the square root of its length.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
References NOX::Abstract::Vector::length(), and NOX::Abstract::Vector::scale().
1.7.6.1