#include <LOCA_Homotopy_DeflatedGroup.H>
Public Member Functions | |
DeflatedGroup (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< Teuchos::ParameterList > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &hParams, const Teuchos::RCP< LOCA::Homotopy::AbstractGroup > &grp, const Teuchos::RCP< const NOX::Abstract::Vector > &start_vec, const std::vector< Teuchos::RCP< const NOX::Abstract::Vector > > &prev_solns, const double identity_sign=1.0) | |
Constructor. | |
DeflatedGroup (const DeflatedGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
Copy constructor. | |
virtual | ~DeflatedGroup () |
Destructor. | |
double | getHomotopyParam () const |
Get homotopy parameter. | |
Implementation of NOX::Abstract::Group virtual methods | |
virtual NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
Assignment operator. | |
virtual Teuchos::RCP < NOX::Abstract::Group > | clone (NOX::CopyType type=NOX::DeepCopy) const |
Clone function. | |
virtual void | setX (const NOX::Abstract::Vector &y) |
Set the solution vector to y. | |
virtual void | computeX (const NOX::Abstract::Group &g, const NOX::Abstract::Vector &d, double step) |
Compute and return solution vector, x, where this.x = grp.x + step * d. | |
virtual NOX::Abstract::Group::ReturnType | computeF () |
Compute extended continuation equations. | |
virtual NOX::Abstract::Group::ReturnType | computeJacobian () |
Compute extended continuation jacobian. | |
virtual NOX::Abstract::Group::ReturnType | computeGradient () |
Gradient is not defined for this system. | |
virtual NOX::Abstract::Group::ReturnType | computeNewton (Teuchos::ParameterList ¶ms) |
Compute Newton direction for extended continuation system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobian (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
Applies Jacobian for extended system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobianTranspose (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
Jacobian transpose not defined for this system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobianInverse (Teuchos::ParameterList ¶ms, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
Applies Jacobian inverse for extended system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobianMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
Applies Jacobian for extended system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobianTransposeMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
Jacobian transpose not defined for this system. | |
virtual NOX::Abstract::Group::ReturnType | applyJacobianInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
Applies Jacobian inverse for extended system. | |
virtual bool | isF () const |
Return true if extended residual is valid. | |
virtual bool | isJacobian () const |
Return true if the extended Jacobian is valid. | |
virtual bool | isGradient () const |
Always returns false. | |
virtual bool | isNewton () const |
Return true if the extended Newton direction is valid. | |
virtual const NOX::Abstract::Vector & | getX () const |
Return extended solution vector. | |
virtual const NOX::Abstract::Vector & | getF () const |
Return extended residual. | |
virtual double | getNormF () const |
Return 2-norm of extended residual. | |
virtual const NOX::Abstract::Vector & | getGradient () const |
Gradient is never valid. | |
virtual const NOX::Abstract::Vector & | getNewton () const |
Return extended Newton direction. | |
virtual double | getNormNewtonSolveResidual () const |
Returns 2-norm of extended Newton solve residual. | |
Implementation of LOCA::Extended::MultiAbstractGroup | |
virtual methods | |
virtual Teuchos::RCP< const LOCA::MultiContinuation::AbstractGroup > | getUnderlyingGroup () const |
Return underlying group. | |
virtual Teuchos::RCP < LOCA::MultiContinuation::AbstractGroup > | getUnderlyingGroup () |
Return underlying group. | |
Implementation of LOCA::MultiContinuation::AbstractGroup | |
virtual methods | |
virtual void | copy (const NOX::Abstract::Group &source) |
Assignment operator. | |
virtual void | setParamsMulti (const vector< int > ¶mIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals) |
Set parameters indexed by (integer) paramIDs. | |
virtual void | setParams (const ParameterVector &p) |
Set the parameter vector in the group to p (pVector = p). | |
virtual void | setParam (int paramID, double val) |
Set parameter indexed by (integer) paramID. | |
virtual void | setParam (string paramID, double val) |
Set parameter indexed by (string) paramID. | |
virtual const 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 (integer) paramID. | |
virtual double | getParam (string paramID) const |
Return copy of parameter indexed by (string) paramID. | |
virtual NOX::Abstract::Group::ReturnType | computeDfDpMulti (const 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 |
Function to print out solution and parameter after successful step. | |
virtual void | printSolution (const NOX::Abstract::Vector &x, const double conParam) const |
Function to print out a vector and parameter after successful step. | |
virtual void | scaleVector (NOX::Abstract::Vector &x) const |
Scales a vector using scaling vector. | |
Implementation of | |
virtual int | getBorderedWidth () const |
Return the total width of the bordered rows/columns. | |
virtual Teuchos::RCP< const NOX::Abstract::Group > | getUnborderedGroup () const |
Get bottom-level unbordered group. | |
virtual bool | isCombinedAZero () const |
Indicates whether combined A block is zero. | |
virtual bool | isCombinedBZero () const |
Indicates whether combined B block is zero. | |
virtual bool | isCombinedCZero () const |
Indicates whether combined C block is zero. | |
virtual void | extractSolutionComponent (const NOX::Abstract::MultiVector &v, NOX::Abstract::MultiVector &v_x) const |
virtual void | extractParameterComponent (bool use_transpose, const NOX::Abstract::MultiVector &v, NOX::Abstract::MultiVector::DenseMatrix &v_p) const |
virtual void | loadNestedComponents (const NOX::Abstract::MultiVector &v_x, const NOX::Abstract::MultiVector::DenseMatrix &v_p, NOX::Abstract::MultiVector &v) const |
virtual void | fillA (NOX::Abstract::MultiVector &A) const |
Fill the combined A block as described above. | |
virtual void | fillB (NOX::Abstract::MultiVector &B) const |
Fill the combined B block as described above. | |
virtual void | fillC (NOX::Abstract::MultiVector::DenseMatrix &C) const |
Fill the combined C block as described above. | |
Protected Member Functions | |
virtual void | resetIsValid () |
Resets all isValid flags to false. | |
virtual void | setupViews () |
Sets up multivector views. | |
void | setHomotopyParam (double param) |
Set homotopy parameter. | |
void | setStepperParameters (Teuchos::ParameterList &topParams) |
Creates and sets the "Stepper" parameter sublist. | |
Protected Attributes | |
Teuchos::RCP< LOCA::GlobalData > | globalData |
Pointer LOCA global data object. | |
Teuchos::RCP < LOCA::Parameter::SublistParser > | parsedParams |
Parsed top-level parameters. | |
Teuchos::RCP < Teuchos::ParameterList > | homotopyParams |
Pitchfork parameter list. | |
Teuchos::RCP < LOCA::Homotopy::AbstractGroup > | grpPtr |
Pointer to base group that defines ![]() | |
Teuchos::RCP < LOCA::BorderedSystem::AbstractGroup > | bordered_grp |
Pointer to base group as a bordered group. | |
LOCA::MultiContinuation::ExtendedMultiVector | xMultiVec |
Stores the extended solution vector. | |
LOCA::MultiContinuation::ExtendedMultiVector | fMultiVec |
Stores the extended residual vector. | |
LOCA::MultiContinuation::ExtendedMultiVector | newtonMultiVec |
Stores the extended Newton vector. | |
LOCA::MultiContinuation::ExtendedMultiVector | gradientMultiVec |
Stores the extended gradient vector. | |
Teuchos::RCP < LOCA::MultiContinuation::ExtendedVector > | xVec |
Stores view of first column of xMultiVec. | |
Teuchos::RCP < LOCA::MultiContinuation::ExtendedVector > | fVec |
Stores view of first column of fMultiVec. | |
Teuchos::RCP < LOCA::MultiContinuation::ExtendedVector > | newtonVec |
Stores view of first column of newtonMultiVec. | |
Teuchos::RCP < LOCA::MultiContinuation::ExtendedVector > | gradientVec |
Stores view of first column of gradientMultiVec. | |
Teuchos::RCP< const NOX::Abstract::Vector > | startVec |
Stores the starting vector, ![]() | |
double | identitySign |
std::vector< Teuchos::RCP < const NOX::Abstract::Vector > > | solns |
Stores array of deflated solution vectors. | |
Teuchos::RCP < NOX::Abstract::Vector > | distVec |
Temporary vector for storing distance. | |
Teuchos::RCP < NOX::Abstract::MultiVector > | totalDistMultiVec |
Temporary vector for storing sum of distances. | |
Teuchos::RCP < NOX::Abstract::Vector > | totalDistVec |
Temporary vector for storing sum of distances. | |
Teuchos::RCP < NOX::Abstract::MultiVector > | underlyingF |
underlying group's F vector as a multivector | |
Teuchos::RCP < LOCA::BorderedSolver::JacobianOperator > | jacOp |
Teuchos::RCP < LOCA::BorderedSolver::AbstractStrategy > | borderedSolver |
Stores bordered solver strategy. | |
Teuchos::RCP < NOX::Abstract::MultiVector::DenseMatrix > | minusOne |
Stores -1. | |
int | numSolns |
Number of previous solutions. | |
std::vector< double > | distances |
Array of distances from previous solutions. | |
double | distProd |
Product of distances. | |
vector< int > | index_f |
Stores indices for getting f part of fMultiVec. | |
LOCA::ParameterVector | paramVec |
Copy of the ParameterVector for the underlying grpPtr. | |
double | conParam |
Value of the homotopy continuation parameter. | |
int | conParamID |
Continuatioin parameter ID number from the ParameterVector. | |
const string | conParamLabel |
Contains the string used to identify the homotopy parameter in the ParameterVector object. | |
bool | augmentJacForHomotopyNotImplemented |
Tracks whether the LOCA::Homotopy::Group method augmentJacobianForHomotopy is implemented. If not, the augmentation is applied during the applyJacobian assuming a matrix-free implementation. | |
bool | isValidF |
Is residual vector valid. | |
bool | isValidJacobian |
Is Jacobian matrix valid. | |
bool | isValidNewton |
Is Newton vector valid. | |
bool | isValidGradient |
Is Gradient vector valid. | |
bool | isBordered |
Flag that indicates whether underlying group is a bordered group. | |
Private Member Functions | |
DeflatedGroup & | operator= (const DeflatedGroup &source) |
Prevent generation and use of operator=(). |
The HomotopyGroup is a concrete implementation of the LOCA::Continuation::AbstractGroup that modifies the set of nonlinear equations to be solved to allow for Homotopy to be applied to the system. This object should be used in conjunction with the LOCA::Stepper object to drive the continuation. This algorithm solves a system of nonlinear equations supplied by the user () through continuation. An artificial parameter
is used to control the continuation. The idea is to solve a simple equation starting at
= 0 and, using the solution from the previous step, solve systems of equations that gets progressively closer to the true system of interest ( at
= 1.0 we recover the original equations
). By constraining the definition of
and using artificial parameter contiuation, the continuation branch should be free of multiplicity and bifurcation phenomena.
The modified system of equations, , supplied by the HomotopyGroup is defined as:
where is the solution vector,
is an artificial parameter,
is the set of nonlinear equations the user supplies,
is the corresponding set of homotopy equations that LOCA will solve,
is a random vector, and
is a scaling factor used to switch sign of the last term (typically valued 1.0 or -1.0).
This group requires the loca Stepper for continuation from = 0.0 (a simple set of equations to solve) to
= 1.0 (the set of equations requested by the user,
). The Homotopy::Group will generate the Stepper parameter sublist in the parameter list that is passed in to the constructor. The user is free to modify this list (it sets default values) before passing it into the stepper object but should NOT change the starting and stopping values for the continuation parameter.
References:
Definition at line 124 of file LOCA_Homotopy_DeflatedGroup.H.
LOCA::Homotopy::DeflatedGroup::DeflatedGroup | ( | const Teuchos::RCP< LOCA::GlobalData > & | global_data, | |
const Teuchos::RCP< Teuchos::ParameterList > & | topParams, | |||
const Teuchos::RCP< Teuchos::ParameterList > & | hParams, | |||
const Teuchos::RCP< LOCA::Homotopy::AbstractGroup > & | grp, | |||
const Teuchos::RCP< const NOX::Abstract::Vector > & | start_vec, | |||
const std::vector< Teuchos::RCP< const NOX::Abstract::Vector > > & | prev_solns, | |||
const double | identity_sign = 1.0 | |||
) |
Constructor.
global_data | [in] Global data object | |
topParams | [in] Parsed top-level parameter list. | |
hParams | [in] Homotopy parameters | |
grp | [in] Group representing ![]() |
Definition at line 57 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::ParameterVector::addParameter(), bordered_grp, borderedSolver, conParam, conParamID, conParamLabel, LOCA::ParameterVector::getIndex(), globalData, grpPtr, homotopyParams, isBordered, minusOne, paramVec, parsedParams, setStepperParameters(), setupViews(), startVec, and xVec.
Referenced by clone().
LOCA::Homotopy::DeflatedGroup::DeflatedGroup | ( | const DeflatedGroup & | source, | |
NOX::CopyType | type = NOX::DeepCopy | |||
) |
Copy constructor.
Definition at line 144 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, borderedSolver, globalData, grpPtr, homotopyParams, isBordered, isValidF, isValidGradient, isValidJacobian, isValidNewton, minusOne, parsedParams, setupViews(), NOX::ShapeCopy, totalDistMultiVec, and underlyingF.
LOCA::Homotopy::DeflatedGroup::~DeflatedGroup | ( | ) | [virtual] |
double LOCA::Homotopy::DeflatedGroup::getHomotopyParam | ( | ) | const |
Get homotopy parameter.
Definition at line 226 of file LOCA_Homotopy_DeflatedGroup.C.
References conParam.
NOX::Abstract::Group & LOCA::Homotopy::DeflatedGroup::operator= | ( | const NOX::Abstract::Group & | source | ) | [virtual] |
Assignment operator.
Implements NOX::Abstract::Group.
Definition at line 233 of file LOCA_Homotopy_DeflatedGroup.C.
References copy().
Teuchos::RCP< NOX::Abstract::Group > LOCA::Homotopy::DeflatedGroup::clone | ( | NOX::CopyType | type = NOX::DeepCopy |
) | const [virtual] |
Clone function.
Implements NOX::Abstract::Group.
Definition at line 241 of file LOCA_Homotopy_DeflatedGroup.C.
References DeflatedGroup().
void LOCA::Homotopy::DeflatedGroup::setX | ( | const NOX::Abstract::Vector & | y | ) | [virtual] |
Set the solution vector to y.
Implements NOX::Abstract::Group.
Definition at line 248 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::MultiContinuation::ExtendedVector::getXVec(), grpPtr, resetIsValid(), and xVec.
void LOCA::Homotopy::DeflatedGroup::computeX | ( | const NOX::Abstract::Group & | g, | |
const NOX::Abstract::Vector & | d, | |||
double | step | |||
) | [virtual] |
Compute and return solution vector, x, where this.x = grp.x + step * d.
Implements NOX::Abstract::Group.
Definition at line 261 of file LOCA_Homotopy_DeflatedGroup.C.
References getX(), LOCA::MultiContinuation::ExtendedVector::getXVec(), grpPtr, resetIsValid(), and xVec.
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::computeF | ( | ) | [virtual] |
Compute extended continuation equations.
Implements NOX::Abstract::Group.
Definition at line 278 of file LOCA_Homotopy_DeflatedGroup.C.
References conParam, distances, distProd, distVec, fVec, globalData, grpPtr, isValidF, numSolns, NOX::Abstract::Group::Ok, solns, and startVec.
Referenced by computeGradient(), and computeNewton().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::computeJacobian | ( | ) | [virtual] |
Compute extended continuation jacobian.
Reimplemented from NOX::Abstract::Group.
Definition at line 316 of file LOCA_Homotopy_DeflatedGroup.C.
References augmentJacForHomotopyNotImplemented, borderedSolver, conParam, distances, distProd, distVec, globalData, grpPtr, isValidJacobian, minusOne, NOX::Abstract::Group::NotDefined, numSolns, NOX::Abstract::Group::Ok, solns, totalDistMultiVec, totalDistVec, and underlyingF.
Referenced by computeGradient(), and computeNewton().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::computeGradient | ( | ) | [virtual] |
Gradient is not defined for this system.
Reimplemented from NOX::Abstract::Group.
Definition at line 371 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobianTranspose(), computeF(), computeJacobian(), fVec, globalData, gradientVec, isF(), isJacobian(), isValidGradient, and NOX::Abstract::Group::Ok.
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::computeNewton | ( | Teuchos::ParameterList & | params | ) | [virtual] |
Compute Newton direction for extended continuation system.
Reimplemented from NOX::Abstract::Group.
Definition at line 413 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobianInverseMultiVector(), computeF(), computeJacobian(), fMultiVec, globalData, LOCA::Extended::MultiVector::init(), isF(), isJacobian(), isValidNewton, newtonMultiVec, NOX::Abstract::Group::Ok, and LOCA::Extended::MultiVector::scale().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobian | ( | const NOX::Abstract::Vector & | input, | |
NOX::Abstract::Vector & | result | |||
) | const [virtual] |
Applies Jacobian for extended system.
Reimplemented from NOX::Abstract::Group.
Definition at line 460 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobianMultiVector(), NOX::Abstract::Vector::createMultiVector(), and NOX::DeepCopy.
Referenced by getNormNewtonSolveResidual().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobianTranspose | ( | const NOX::Abstract::Vector & | input, | |
NOX::Abstract::Vector & | result | |||
) | const [virtual] |
Jacobian transpose not defined for this system.
Reimplemented from NOX::Abstract::Group.
Definition at line 481 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobianTransposeMultiVector(), NOX::Abstract::Vector::createMultiVector(), and NOX::DeepCopy.
Referenced by computeGradient().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobianInverse | ( | Teuchos::ParameterList & | params, | |
const NOX::Abstract::Vector & | input, | |||
NOX::Abstract::Vector & | result | |||
) | const [virtual] |
Applies Jacobian inverse for extended system.
Reimplemented from NOX::Abstract::Group.
Definition at line 502 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobianInverseMultiVector(), NOX::Abstract::Vector::createMultiVector(), and NOX::DeepCopy.
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobianMultiVector | ( | const NOX::Abstract::MultiVector & | input, | |
NOX::Abstract::MultiVector & | result | |||
) | const [virtual] |
Applies Jacobian for extended system.
Reimplemented from NOX::Abstract::Group.
Definition at line 524 of file LOCA_Homotopy_DeflatedGroup.C.
References augmentJacForHomotopyNotImplemented, conParam, distProd, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), globalData, grpPtr, isJacobian(), numSolns, NOX::Abstract::MultiVector::numVectors(), totalDistMultiVec, and underlyingF.
Referenced by applyJacobian().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobianTransposeMultiVector | ( | const NOX::Abstract::MultiVector & | input, | |
NOX::Abstract::MultiVector & | result | |||
) | const [virtual] |
Jacobian transpose not defined for this system.
Reimplemented from NOX::Abstract::Group.
Definition at line 575 of file LOCA_Homotopy_DeflatedGroup.C.
References augmentJacForHomotopyNotImplemented, conParam, distProd, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), globalData, grpPtr, isJacobian(), numSolns, NOX::Abstract::MultiVector::numVectors(), totalDistMultiVec, and underlyingF.
Referenced by applyJacobianTranspose().
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::applyJacobianInverseMultiVector | ( | Teuchos::ParameterList & | params, | |
const NOX::Abstract::MultiVector & | input, | |||
NOX::Abstract::MultiVector & | result | |||
) | const [virtual] |
Applies Jacobian inverse for extended system.
Reimplemented from NOX::Abstract::Group.
Definition at line 626 of file LOCA_Homotopy_DeflatedGroup.C.
References borderedSolver, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), globalData, grpPtr, isJacobian(), and numSolns.
Referenced by applyJacobianInverse(), and computeNewton().
bool LOCA::Homotopy::DeflatedGroup::isF | ( | ) | const [virtual] |
Return true
if extended residual is valid.
Implements NOX::Abstract::Group.
Definition at line 673 of file LOCA_Homotopy_DeflatedGroup.C.
References isValidF.
Referenced by computeGradient(), and computeNewton().
bool LOCA::Homotopy::DeflatedGroup::isJacobian | ( | ) | const [virtual] |
Return true
if the extended Jacobian is valid.
Reimplemented from NOX::Abstract::Group.
Definition at line 680 of file LOCA_Homotopy_DeflatedGroup.C.
References isValidJacobian.
Referenced by applyJacobianInverseMultiVector(), applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeGradient(), and computeNewton().
bool LOCA::Homotopy::DeflatedGroup::isGradient | ( | ) | const [virtual] |
Always returns false.
Reimplemented from NOX::Abstract::Group.
Definition at line 687 of file LOCA_Homotopy_DeflatedGroup.C.
References isValidGradient.
bool LOCA::Homotopy::DeflatedGroup::isNewton | ( | ) | const [virtual] |
Return true
if the extended Newton direction is valid.
Reimplemented from NOX::Abstract::Group.
Definition at line 694 of file LOCA_Homotopy_DeflatedGroup.C.
References isValidNewton.
const NOX::Abstract::Vector & LOCA::Homotopy::DeflatedGroup::getX | ( | ) | const [virtual] |
Return extended solution vector.
Implements NOX::Abstract::Group.
Definition at line 701 of file LOCA_Homotopy_DeflatedGroup.C.
References xVec.
Referenced by computeX().
const NOX::Abstract::Vector & LOCA::Homotopy::DeflatedGroup::getF | ( | ) | const [virtual] |
Return extended residual.
Implements NOX::Abstract::Group.
Definition at line 708 of file LOCA_Homotopy_DeflatedGroup.C.
References fVec.
double LOCA::Homotopy::DeflatedGroup::getNormF | ( | ) | const [virtual] |
Return 2-norm of extended residual.
Implements NOX::Abstract::Group.
Definition at line 715 of file LOCA_Homotopy_DeflatedGroup.C.
References fVec.
const NOX::Abstract::Vector & LOCA::Homotopy::DeflatedGroup::getGradient | ( | ) | const [virtual] |
Gradient is never valid.
Implements NOX::Abstract::Group.
Definition at line 722 of file LOCA_Homotopy_DeflatedGroup.C.
References gradientVec.
const NOX::Abstract::Vector & LOCA::Homotopy::DeflatedGroup::getNewton | ( | ) | const [virtual] |
Return extended Newton direction.
Implements NOX::Abstract::Group.
Definition at line 729 of file LOCA_Homotopy_DeflatedGroup.C.
References newtonVec.
double LOCA::Homotopy::DeflatedGroup::getNormNewtonSolveResidual | ( | ) | const [virtual] |
Returns 2-norm of extended Newton solve residual.
Definition at line 736 of file LOCA_Homotopy_DeflatedGroup.C.
References applyJacobian(), fVec, globalData, newtonVec, LOCA::Extended::Vector::norm(), and LOCA::Extended::Vector::update().
Teuchos::RCP< const LOCA::MultiContinuation::AbstractGroup > LOCA::Homotopy::DeflatedGroup::getUnderlyingGroup | ( | ) | const [virtual] |
Return underlying group.
Implements LOCA::Extended::MultiAbstractGroup.
Definition at line 752 of file LOCA_Homotopy_DeflatedGroup.C.
References grpPtr.
Teuchos::RCP< LOCA::MultiContinuation::AbstractGroup > LOCA::Homotopy::DeflatedGroup::getUnderlyingGroup | ( | ) | [virtual] |
Return underlying group.
Implements LOCA::Extended::MultiAbstractGroup.
Definition at line 759 of file LOCA_Homotopy_DeflatedGroup.C.
References grpPtr.
void LOCA::Homotopy::DeflatedGroup::copy | ( | const NOX::Abstract::Group & | source | ) | [virtual] |
Assignment operator.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 766 of file LOCA_Homotopy_DeflatedGroup.C.
References augmentJacForHomotopyNotImplemented, borderedSolver, conParam, conParamID, distances, distProd, distVec, fMultiVec, globalData, gradientMultiVec, grpPtr, homotopyParams, index_f, isValidF, isValidGradient, isValidJacobian, isValidNewton, minusOne, newtonMultiVec, numSolns, paramVec, parsedParams, setupViews(), solns, startVec, totalDistMultiVec, underlyingF, and xMultiVec.
Referenced by operator=().
void LOCA::Homotopy::DeflatedGroup::setParamsMulti | ( | const vector< int > & | paramIDs, | |
const NOX::Abstract::MultiVector::DenseMatrix & | vals | |||
) | [virtual] |
Set parameters indexed by (integer) paramIDs.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 824 of file LOCA_Homotopy_DeflatedGroup.C.
References conParam, conParamID, grpPtr, paramVec, and resetIsValid().
void LOCA::Homotopy::DeflatedGroup::setParams | ( | const ParameterVector & | p | ) | [virtual] |
Set the parameter vector in the group to p (pVector = p).
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 840 of file LOCA_Homotopy_DeflatedGroup.C.
References conParamID, grpPtr, resetIsValid(), and xVec.
void LOCA::Homotopy::DeflatedGroup::setParam | ( | int | paramID, | |
double | val | |||
) | [virtual] |
Set parameter indexed by (integer) paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 850 of file LOCA_Homotopy_DeflatedGroup.C.
References conParam, conParamID, grpPtr, paramVec, and resetIsValid().
Referenced by setParam().
void LOCA::Homotopy::DeflatedGroup::setParam | ( | string | paramID, | |
double | val | |||
) | [virtual] |
Set parameter indexed by (string) paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 862 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::ParameterVector::getIndex(), paramVec, and setParam().
const LOCA::ParameterVector & LOCA::Homotopy::DeflatedGroup::getParams | ( | ) | const [virtual] |
Return a const reference to the ParameterVector owned by the group.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 870 of file LOCA_Homotopy_DeflatedGroup.C.
References paramVec.
double LOCA::Homotopy::DeflatedGroup::getParam | ( | int | paramID | ) | const [virtual] |
Return copy of parameter indexed by (integer) paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 877 of file LOCA_Homotopy_DeflatedGroup.C.
References paramVec.
double LOCA::Homotopy::DeflatedGroup::getParam | ( | string | paramID | ) | const [virtual] |
Return copy of parameter indexed by (string) paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
Definition at line 883 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::ParameterVector::getValue(), and paramVec.
NOX::Abstract::Group::ReturnType LOCA::Homotopy::DeflatedGroup::computeDfDpMulti | ( | const 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.
Definition at line 890 of file LOCA_Homotopy_DeflatedGroup.C.
References conParam, conParamID, distProd, distVec, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), globalData, grpPtr, NOX::Abstract::Group::Ok, and startVec.
void LOCA::Homotopy::DeflatedGroup::preProcessContinuationStep | ( | LOCA::Abstract::Iterator::StepStatus | stepStatus | ) | [virtual] |
Perform any preprocessing before a continuation step starts.
The stepStatus
argument indicates whether the previous step was successful.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 954 of file LOCA_Homotopy_DeflatedGroup.C.
References grpPtr.
void LOCA::Homotopy::DeflatedGroup::postProcessContinuationStep | ( | LOCA::Abstract::Iterator::StepStatus | stepStatus | ) | [virtual] |
Perform any postprocessing after a continuation step finishes.
The stepStatus
argument indicates whether the step was successful.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 961 of file LOCA_Homotopy_DeflatedGroup.C.
References grpPtr.
void LOCA::Homotopy::DeflatedGroup::projectToDraw | ( | const NOX::Abstract::Vector & | x, | |
double * | px | |||
) | const [virtual] |
Projects solution to a few scalars for multiparameter continuation.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 968 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::Extended::Vector::getScalar(), LOCA::MultiContinuation::ExtendedVector::getXVec(), and grpPtr.
int LOCA::Homotopy::DeflatedGroup::projectToDrawDimension | ( | ) | const [virtual] |
Returns the dimension of the project to draw array.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 980 of file LOCA_Homotopy_DeflatedGroup.C.
References grpPtr.
double LOCA::Homotopy::DeflatedGroup::computeScaledDotProduct | ( | const NOX::Abstract::Vector & | a, | |
const NOX::Abstract::Vector & | b | |||
) | const [virtual] |
Compute a scaled dot product.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 987 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::Extended::Vector::getScalar(), LOCA::MultiContinuation::ExtendedVector::getXVec(), and grpPtr.
void LOCA::Homotopy::DeflatedGroup::printSolution | ( | const double | conParam | ) | const [virtual] |
Function to print out solution and parameter after successful step.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 1003 of file LOCA_Homotopy_DeflatedGroup.C.
References globalData, grpPtr, and NOX::Utils::StepperDetails.
void LOCA::Homotopy::DeflatedGroup::printSolution | ( | const NOX::Abstract::Vector & | x, | |
const double | conParam | |||
) | const [virtual] |
Function to print out a vector and parameter after successful step.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 1016 of file LOCA_Homotopy_DeflatedGroup.C.
References globalData, grpPtr, and NOX::Utils::StepperDetails.
void LOCA::Homotopy::DeflatedGroup::scaleVector | ( | NOX::Abstract::Vector & | x | ) | const [virtual] |
Scales a vector using scaling vector.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
Definition at line 1030 of file LOCA_Homotopy_DeflatedGroup.C.
References LOCA::MultiContinuation::ExtendedVector::getXVec(), and grpPtr.
int LOCA::Homotopy::DeflatedGroup::getBorderedWidth | ( | ) | const [virtual] |
Return the total width of the bordered rows/columns.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1040 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, and isBordered.
Teuchos::RCP< const NOX::Abstract::Group > LOCA::Homotopy::DeflatedGroup::getUnborderedGroup | ( | ) | const [virtual] |
Get bottom-level unbordered group.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1051 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, grpPtr, and isBordered.
bool LOCA::Homotopy::DeflatedGroup::isCombinedAZero | ( | ) | const [virtual] |
Indicates whether combined A block is zero.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1061 of file LOCA_Homotopy_DeflatedGroup.C.
bool LOCA::Homotopy::DeflatedGroup::isCombinedBZero | ( | ) | const [virtual] |
Indicates whether combined B block is zero.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1068 of file LOCA_Homotopy_DeflatedGroup.C.
bool LOCA::Homotopy::DeflatedGroup::isCombinedCZero | ( | ) | const [virtual] |
Indicates whether combined C block is zero.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1075 of file LOCA_Homotopy_DeflatedGroup.C.
void LOCA::Homotopy::DeflatedGroup::extractSolutionComponent | ( | const NOX::Abstract::MultiVector & | v, | |
NOX::Abstract::MultiVector & | v_x | |||
) | const [virtual] |
Given the vector v
, extract the underlying solution component corresponding to the unbordered group.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1082 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), and isBordered.
void LOCA::Homotopy::DeflatedGroup::extractParameterComponent | ( | bool | use_transpose, | |
const NOX::Abstract::MultiVector & | v, | |||
NOX::Abstract::MultiVector::DenseMatrix & | v_p | |||
) | const [virtual] |
Given the vector v
, extract the parameter components of all of the nested subvectors in v
down to the solution component for the unbordered group.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1105 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), and isBordered.
void LOCA::Homotopy::DeflatedGroup::loadNestedComponents | ( | const NOX::Abstract::MultiVector & | v_x, | |
const NOX::Abstract::MultiVector::DenseMatrix & | v_p, | |||
NOX::Abstract::MultiVector & | v | |||
) | const [virtual] |
Given the solution component v_x
and combined parameter components v_p
, distribute these components through the nested sub-vectors in v
.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1163 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, LOCA::Extended::MultiVector::getScalars(), LOCA::MultiContinuation::ExtendedMultiVector::getXMultiVec(), and isBordered.
void LOCA::Homotopy::DeflatedGroup::fillA | ( | NOX::Abstract::MultiVector & | A | ) | const [virtual] |
Fill the combined A block as described above.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1201 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, isBordered, NOX::Abstract::MultiVector::subView(), and underlyingF.
void LOCA::Homotopy::DeflatedGroup::fillB | ( | NOX::Abstract::MultiVector & | B | ) | const [virtual] |
Fill the combined B block as described above.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1239 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, isBordered, NOX::Abstract::MultiVector::subView(), and totalDistMultiVec.
void LOCA::Homotopy::DeflatedGroup::fillC | ( | NOX::Abstract::MultiVector::DenseMatrix & | C | ) | const [virtual] |
Fill the combined C block as described above.
Implements LOCA::BorderedSystem::AbstractGroup.
Definition at line 1277 of file LOCA_Homotopy_DeflatedGroup.C.
References bordered_grp, isBordered, minusOne, totalDistMultiVec, and underlyingF.
void LOCA::Homotopy::DeflatedGroup::resetIsValid | ( | ) | [protected, virtual] |
Resets all isValid flags to false.
Definition at line 1325 of file LOCA_Homotopy_DeflatedGroup.C.
References isValidF, isValidGradient, isValidJacobian, and isValidNewton.
Referenced by computeX(), setHomotopyParam(), setParam(), setParams(), setParamsMulti(), and setX().
void LOCA::Homotopy::DeflatedGroup::setupViews | ( | ) | [protected, virtual] |
Sets up multivector views.
Definition at line 1335 of file LOCA_Homotopy_DeflatedGroup.C.
References fMultiVec, fVec, LOCA::Extended::MultiVector::getVector(), gradientMultiVec, gradientVec, index_f, newtonMultiVec, newtonVec, totalDistMultiVec, totalDistVec, xMultiVec, and xVec.
Referenced by copy(), and DeflatedGroup().
void LOCA::Homotopy::DeflatedGroup::setHomotopyParam | ( | double | param | ) | [protected] |
Set homotopy parameter.
Definition at line 1348 of file LOCA_Homotopy_DeflatedGroup.C.
References conParamID, paramVec, resetIsValid(), and xVec.
void LOCA::Homotopy::DeflatedGroup::setStepperParameters | ( | Teuchos::ParameterList & | topParams | ) | [protected] |
Creates and sets the "Stepper" parameter sublist.
Definition at line 1358 of file LOCA_Homotopy_DeflatedGroup.C.
References conParamLabel.
Referenced by DeflatedGroup().
DeflatedGroup& LOCA::Homotopy::DeflatedGroup::operator= | ( | const DeflatedGroup & | source | ) | [private] |
Prevent generation and use of operator=().
Teuchos::RCP<LOCA::GlobalData> LOCA::Homotopy::DeflatedGroup::globalData [protected] |
Pointer LOCA global data object.
Definition at line 449 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianInverseMultiVector(), applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeDfDpMulti(), computeF(), computeGradient(), computeJacobian(), computeNewton(), copy(), DeflatedGroup(), getNormNewtonSolveResidual(), and printSolution().
Teuchos::RCP<LOCA::Parameter::SublistParser> LOCA::Homotopy::DeflatedGroup::parsedParams [protected] |
Parsed top-level parameters.
Definition at line 452 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), and DeflatedGroup().
Teuchos::RCP<Teuchos::ParameterList> LOCA::Homotopy::DeflatedGroup::homotopyParams [protected] |
Pitchfork parameter list.
Definition at line 455 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), and DeflatedGroup().
Teuchos::RCP<LOCA::Homotopy::AbstractGroup> LOCA::Homotopy::DeflatedGroup::grpPtr [protected] |
Pointer to base group that defines .
Definition at line 458 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianInverseMultiVector(), applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeDfDpMulti(), computeF(), computeJacobian(), computeScaledDotProduct(), computeX(), copy(), DeflatedGroup(), getUnborderedGroup(), getUnderlyingGroup(), postProcessContinuationStep(), preProcessContinuationStep(), printSolution(), projectToDraw(), projectToDrawDimension(), scaleVector(), setParam(), setParams(), setParamsMulti(), and setX().
Teuchos::RCP<LOCA::BorderedSystem::AbstractGroup> LOCA::Homotopy::DeflatedGroup::bordered_grp [protected] |
Pointer to base group as a bordered group.
Definition at line 461 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by DeflatedGroup(), extractParameterComponent(), extractSolutionComponent(), fillA(), fillB(), fillC(), getBorderedWidth(), getUnborderedGroup(), and loadNestedComponents().
Stores the extended solution vector.
Definition at line 464 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), and setupViews().
Stores the extended residual vector.
Definition at line 467 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeNewton(), copy(), and setupViews().
LOCA::MultiContinuation::ExtendedMultiVector LOCA::Homotopy::DeflatedGroup::newtonMultiVec [protected] |
Stores the extended Newton vector.
Definition at line 470 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeNewton(), copy(), and setupViews().
LOCA::MultiContinuation::ExtendedMultiVector LOCA::Homotopy::DeflatedGroup::gradientMultiVec [protected] |
Stores the extended gradient vector.
Definition at line 473 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), and setupViews().
Teuchos::RCP<LOCA::MultiContinuation::ExtendedVector> LOCA::Homotopy::DeflatedGroup::xVec [protected] |
Stores view of first column of xMultiVec.
Definition at line 476 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeX(), DeflatedGroup(), getX(), setHomotopyParam(), setParams(), setupViews(), and setX().
Teuchos::RCP<LOCA::MultiContinuation::ExtendedVector> LOCA::Homotopy::DeflatedGroup::fVec [protected] |
Stores view of first column of fMultiVec.
Definition at line 479 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeF(), computeGradient(), getF(), getNormF(), getNormNewtonSolveResidual(), and setupViews().
Teuchos::RCP<LOCA::MultiContinuation::ExtendedVector> LOCA::Homotopy::DeflatedGroup::newtonVec [protected] |
Stores view of first column of newtonMultiVec.
Definition at line 482 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by getNewton(), getNormNewtonSolveResidual(), and setupViews().
Teuchos::RCP<LOCA::MultiContinuation::ExtendedVector> LOCA::Homotopy::DeflatedGroup::gradientVec [protected] |
Stores view of first column of gradientMultiVec.
Definition at line 485 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeGradient(), getGradient(), and setupViews().
Teuchos::RCP<const NOX::Abstract::Vector> LOCA::Homotopy::DeflatedGroup::startVec [protected] |
Stores the starting vector, .
Definition at line 488 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeDfDpMulti(), computeF(), copy(), and DeflatedGroup().
std::vector< Teuchos::RCP<const NOX::Abstract::Vector> > LOCA::Homotopy::DeflatedGroup::solns [protected] |
Stores array of deflated solution vectors.
Definition at line 494 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeF(), computeJacobian(), and copy().
Teuchos::RCP<NOX::Abstract::Vector> LOCA::Homotopy::DeflatedGroup::distVec [protected] |
Temporary vector for storing distance.
Definition at line 497 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeDfDpMulti(), computeF(), computeJacobian(), and copy().
Teuchos::RCP<NOX::Abstract::MultiVector> LOCA::Homotopy::DeflatedGroup::totalDistMultiVec [protected] |
Temporary vector for storing sum of distances.
Definition at line 500 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeJacobian(), copy(), DeflatedGroup(), fillB(), fillC(), and setupViews().
Teuchos::RCP<NOX::Abstract::Vector> LOCA::Homotopy::DeflatedGroup::totalDistVec [protected] |
Temporary vector for storing sum of distances.
Definition at line 503 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeJacobian(), and setupViews().
Teuchos::RCP<NOX::Abstract::MultiVector> LOCA::Homotopy::DeflatedGroup::underlyingF [protected] |
underlying group's F vector as a multivector
Definition at line 506 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeJacobian(), copy(), DeflatedGroup(), fillA(), and fillC().
Teuchos::RCP<LOCA::BorderedSolver::AbstractStrategy> LOCA::Homotopy::DeflatedGroup::borderedSolver [protected] |
Stores bordered solver strategy.
Definition at line 512 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianInverseMultiVector(), computeJacobian(), copy(), and DeflatedGroup().
Teuchos::RCP<NOX::Abstract::MultiVector::DenseMatrix> LOCA::Homotopy::DeflatedGroup::minusOne [protected] |
Stores -1.
Definition at line 515 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeJacobian(), copy(), DeflatedGroup(), and fillC().
int LOCA::Homotopy::DeflatedGroup::numSolns [protected] |
Number of previous solutions.
Definition at line 518 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianInverseMultiVector(), applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeF(), computeJacobian(), and copy().
std::vector<double> LOCA::Homotopy::DeflatedGroup::distances [protected] |
Array of distances from previous solutions.
Definition at line 521 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeF(), computeJacobian(), and copy().
double LOCA::Homotopy::DeflatedGroup::distProd [protected] |
Product of distances.
Definition at line 524 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeDfDpMulti(), computeF(), computeJacobian(), and copy().
vector<int> LOCA::Homotopy::DeflatedGroup::index_f [protected] |
Stores indices for getting f part of fMultiVec.
Definition at line 527 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), and setupViews().
Copy of the ParameterVector for the underlying grpPtr.
We copy this and then add the homotopy parameter to the list.
Definition at line 531 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by copy(), DeflatedGroup(), getParam(), getParams(), setHomotopyParam(), setParam(), and setParamsMulti().
double LOCA::Homotopy::DeflatedGroup::conParam [protected] |
Value of the homotopy continuation parameter.
Ranges from 0.0 (easy solution) to 1.0 (solution to the system of interest).
Definition at line 537 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeDfDpMulti(), computeF(), computeJacobian(), copy(), DeflatedGroup(), getHomotopyParam(), setParam(), and setParamsMulti().
int LOCA::Homotopy::DeflatedGroup::conParamID [protected] |
Continuatioin parameter ID number from the ParameterVector.
Definition at line 540 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeDfDpMulti(), copy(), DeflatedGroup(), setHomotopyParam(), setParam(), setParams(), and setParamsMulti().
const string LOCA::Homotopy::DeflatedGroup::conParamLabel [protected] |
Contains the string used to identify the homotopy parameter in the ParameterVector object.
Definition at line 546 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by DeflatedGroup(), and setStepperParameters().
bool LOCA::Homotopy::DeflatedGroup::augmentJacForHomotopyNotImplemented [protected] |
Tracks whether the LOCA::Homotopy::Group method augmentJacobianForHomotopy is implemented. If not, the augmentation is applied during the applyJacobian assuming a matrix-free implementation.
Definition at line 554 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by applyJacobianMultiVector(), applyJacobianTransposeMultiVector(), computeJacobian(), and copy().
bool LOCA::Homotopy::DeflatedGroup::isValidF [protected] |
Is residual vector valid.
Definition at line 557 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeF(), copy(), DeflatedGroup(), isF(), and resetIsValid().
bool LOCA::Homotopy::DeflatedGroup::isValidJacobian [protected] |
Is Jacobian matrix valid.
Definition at line 560 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeJacobian(), copy(), DeflatedGroup(), isJacobian(), and resetIsValid().
bool LOCA::Homotopy::DeflatedGroup::isValidNewton [protected] |
Is Newton vector valid.
Definition at line 563 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeNewton(), copy(), DeflatedGroup(), isNewton(), and resetIsValid().
bool LOCA::Homotopy::DeflatedGroup::isValidGradient [protected] |
Is Gradient vector valid.
Definition at line 566 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by computeGradient(), copy(), DeflatedGroup(), isGradient(), and resetIsValid().
bool LOCA::Homotopy::DeflatedGroup::isBordered [protected] |
Flag that indicates whether underlying group is a bordered group.
Definition at line 569 of file LOCA_Homotopy_DeflatedGroup.H.
Referenced by DeflatedGroup(), extractParameterComponent(), extractSolutionComponent(), fillA(), fillB(), fillC(), getBorderedWidth(), getUnborderedGroup(), and loadNestedComponents().