LOCA::Pitchfork::MooreSpence::PhippsBordering Class Reference

Moore-Spence pitchfork solver strategy based on "Phipps" bordering which is the 7-solve modified pitchfork bordering algorithm that uses bordered linear solves. More...

#include <LOCA_Pitchfork_MooreSpence_PhippsBordering.H>

Inheritance diagram for LOCA::Pitchfork::MooreSpence::PhippsBordering:

Collaboration diagram for LOCA::Pitchfork::MooreSpence::PhippsBordering:
List of all members.

Public Member Functions

 PhippsBordering (const Teuchos::RefCountPtr< LOCA::GlobalData > &global_data, const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams)
virtual ~PhippsBordering ()
virtual void setBlocks (const Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::AbstractGroup > &group, const Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::ExtendedGroup > &pfGroup, const Teuchos::RefCountPtr< const NOX::Abstract::MultiVector > &asymMultiVector, const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &nullVector, const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &JnVector, const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &dfdp, const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &dJndp)
 Set blocks in extended linear system.
virtual NOX::Abstract::Group::ReturnType solve (Teuchos::ParameterList &params, const LOCA::Pitchfork::MooreSpence::ExtendedMultiVector &input, LOCA::Pitchfork::MooreSpence::ExtendedMultiVector &result) const
 Solves the extended system as defined above.

Protected Member Functions

NOX::Abstract::Group::ReturnType solveContiguous (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input_x, const NOX::Abstract::MultiVector &input_null, const NOX::Abstract::MultiVector::DenseMatrix &input_slack, const NOX::Abstract::MultiVector::DenseMatrix &input_param, NOX::Abstract::MultiVector &result_x, NOX::Abstract::MultiVector &result_null, NOX::Abstract::MultiVector::DenseMatrix &result_slack, NOX::Abstract::MultiVector::DenseMatrix &result_param) const
 Solves equations with contiguous arguments.

Protected Attributes

Teuchos::RefCountPtr< LOCA::GlobalDataglobalData
 Global data object.
Teuchos::RefCountPtr< Teuchos::ParameterListsolverParams
 Solver parameters.
Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::AbstractGroupgroup
 Underlying group.
Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::ExtendedGrouppfGroup
 Turning point group.
Teuchos::RefCountPtr< const
 Antisymmetric vector (psi).
Teuchos::RefCountPtr< const
 Antisymmetric vector (psi).
Teuchos::RefCountPtr< const
 Null vector.
Teuchos::RefCountPtr< const
 Jacobian times null vector.
Teuchos::RefCountPtr< const
Teuchos::RefCountPtr< const
Teuchos::RefCountPtr< LOCA::BorderedSolver::AbstractStrategyborderedSolver
 Bordered solver for solving (n+1)x(n+1) sets of equations.
Teuchos::RefCountPtr< NOX::Abstract::MultiVectornullMultiVector
 Null vector as a multivector.
Teuchos::RefCountPtr< NOX::Abstract::MultiVectorJnMultiVector
 Jacobian times null vector as a multivector.
double sigma
 Norm of JnVector.

Detailed Description

Moore-Spence pitchfork solver strategy based on "Phipps" bordering which is the 7-solve modified pitchfork bordering algorithm that uses bordered linear solves.

This class solves the Moore-Spence pitchfork Newton equations:

\[ \begin{bmatrix} J & 0 & \psi & f_p \\ (Jv)_x & J & 0 & (Jv)_p \\ \psi^T & 0 & 0 & 0 \\ 0 & \phi^T & 0 & 0 \end{bmatrix} \begin{bmatrix} X \\ Y \\ w \\ z \end{bmatrix} = \begin{bmatrix} F \\ G \\ s \\ h \end{bmatrix} \]

via the following modified block elimination scheme:

\[ \begin{split} \begin{bmatrix} J & u \\ v^T & 0 \end{bmatrix} \begin{bmatrix} A & B & C \\ a & b & c \end{bmatrix} &= \begin{bmatrix} F & f_p & \psi \\ 0 & 0 & 0 \end{bmatrix} \\ \begin{bmatrix} J & u \\ v^T & 0 \end{bmatrix} \begin{bmatrix} D & E & K & L \\ d & e & k & l \end{bmatrix} &= \begin{bmatrix} G - (Jv)_x A & (Jv)_p - (Jv)_x B & -(Jv)_x C & -(Jv)_x v \\ 0 & 0 & 0 & 0 \end{bmatrix} \\ \begin{bmatrix} \sigma & 0 & b & c \\ -l & \sigma & e & k \\ \langle v,\psi\rangle & 0 & -\langle B,\psi\rangle & -\langle C,\psi\rangle \\ \phi^T L & \phi^T v & -\phi^T E & -\phi^T K \end{bmatrix} \begin{bmatrix} \alpha \\ \beta \\ z \\ w \end{bmatrix} &= \begin{bmatrix} a \\ d \\ s - \langle A,\psi\rangle h - \phi^T D \end{bmatrix} \\ X &= A - B z - C w + v \alpha \\ Y &= D - E z - K w + L \alpha + v \beta \end{split} \]

where $\sigma = \|J v\|$ and $u = J v/\sigma$. Each bordered solve is implemented by a LOCA::BorderedSolver::AbstractStrategy strategy object.

Constructor & Destructor Documentation

LOCA::Pitchfork::MooreSpence::PhippsBordering::PhippsBordering const Teuchos::RefCountPtr< LOCA::GlobalData > &  global_data,
const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams


global_data [in] Global data object
topParams [in] Parsed top-level parameter list
solverParams [in] Bordered solver parameters. Instantiates a bordered solver for solving the bordeded systems described above. See LOCA::BorderedSolver::Factory for a description of available solvers.

Member Function Documentation

void LOCA::Pitchfork::MooreSpence::PhippsBordering::setBlocks const Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::AbstractGroup > &  group,
const Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::ExtendedGroup > &  pfGroup,
const Teuchos::RefCountPtr< const NOX::Abstract::MultiVector > &  asymMultiVector,
const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &  nullVector,
const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &  JnVector,
const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &  dfdp,
const Teuchos::RefCountPtr< const NOX::Abstract::Vector > &  dJndp

Set blocks in extended linear system.

group [in] Underlying group representing J
pfGroup [in] Pitchfork group representing the pitchfork equations.
asymMultiVector [in] Multivector representing the asymmetric vector
nullVector [in] Vector representing v
JnVector [in] Vector representing Jv
dfdp [in] Vector representing df/dp
dJndp [in] Vector representing d(Jv)/dp

Implements LOCA::Pitchfork::MooreSpence::SolverStrategy.

NOX::Abstract::Group::ReturnType LOCA::Pitchfork::MooreSpence::PhippsBordering::solve Teuchos::ParameterList params,
const LOCA::Pitchfork::MooreSpence::ExtendedMultiVector input,
LOCA::Pitchfork::MooreSpence::ExtendedMultiVector result
const [virtual]

Solves the extended system as defined above.

The params argument is the linear solver parameters.

Implements LOCA::Pitchfork::MooreSpence::SolverStrategy.

The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:38:35 2008 for NOX by doxygen