|
NOX
Development
|
Abstract interface class for continuation strategies. More...
#include <LOCA_MultiContinuation_AbstractStrategy.H>
Public Member Functions | |
| AbstractStrategy () | |
| Constructor. | |
| virtual | ~AbstractStrategy () |
| Destructor. | |
| virtual void | copy (const NOX::Abstract::Group &source)=0 |
| Copy. | |
| virtual int | getNumParams () const =0 |
| Returns number of parameters. | |
| virtual void | preProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus)=0 |
| Perform any preprocessing before a continuation step starts. | |
| virtual void | postProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus)=0 |
| Perform any postprocessing after a continuation step finishes. | |
|
virtual NOX::Abstract::Group::ReturnType | computePredictor ()=0 |
| Compute predictor directions. | |
| virtual bool | isPredictor () const =0 |
| Is Predictor valid. | |
| virtual void | scaleTangent ()=0 |
| Scales tangent to predictor. | |
| virtual void | setPredictorTangentDirection (const LOCA::MultiContinuation::ExtendedVector &v, int i)=0 |
| Sets tangent to predictor. | |
|
virtual const LOCA::MultiContinuation::ExtendedMultiVector & | getPredictorTangent () const =0 |
| Returns tangent to predictor. | |
|
virtual const LOCA::MultiContinuation::ExtendedMultiVector & | getScaledPredictorTangent () const =0 |
| Returns scaled tangent to predictor. | |
| virtual void | setPrevX (const NOX::Abstract::Vector &y)=0 |
| Set the previous solution vector y. | |
|
virtual const LOCA::MultiContinuation::ExtendedVector & | getPrevX () const =0 |
| Gets the previous solution vector. | |
| virtual void | setStepSize (double deltaS, int i=0)=0 |
| Set step size for continuation constraint equation i. | |
| virtual double | getStepSize (int i=0) const =0 |
| Get step size for continuation constraint equation i. | |
| virtual void | setContinuationParameter (double val, int i=0)=0 |
| Sets the value for continuation parameter i. | |
| virtual double | getContinuationParameter (int i=0) const =0 |
| Returns the value for continuation parameter i. | |
| virtual int | getContinuationParameterID (int i=0) const =0 |
| Get the continuation parameter id for parameter i. | |
| virtual const std::vector< int > & | getContinuationParameterIDs () const =0 |
| Get the continuation parameter ids. | |
| virtual std::string | getContinuationParameterName (int i=0) const =0 |
| Get the continuation parameter id for parameter i. | |
| virtual double | getStepSizeScaleFactor (int i=0) const =0 |
| Returns step size scale factor for constraint equation i. | |
| virtual void | printSolution () const =0 |
| Prints the group. | |
| virtual double | computeScaledDotProduct (const NOX::Abstract::Vector &x, const NOX::Abstract::Vector &y) const =0 |
| Computes a scaled dot product between two continuation vectors. | |
| virtual int | projectToDrawDimension () const =0 |
| Returns dimension of project to draw array. | |
| virtual void | projectToDraw (const LOCA::MultiContinuation::ExtendedVector &x, double *px) const =0 |
| Fills the project to draw array. | |
Abstract interface class for continuation strategies.
AbstractStrategy defines an abstract interface for continuation strategies. This interface is used by the LOCA::Stepper to manipulate continuation groups in a consistent manner. It defines a number pure virtual methods that all continuation groups must implement.
| virtual void LOCA::MultiContinuation::AbstractStrategy::postProcessContinuationStep | ( | LOCA::Abstract::Iterator::StepStatus | stepStatus | ) | [pure virtual] |
Perform any postprocessing after a continuation step finishes.
The stepStatus argument indicates whether the step was successful.
Implemented in LOCA::MultiContinuation::ExtendedGroup.
| virtual void LOCA::MultiContinuation::AbstractStrategy::preProcessContinuationStep | ( | LOCA::Abstract::Iterator::StepStatus | stepStatus | ) | [pure virtual] |
Perform any preprocessing before a continuation step starts.
The stepStatus argument indicates whether the previous step was successful.
Implemented in LOCA::MultiContinuation::ExtendedGroup.
| virtual void LOCA::MultiContinuation::AbstractStrategy::setPredictorTangentDirection | ( | const LOCA::MultiContinuation::ExtendedVector & | v, |
| int | i | ||
| ) | [pure virtual] |
Sets tangent to predictor.
This is required by MF which takes the tangent space, orthogonalizes it, and then sets it back in the group.
Implemented in LOCA::MultiContinuation::ExtendedGroup.
1.7.6.1