NOX Development
Loading...
Searching...
No Matches
Public Member Functions | List of all members
LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup Class Reference

A group representing the minimally augemented turning point equations. More...

#include <LOCA_TurningPoint_MinimallyAugmented_ExtendedGroup.H>

Inheritance diagram for LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup:
Inheritance graph
[legend]
Collaboration diagram for LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup:
Collaboration graph
[legend]

Public Member Functions

 ExtendedGroup (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &tpParams, const Teuchos::RCP< LOCA::TurningPoint::MinimallyAugmented::AbstractGroup > &g)
 Constructor with initial data passed through parameter lists.
 
 ExtendedGroup (const ExtendedGroup &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
 
virtual ~ExtendedGroup ()
 Destructor.
 
Implementation of NOX::Abstract::Group virtual methods
virtual NOX::Abstract::Groupoperator= (const NOX::Abstract::Group &source)
 Assignment operator.
 
virtual Teuchos::RCP< NOX::Abstract::Groupclone (NOX::CopyType type=NOX::DeepCopy) const
 Cloning function.
 
virtual void setX (const NOX::Abstract::Vector &y)
 Set the solution vector, x, to y.
 
virtual void computeX (const NOX::Abstract::Group &g, const NOX::Abstract::Vector &d, double step)
 Compute this.x = grp.x + step * d.
 
virtual NOX::Abstract::Group::ReturnType computeF ()
 Compute the turning point equation residual $G$.
 
virtual NOX::Abstract::Group::ReturnType computeJacobian ()
 Compute the blocks of the Jacobian derivative of $G$.
 
virtual NOX::Abstract::Group::ReturnType computeGradient ()
 Gradient computation is not defined for this group.
 
virtual NOX::Abstract::Group::ReturnType computeNewton (Teuchos::ParameterList &params)
 Compute Newton direction using applyJacobianInverse().
 
virtual NOX::Abstract::Group::ReturnType applyJacobian (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Computes the extended Jacobian vector product.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianTranspose (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Computes the extended Jacobian transpose vector product.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianInverse (Teuchos::ParameterList &params, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Applies the inverse of the extended Jacobian matrix.
 
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 for extended system.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const
 Applies Jacobian inverse for extended system.
 
virtual bool isF () const
 Return true if the extended residual $G$ 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::VectorgetX () const
 Return extended solution vector $z$.
 
virtual const NOX::Abstract::VectorgetF () const
 Return extended equation residual $G(z)$.
 
virtual double getNormF () const
 Return 2-norm of $G(z)$.
 
virtual const NOX::Abstract::VectorgetGradient () const
 Vector returned is not valid.
 
virtual const NOX::Abstract::VectorgetNewton () const
 Return extended Newton direction.
 
virtual Teuchos::RCP< const NOX::Abstract::VectorgetXPtr () const
 Return RCP to extended solution vector $z$.
 
virtual Teuchos::RCP< const NOX::Abstract::VectorgetFPtr () const
 Return RCP to extended equation residual $G(z)$.
 
virtual Teuchos::RCP< const NOX::Abstract::VectorgetGradientPtr () const
 Vector returned is not valid.
 
virtual Teuchos::RCP< const NOX::Abstract::VectorgetNewtonPtr () const
 Return RCP to extended Newton direction.
 
virtual double getNormNewtonSolveResidual () const
 Return the norm of the Newton solve residual.
 
Implementation of LOCA::Extended::MultiAbstractGroup

virtual methods

virtual Teuchos::RCP< const LOCA::MultiContinuation::AbstractGroupgetUnderlyingGroup () const
 Return underlying group.
 
virtual Teuchos::RCP< LOCA::MultiContinuation::AbstractGroupgetUnderlyingGroup ()
 Return underlying group.
 
Implementation of LOCA::MultiContinuation::AbstractGroup

virtual methods

virtual void copy (const NOX::Abstract::Group &source)
 Assignment operator.
 
virtual void setParamsMulti (const std::vector< int > &paramIDs, 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.
 
virtual void setParam (std::string paramID, double val)
 Set parameter indexed by paramID.
 
virtual void setParam (int paramID, double val)
 Set parameter indexed by paramID.
 
virtual const ParameterVectorgetParams () const
 Return a const reference to the paramter vector 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 > &paramIDs, 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 void printSolution (const double conParam) const
 Function to print out extended solution and continuation parameter after successful continuation step.
 
virtual void printSolution (const NOX::Abstract::Vector &x_, const double conParam) const
 Function to print out extended solution and continuation parameter after successful continuation step.
 
Implementation of
virtual int getBorderedWidth () const
 Return the total width of the bordered rows/columns.
 
virtual Teuchos::RCP< const NOX::Abstract::GroupgetUnborderedGroup () 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.
 
- Public Member Functions inherited from LOCA::Extended::MultiAbstractGroup
 MultiAbstractGroup ()
 Default constructor.
 
virtual ~MultiAbstractGroup ()
 Destructor.
 
virtual Teuchos::RCP< const LOCA::MultiContinuation::AbstractGroupgetBaseLevelUnderlyingGroup () const
 Return base-level underlying group.
 
virtual Teuchos::RCP< LOCA::MultiContinuation::AbstractGroupgetBaseLevelUnderlyingGroup ()
 Return base-level underlying group.
 
- Public Member Functions inherited from NOX::Abstract::Group
 Group ()
 Constructor.
 
virtual ~Group ()
 Destructor.
 
virtual NOX::Abstract::Groupoperator= (const NOX::Abstract::Group &source)=0
 Copies the source group into this group.
 
virtual void setX (const NOX::Abstract::Vector &y)=0
 Set the solution vector x to y.
 
virtual void computeX (const NOX::Abstract::Group &grp, const NOX::Abstract::Vector &d, double step)=0
 Compute x = grp.x + step * d.
 
virtual NOX::Abstract::Group::ReturnType computeF ()=0
 Compute and store F(x).
 
virtual NOX::Abstract::Group::ReturnType computeJacobian ()
 Compute and store Jacobian.
 
virtual NOX::Abstract::Group::ReturnType computeGradient ()
 Compute and store gradient.
 
virtual NOX::Abstract::Group::ReturnType computeNewton (Teuchos::ParameterList &params)
 Compute the Newton direction, using parameters for the linear solve.
 
virtual NOX::Abstract::Group::ReturnType applyRightPreconditioning (bool useTranspose, Teuchos::ParameterList &params, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Apply right preconditiong to the given input vector.
 
virtual NOX::Abstract::Group::ReturnType applyRightPreconditioningMultiVector (bool useTranspose, Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const
 applyRightPreconditioning for multiple right-hand sides
 
virtual const NOX::Abstract::VectorgetScaledX () const
 
virtual void logLastLinearSolveStats (NOX::SolverStats &stats) const
 Adds statistics from last linear solve to the SovlerStats object.
 
virtual NOX::Abstract::Group::ReturnType getNormLastLinearSolveResidual (double &residual) const
 Return the norm of the last linear solve residual as the result of either a call to computeNewton() or applyJacobianInverse().
 
- Public Member Functions inherited from LOCA::MultiContinuation::AbstractGroup
 AbstractGroup ()
 Default constructor.
 
virtual ~AbstractGroup ()
 Destructor.
 
virtual double computeScaledDotProduct (const NOX::Abstract::Vector &a, const NOX::Abstract::Vector &b) const
 Compute a scaled dot product.
 
virtual void scaleVector (NOX::Abstract::Vector &x) const
 Scales a vector using scaling vector.
 
- Public Member Functions inherited from LOCA::BorderedSystem::AbstractGroup
 AbstractGroup ()
 Constructor.
 
virtual ~AbstractGroup ()
 Destructor.
 
- Public Member Functions inherited from LOCA::Abstract::TransposeSolveGroup
 TransposeSolveGroup ()
 Constructor.
 
virtual ~TransposeSolveGroup ()
 Destructor.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianTransposeInverse (Teuchos::ParameterList &params, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const =0
 Solve Jacobian-tranpose system.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianTransposeInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const =0
 Solve Jacobian-tranpose system with multiple right-hand sides.
 

Implementation of LOCA::Abstract::TransposeSolveGroup

virtual methods

Teuchos::RCP< LOCA::GlobalDataglobalData
 Pointer LOCA global data object.
 
Teuchos::RCP< LOCA::Parameter::SublistParserparsedParams
 Parsed top-level parameters.
 
Teuchos::RCP< Teuchos::ParameterList > turningPointParams
 Bifurcation parameter list.
 
Teuchos::RCP< LOCA::TurningPoint::MinimallyAugmented::AbstractGroupgrpPtr
 Pointer to base group that defines $F$.
 
Teuchos::RCP< LOCA::TurningPoint::MinimallyAugmented::Constraintconstraint
 Pointer to the constraint equation.
 
Teuchos::RCP< LOCA::MultiContinuation::ConstrainedGroupconGroup
 Pointer to constrained group implementation.
 
int bifParamID
 Stores the bifurcation parameter index.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianTransposeInverse (Teuchos::ParameterList &params, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Solve Jacobian-tranpose system.
 
virtual NOX::Abstract::Group::ReturnType applyJacobianTransposeInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const
 Solve Jacobian-tranpose system with multiple right-hand sides.
 
double getBifParam () const
 Get bifurcation parameter.
 
Teuchos::RCP< const NOX::Abstract::VectorgetLeftNullVec () const
 Returns left null vector.
 
Teuchos::RCP< const NOX::Abstract::VectorgetRightNullVec () const
 Returns right null vector v.
 
Teuchos::RCP< const NOX::Abstract::VectorgetAVec () const
 Returns "A" vector.
 
Teuchos::RCP< const NOX::Abstract::VectorgetBVec () const
 Returns "B".
 
void setBifParam (double param)
 Set bifurcation parameter.
 

Additional Inherited Members

- Public Types inherited from NOX::Abstract::Group
enum  ReturnType {
  Ok , NotDefined , BadDependency , NotConverged ,
  Failed
}
 The computation of, say, the Newton direction in computeNewton() may fail in many different ways, so we have included a variety of return codes to describe the failures. Of course, we also have a code for success. More...
 

Detailed Description

A group representing the minimally augemented turning point equations.

The LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup is a concrete implementation of the NOX::Abstract::Group, LOCA::MultiContinuation::AbstractGroup and LOCA::Extended::MultiAbstractGroup that defines the following extended set of equations that are regular at a generic turning point:

\[
    G(z) = \left[
     \begin{array}{c}
        F(x,p) \\
        \sigma
     \end{array}
     \right] = 0
  \]

where $z = [x, p]\in\Re^{n+1}$, $x$ is the solution vector, $p$ is the bifurcation parameter, $J$ is the Jacobian of $F$, and $\sigma\in\Re$ is a measure of the singularity of $F$ and is defined via

\[
    \begin{bmatrix}
      J   & a \\
      b^T & 0
    \end{bmatrix}
    \begin{bmatrix}
      v \\
      \sigma_1
    \end{bmatrix} =
    \begin{bmatrix}
      0 \\
      n
    \end{bmatrix},
\]

\[
    \begin{bmatrix}
      J^T & b \\
      a^T & 0
    \end{bmatrix}
    \begin{bmatrix}
      w \\
      \sigma_2
    \end{bmatrix} =
    \begin{bmatrix}
      0 \\
      n
    \end{bmatrix},
\]

\[
    \sigma = w^T J v/n
\]

for any vectors $a$ and $b$ in $\Re^n$. Using these relationships, it is easy to show

\[
    \begin{split}
       \sigma_x &= (w^T J v)_x/n = w^T J_x v/n \\
       \sigma_p &= (w^T J v)_p/n = w^T J_p v/n
    \end{split}
\]

The group stores an underlying group of type LOCA::TurningPoint::MinimallyAugmented::AbstractGroup to represent the equations $F(x,p) = 0$ and to manipulate the underlying Jacobian $J$. This interface defines methods for computing the derivatives $(w^T J v)_x$ and $(w^T J v)_p$ as well.

This class implements all of the NOX::Abstract::Group, LOCA::MultiContinuation::AbstractGroup, and LOCA::Extended::MultiAbstractGroup methods for this extended set of equations and therefore is a complete group which can be passed to most NOX solvers to locate a single turning point or to the LOCA::Stepper to compute a family of turning points in a second parameter.

The class is intialized via the tpParams parameter list argument to the constructor. The parameters this class recognizes are:

Member Function Documentation

◆ applyJacobian()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobian ( const NOX::Abstract::Vector input,
NOX::Abstract::Vector result 
) const
virtual

Computes the extended Jacobian vector product.

Reimplemented from NOX::Abstract::Group.

◆ applyJacobianInverse()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianInverse ( Teuchos::ParameterList &  params,
const NOX::Abstract::Vector input,
NOX::Abstract::Vector result 
) const
virtual

Applies the inverse of the extended Jacobian matrix.

Reimplemented from NOX::Abstract::Group.

◆ applyJacobianInverseMultiVector()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ applyJacobianMultiVector()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianMultiVector ( const NOX::Abstract::MultiVector input,
NOX::Abstract::MultiVector result 
) const
virtual

Applies Jacobian for extended system.

Reimplemented from NOX::Abstract::Group.

◆ applyJacobianTranspose()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianTranspose ( const NOX::Abstract::Vector input,
NOX::Abstract::Vector result 
) const
virtual

Computes the extended Jacobian transpose vector product.

Reimplemented from NOX::Abstract::Group.

◆ applyJacobianTransposeInverse()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianTransposeInverse ( Teuchos::ParameterList &  params,
const NOX::Abstract::Vector input,
NOX::Abstract::Vector result 
) const
virtual

Solve Jacobian-tranpose system.

Implements LOCA::Abstract::TransposeSolveGroup.

◆ applyJacobianTransposeInverseMultiVector()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianTransposeInverseMultiVector ( Teuchos::ParameterList &  params,
const NOX::Abstract::MultiVector input,
NOX::Abstract::MultiVector result 
) const
virtual

Solve Jacobian-tranpose system with multiple right-hand sides.

Implements LOCA::Abstract::TransposeSolveGroup.

◆ applyJacobianTransposeMultiVector()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::applyJacobianTransposeMultiVector ( const NOX::Abstract::MultiVector input,
NOX::Abstract::MultiVector result 
) const
virtual

Jacobian transpose for extended system.

Reimplemented from NOX::Abstract::Group.

◆ clone()

Teuchos::RCP< NOX::Abstract::Group > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::clone ( NOX::CopyType  type = NOX::DeepCopy) const
virtual

Cloning function.

Implements NOX::Abstract::Group.

◆ computeDfDpMulti()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeDfDpMulti ( const std::vector< int > &  paramIDs,
NOX::Abstract::MultiVector dfdp,
bool  isValidF 
)
virtual

Compute $\partial F/\partial p$ for each parameter $p$ 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.

◆ computeF()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeF ( )
virtual

Compute the turning point equation residual $G$.

This method fills the extended residual

\[
    G(z) = \left[
    \begin{array}{c}
       F(x,p) \\
      \sigma
   \end{array}
    \right].
\]

Implements NOX::Abstract::Group.

◆ computeGradient()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeGradient ( )
virtual

Gradient computation is not defined for this group.

Reimplemented from NOX::Abstract::Group.

◆ computeJacobian()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeJacobian ( )
virtual

Compute the blocks of the Jacobian derivative of $G$.

This method computes the $J$, $F_p$, $\sigma_x$ and $\sigma_p$ blocks of the extended Jacobian:

\[
   D_z G(z) =
   \begin{bmatrix}
      J        & F_p \\
      \sigma_x & \sigma_p
   \end{bmatrix}
\]

Reimplemented from NOX::Abstract::Group.

◆ computeNewton()

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeNewton ( Teuchos::ParameterList &  params)
virtual

Compute Newton direction using applyJacobianInverse().

Reimplemented from NOX::Abstract::Group.

◆ computeX()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::computeX ( const NOX::Abstract::Group g,
const NOX::Abstract::Vector d,
double  step 
)
virtual

◆ copy()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::copy ( const NOX::Abstract::Group source)
virtual

◆ extractParameterComponent()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ extractSolutionComponent()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ fillA()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::fillA ( NOX::Abstract::MultiVector A) const
virtual

Fill the combined A block as described above.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ fillB()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::fillB ( NOX::Abstract::MultiVector B) const
virtual

Fill the combined B block as described above.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ fillC()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::fillC ( NOX::Abstract::MultiVector::DenseMatrix C) const
virtual

Fill the combined C block as described above.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ getBorderedWidth()

int LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getBorderedWidth ( ) const
virtual

Return the total width of the bordered rows/columns.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ getF()

const NOX::Abstract::Vector & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getF ( ) const
virtual

Return extended equation residual $G(z)$.

Implements NOX::Abstract::Group.

◆ getFPtr()

Teuchos::RCP< const NOX::Abstract::Vector > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getFPtr ( ) const
virtual

Return RCP to extended equation residual $G(z)$.

Implements NOX::Abstract::Group.

◆ getGradient()

const NOX::Abstract::Vector & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getGradient ( ) const
virtual

Vector returned is not valid.

Implements NOX::Abstract::Group.

◆ getGradientPtr()

Teuchos::RCP< const NOX::Abstract::Vector > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getGradientPtr ( ) const
virtual

Vector returned is not valid.

Implements NOX::Abstract::Group.

◆ getNewton()

const NOX::Abstract::Vector & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getNewton ( ) const
virtual

Return extended Newton direction.

Implements NOX::Abstract::Group.

◆ getNewtonPtr()

Teuchos::RCP< const NOX::Abstract::Vector > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getNewtonPtr ( ) const
virtual

Return RCP to extended Newton direction.

Implements NOX::Abstract::Group.

◆ getNormF()

double LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getNormF ( ) const
virtual

Return 2-norm of $G(z)$.

Implements NOX::Abstract::Group.

◆ getParam() [1/2]

double LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getParam ( int  paramID) const
virtual

Return copy of parameter indexed by paramID.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ getParam() [2/2]

double LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getParam ( std::string  paramID) const
virtual

Return copy of parameter indexed by paramID.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ getParams()

const LOCA::ParameterVector & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getParams ( ) const
virtual

Return a const reference to the paramter vector owned by the group.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ getUnborderedGroup()

Teuchos::RCP< const NOX::Abstract::Group > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getUnborderedGroup ( ) const
virtual

Get bottom-level unbordered group.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ getUnderlyingGroup() [1/2]

Teuchos::RCP< LOCA::MultiContinuation::AbstractGroup > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getUnderlyingGroup ( )
virtual

Return underlying group.

Implements LOCA::Extended::MultiAbstractGroup.

◆ getUnderlyingGroup() [2/2]

Teuchos::RCP< const LOCA::MultiContinuation::AbstractGroup > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getUnderlyingGroup ( ) const
virtual

Return underlying group.

Implements LOCA::Extended::MultiAbstractGroup.

◆ getX()

const NOX::Abstract::Vector & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getX ( ) const
virtual

Return extended solution vector $z$.

Implements NOX::Abstract::Group.

◆ getXPtr()

Teuchos::RCP< const NOX::Abstract::Vector > LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::getXPtr ( ) const
virtual

Return RCP to extended solution vector $z$.

Implements NOX::Abstract::Group.

◆ isCombinedAZero()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isCombinedAZero ( ) const
virtual

Indicates whether combined A block is zero.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ isCombinedBZero()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isCombinedBZero ( ) const
virtual

Indicates whether combined B block is zero.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ isCombinedCZero()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isCombinedCZero ( ) const
virtual

Indicates whether combined C block is zero.

Implements LOCA::BorderedSystem::AbstractGroup.

◆ isF()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isF ( ) const
virtual

Return true if the extended residual $G$ is valid.

Implements NOX::Abstract::Group.

◆ isGradient()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isGradient ( ) const
virtual

Always returns false.

Reimplemented from NOX::Abstract::Group.

◆ isJacobian()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isJacobian ( ) const
virtual

Return true if the extended Jacobian is valid.

Reimplemented from NOX::Abstract::Group.

◆ isNewton()

bool LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::isNewton ( ) const
virtual

Return true if the extended Newton direction is valid.

Reimplemented from NOX::Abstract::Group.

◆ loadNestedComponents()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ operator=()

NOX::Abstract::Group & LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::operator= ( const NOX::Abstract::Group source)
virtual

Assignment operator.

Implements NOX::Abstract::Group.

◆ postProcessContinuationStep()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ preProcessContinuationStep()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::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.

◆ printSolution() [1/2]

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::printSolution ( const double  conParam) const
virtual

Function to print out extended solution and continuation parameter after successful continuation step.

This method prints the solution, null-vector, and parameter components of the extended solution vector using the printSolution method of the underlying group.

Reimplemented from LOCA::MultiContinuation::AbstractGroup.

References NOX::Utils::StepperDetails.

◆ printSolution() [2/2]

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::printSolution ( const NOX::Abstract::Vector x_,
const double  conParam 
) const
virtual

Function to print out extended solution and continuation parameter after successful continuation step.

This method prints the solution, null-vector, and parameter components of the extended solution vector using the printSolution method of the underlying group.

Reimplemented from LOCA::MultiContinuation::AbstractGroup.

References LOCA::Extended::Vector::getScalar(), LOCA::MultiContinuation::ExtendedVector::getXVec(), and NOX::Utils::StepperDetails.

◆ projectToDraw()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::projectToDraw ( const NOX::Abstract::Vector x,
double *  px 
) const
virtual

Projects solution to a few scalars for multiparameter continuation.

Reimplemented from LOCA::MultiContinuation::AbstractGroup.

◆ projectToDrawDimension()

int LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::projectToDrawDimension ( ) const
virtual

Returns the dimension of the project to draw array.

Reimplemented from LOCA::MultiContinuation::AbstractGroup.

◆ setParam() [1/2]

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::setParam ( int  paramID,
double  val 
)
virtual

Set parameter indexed by paramID.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ setParam() [2/2]

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::setParam ( std::string  paramID,
double  val 
)
virtual

Set parameter indexed by paramID.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ setParams()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::setParams ( const ParameterVector p)
virtual

Set the parameter vector in the group to p.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ setParamsMulti()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::setParamsMulti ( const std::vector< int > &  paramIDs,
const NOX::Abstract::MultiVector::DenseMatrix vals 
)
virtual

Set parameters indexed by (integer) paramIDs.

Implements LOCA::MultiContinuation::AbstractGroup.

◆ setX()

void LOCA::TurningPoint::MinimallyAugmented::ExtendedGroup::setX ( const NOX::Abstract::Vector y)
virtual

Set the solution vector, x, to y.

Implements NOX::Abstract::Group.


The documentation for this class was generated from the following files: