LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint Class Reference

Implementation of LOCA::MultiContinuation::ConstraintInterfaceMVDX for computing turning points for the minimally augmented turning point formulation. More...

#include <LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H>

Inheritance diagram for LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ModifiedConstraint (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, bool is_symmetric, const NOX::Abstract::Vector &a, const NOX::Abstract::Vector *b, int bif_param)
 Constructor.
 ModifiedConstraint (const ModifiedConstraint &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
virtual ~ModifiedConstraint ()
 Destructor.
void setNewtonUpdates (const NOX::Abstract::Vector &dx, double dp, double step)
 Set the newton update for x and p.
Implementation of LOCA::MultiContinuation::ConstraintInterface
virtual methods

virtual void copy (const LOCA::MultiContinuation::ConstraintInterface &source)
 Copy.
virtual Teuchos::RCP
< LOCA::MultiContinuation::ConstraintInterface
clone (NOX::CopyType type=NOX::DeepCopy) const
 Cloning function.
virtual
NOX::Abstract::Group::ReturnType 
computeConstraints ()
 Compute continuation constraint equations.
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.

Protected Attributes

Teuchos::RCP
< NOX::Abstract::MultiVector
w_vector_update
 Stores update to left null vector.
Teuchos::RCP
< NOX::Abstract::MultiVector
v_vector_update
 Stores update to right null vector.
Teuchos::RCP
< NOX::Abstract::MultiVector
w_residual
 Stores left null vector residual.
Teuchos::RCP
< NOX::Abstract::MultiVector
v_residual
 Stores right null vector residual.
Teuchos::RCP
< NOX::Abstract::MultiVector
deltaX
 Stores solution update.
NOX::Abstract::MultiVector::DenseMatrix sigma1
 Stores sigma_1.
NOX::Abstract::MultiVector::DenseMatrix sigma2
 Stores sigma_1.
double deltaP
 Stores parameter update.
bool isFirstSolve
bool includeNewtonTerms
 Flag indicating whether to include the newton update terms.

Private Member Functions

ModifiedConstraintoperator= (const ModifiedConstraint &source)
 Prohibit generation and use of operator=().


Detailed Description

Implementation of LOCA::MultiContinuation::ConstraintInterfaceMVDX for computing turning points for the minimally augmented turning point formulation.

This class is a modification of LOCA::TurningPoint::MinimallyAugmented::Constraint where updates are computed to the left and right null vectors $w$ and $v$ every nonlinear iteration instead of solving for them directly:

\[ \begin{bmatrix} J & a \\ b^T & 0 \end{bmatrix} \begin{bmatrix} \Delta v \\ \Delta \sigma_1 \end{bmatrix} = - \begin{bmatrix} J v + \sigma_1 a + (Jv)_x\Delta x + (Jv)_p \Delta p\\ b^T a - n \end{bmatrix}, \]

\[ \begin{bmatrix} J^T & b \\ a^T & 0 \end{bmatrix} \begin{bmatrix} \Delta w \\ \Delta \sigma_2 \end{bmatrix} = - \begin{bmatrix} J^T w + \sigma_2 b + (J^T w)_x \Delta x + (J^T w)_p \Delta p \\ a^T w - n \end{bmatrix}, \]

The class is intialized via the tpParams parameter list argument to the constructor. This class recognizes all paramters for LOCA::TurningPoint::MinimallyAugmented::Constraint plus the following:

Definition at line 101 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.


Constructor & Destructor Documentation

LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::ModifiedConstraint ( 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,
bool  is_symmetric,
const NOX::Abstract::Vector a,
const NOX::Abstract::Vector b,
int  bif_param 
)

Constructor.

Definition at line 54 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.

References includeNewtonTerms, v_vector_update, and w_vector_update.

Referenced by clone().

LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::ModifiedConstraint ( const ModifiedConstraint source,
NOX::CopyType  type = NOX::DeepCopy 
)

Copy constructor.

Definition at line 84 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.

LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::~ModifiedConstraint (  )  [virtual]

Destructor.

Definition at line 102 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.


Member Function Documentation

void LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::copy ( const LOCA::MultiContinuation::ConstraintInterface source  )  [virtual]

Teuchos::RCP< LOCA::MultiContinuation::ConstraintInterface > LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::clone ( NOX::CopyType  type = NOX::DeepCopy  )  const [virtual]

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::computeConstraints (  )  [virtual]

void LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::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. Here we set up the constraint class to solve for $w$ and $v$ for the first nonlinear iteration.

Reimplemented from LOCA::MultiContinuation::ConstraintInterface.

Definition at line 433 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.

References isFirstSolve, v_vector_update, and w_vector_update.

void LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::postProcessContinuationStep ( LOCA::Abstract::Iterator::StepStatus  stepStatus  )  [virtual]

Perform any postprocessing after a continuation step finishes.

The stepStatus argument indicates whether the step was successful. Here we set up the constraint class to solve for $w$ and $v$ for the first nonlinear iteration.

Reimplemented from LOCA::TurningPoint::MinimallyAugmented::Constraint.

Definition at line 446 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.

References isFirstSolve, LOCA::Abstract::Iterator::Successful, v_vector_update, and w_vector_update.

void LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::setNewtonUpdates ( const NOX::Abstract::Vector dx,
double  dp,
double  step 
)

Set the newton update for x and p.

Definition at line 462 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.C.

References deltaP.

ModifiedConstraint& LOCA::TurningPoint::MinimallyAugmented::ModifiedConstraint::operator= ( const ModifiedConstraint source  )  [private]

Prohibit generation and use of operator=().


Member Data Documentation

Stores left null vector residual.

Definition at line 182 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), and copy().

Stores right null vector residual.

Definition at line 185 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), and copy().

Stores solution update.

Definition at line 188 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), and copy().

Stores sigma_1.

Definition at line 191 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), and copy().

Stores sigma_1.

Definition at line 194 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), and copy().

Stores parameter update.

Definition at line 197 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), copy(), and setNewtonUpdates().

Flag that indicates whether we're in the first solve per continuation step.

Definition at line 203 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), copy(), postProcessContinuationStep(), and preProcessContinuationStep().

Flag indicating whether to include the newton update terms.

Definition at line 206 of file LOCA_TurningPoint_MinimallyAugmented_ModifiedConstraint.H.

Referenced by computeConstraints(), copy(), and ModifiedConstraint().


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

Generated on Wed Oct 21 14:28:42 2009 for Nonlinear Solver Project by  doxygen 1.5.9