LOCA::Pitchfork::MinimallyAugmented::Constraint Class Reference

Implementation of LOCA::MultiContinuation::ConstraintInterfaceMVDX for computing pitchforks for the minimally augmented pitchfork formulation. More...

#include <LOCA_Pitchfork_MinimallyAugmented_Constraint.H>

Inheritance diagram for LOCA::Pitchfork::MinimallyAugmented::Constraint:

Inheritance graph
[legend]
Collaboration diagram for LOCA::Pitchfork::MinimallyAugmented::Constraint:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Constraint (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &pfParams, const Teuchos::RCP< LOCA::Pitchfork::MinimallyAugmented::AbstractGroup > &g, bool is_symmetric, const NOX::Abstract::Vector &a, const NOX::Abstract::Vector *b, const Teuchos::RCP< const NOX::Abstract::Vector > &psi, int bif_param)
 Constructor.
 Constraint (const Constraint &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
virtual ~Constraint ()
 Destructor.
virtual void setGroup (const Teuchos::RCP< LOCA::TurningPoint::MinimallyAugmented::AbstractGroup > &g)
 Set the group pointer.
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 int numConstraints () const
 Return number of constraints.
virtual
NOX::Abstract::Group::ReturnType 
computeConstraints ()
 Compute continuation constraint equations.
virtual
NOX::Abstract::Group::ReturnType 
computeDX ()
 Compute derivative of constraints w.r.t. solution vector x.
virtual
NOX::Abstract::Group::ReturnType 
computeDP (const vector< int > &paramIDs, NOX::Abstract::MultiVector::DenseMatrix &dgdp, bool isValidG)
 Compute derivative of constraints w.r.t. supplied parameters.
virtual const
NOX::Abstract::MultiVector::DenseMatrix
getConstraints () const
 Return constraint residuals.
virtual const
NOX::Abstract::MultiVector
getDX () const
 Return solution component of constraint derivatives.

Protected Attributes

Teuchos::RCP
< LOCA::Pitchfork::MinimallyAugmented::AbstractGroup
pf_grp
 Pointer to pitchfork group.
Teuchos::RCP< const
NOX::Abstract::Vector
psi_vector
 Vector for $\psi$.
Teuchos::RCP
< NOX::Abstract::MultiVector
dgdx
 Stores dg/dx.
NOX::Abstract::MultiVector::DenseMatrix pf_constraints
 Constraint values.

Private Member Functions

Constraintoperator= (const Constraint &source)
 Prohibit generation and use of operator=().


Detailed Description

Implementation of LOCA::MultiContinuation::ConstraintInterfaceMVDX for computing pitchforks for the minimally augmented pitchfork formulation.

This class implements the pitchfork constraint equations $\sigma(x,p) = 0$, $\langle \psi,x \rangle = 0$ for the minimally augmented pitchfork formulation where $\sigma$ 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 class is derived from LOCA::TurningPoint::MinimallyAugmented::Constraint. See this class for a description of available parameters.

Definition at line 116 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.H.


Constructor & Destructor Documentation

LOCA::Pitchfork::MinimallyAugmented::Constraint::Constraint ( const Teuchos::RCP< LOCA::GlobalData > &  global_data,
const Teuchos::RCP< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RCP< Teuchos::ParameterList > &  pfParams,
const Teuchos::RCP< LOCA::Pitchfork::MinimallyAugmented::AbstractGroup > &  g,
bool  is_symmetric,
const NOX::Abstract::Vector a,
const NOX::Abstract::Vector b,
const Teuchos::RCP< const NOX::Abstract::Vector > &  psi,
int  bif_param 
)

Constructor.

Definition at line 53 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

Referenced by clone().

LOCA::Pitchfork::MinimallyAugmented::Constraint::Constraint ( const Constraint source,
NOX::CopyType  type = NOX::DeepCopy 
)

Copy constructor.

Definition at line 74 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

LOCA::Pitchfork::MinimallyAugmented::Constraint::~Constraint (  )  [virtual]


Member Function Documentation

void LOCA::Pitchfork::MinimallyAugmented::Constraint::setGroup ( const Teuchos::RCP< LOCA::TurningPoint::MinimallyAugmented::AbstractGroup > &  g  )  [virtual]

Set the group pointer.

This method should be called when ever the constrained group is copied, since we don't explicitly copy the underlying group here.

Definition at line 93 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References pf_grp.

void LOCA::Pitchfork::MinimallyAugmented::Constraint::copy ( const LOCA::MultiContinuation::ConstraintInterface source  )  [virtual]

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

Cloning function.

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

Definition at line 119 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References Constraint().

int LOCA::Pitchfork::MinimallyAugmented::Constraint::numConstraints (  )  const [virtual]

Return number of constraints.

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

Definition at line 126 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

NOX::Abstract::Group::ReturnType LOCA::Pitchfork::MinimallyAugmented::Constraint::computeConstraints (  )  [virtual]

NOX::Abstract::Group::ReturnType LOCA::Pitchfork::MinimallyAugmented::Constraint::computeDX (  )  [virtual]

Compute derivative of constraints w.r.t. solution vector x.

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

Definition at line 152 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References LOCA::TurningPoint::MinimallyAugmented::Constraint::isValidDX, NOX::Abstract::Group::Ok, and psi_vector.

NOX::Abstract::Group::ReturnType LOCA::Pitchfork::MinimallyAugmented::Constraint::computeDP ( const vector< int > &  paramIDs,
NOX::Abstract::MultiVector::DenseMatrix dgdp,
bool  isValidG 
) [virtual]

Compute derivative of constraints w.r.t. supplied parameters.

The first column of dgdp should be filled with the constraint residuals $g$ if isValidG is false. If isValidG is true, then the dgdp contains $g$ on input.

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

Definition at line 170 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References pf_grp, and psi_vector.

const NOX::Abstract::MultiVector::DenseMatrix & LOCA::Pitchfork::MinimallyAugmented::Constraint::getConstraints (  )  const [virtual]

Return constraint residuals.

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

Definition at line 193 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References pf_constraints.

const NOX::Abstract::MultiVector * LOCA::Pitchfork::MinimallyAugmented::Constraint::getDX (  )  const [virtual]

Return solution component of constraint derivatives.

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

Definition at line 200 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.C.

References dgdx.

Constraint& LOCA::Pitchfork::MinimallyAugmented::Constraint::operator= ( const Constraint source  )  [private]

Prohibit generation and use of operator=().


Member Data Documentation

Pointer to pitchfork group.

Definition at line 203 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.H.

Referenced by computeConstraints(), computeDP(), and setGroup().

Vector for $\psi$.

Definition at line 206 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.H.

Referenced by computeConstraints(), computeDP(), computeDX(), and copy().

Stores dg/dx.

Definition at line 209 of file LOCA_Pitchfork_MinimallyAugmented_Constraint.H.

Referenced by copy(), and getDX().


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

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