LOCA::Pitchfork::MooreSpence::SalingerBordering Class Reference

Moore-Spence pitchfork solver strategy based on "Salinger" bordering. This is the classic 6-solve bordering method. More...

#include <LOCA_Pitchfork_MooreSpence_SalingerBordering.H>

Inheritance diagram for LOCA::Pitchfork::MooreSpence::SalingerBordering:

Inheritance graph
[legend]
Collaboration diagram for LOCA::Pitchfork::MooreSpence::SalingerBordering:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 SalingerBordering (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams)
 Constructor.
virtual ~SalingerBordering ()
 Destructor.
virtual void setBlocks (const Teuchos::RCP< LOCA::Pitchfork::MooreSpence::AbstractGroup > &group, const Teuchos::RCP< LOCA::Pitchfork::MooreSpence::ExtendedGroup > &pfGroup, const Teuchos::RCP< const NOX::Abstract::MultiVector > &asymMultiVector, const Teuchos::RCP< const NOX::Abstract::Vector > &nullVector, const Teuchos::RCP< const NOX::Abstract::Vector > &JnVector, const Teuchos::RCP< const NOX::Abstract::Vector > &dfdp, const Teuchos::RCP< 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::RCP< LOCA::GlobalDataglobalData
 Global data object.
Teuchos::RCP
< Teuchos::ParameterList > 
solverParams
 Solver parameters.
Teuchos::RCP
< LOCA::Pitchfork::MooreSpence::AbstractGroup
group
 Underlying group.
Teuchos::RCP
< LOCA::Pitchfork::MooreSpence::ExtendedGroup
pfGroup
 Turning point group.
Teuchos::RCP< const
NOX::Abstract::MultiVector
asymMultiVector
 Antisymmetric vector (psi).
Teuchos::RCP< const
NOX::Abstract::Vector
asymVector
 Antisymmetric vector (psi).
Teuchos::RCP< const
NOX::Abstract::Vector
nullVector
 Null vector.
Teuchos::RCP< const
NOX::Abstract::Vector
JnVector
 Jacobian times null vector.
Teuchos::RCP< const
NOX::Abstract::Vector
dfdp
 df/dp
Teuchos::RCP< const
NOX::Abstract::Vector
dJndp
 d(Jn)/dp

Private Member Functions

 SalingerBordering (const SalingerBordering &)
 Private to prohibit copying.
SalingerBorderingoperator= (const SalingerBordering &)
 Private to prohibit copying.


Detailed Description

Moore-Spence pitchfork solver strategy based on "Salinger" bordering. This is the classic 6-solve bordering method.

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 block elimination scheme:

\[ \begin{split} J [A \; b \; c] &= [F \; f_p \; \psi] \\ J [D \; e \; g] &= [G \; (Jv)_p \; 0] - (Jv)_x[A \; b \; c] \\ w &= \frac{\phi^T e(\langle A, \psi\rangle - s) - \langle b, \psi\rangle(\phi^T D - h)} {\phi^T e \langle c, \psi\rangle - \phi^T g \langle b, \psi\rangle} \\ z &= \frac{\phi^T D - h - (\phi^T g) w}{\phi^T e} \\ X &= A - b z - c w \\ Y &= D - e z - g w \end{split} \]

Definition at line 104 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.


Constructor & Destructor Documentation

LOCA::Pitchfork::MooreSpence::SalingerBordering::SalingerBordering ( const Teuchos::RCP< LOCA::GlobalData > &  global_data,
const Teuchos::RCP< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RCP< Teuchos::ParameterList > &  solverParams 
)

Constructor.

Parameters:
global_data [in] Global data object
topParams [in] Parsed top-level parameter list
solverParams [in] Bordered solver parameters. Currently none are referenced.

Definition at line 49 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.C.

LOCA::Pitchfork::MooreSpence::SalingerBordering::~SalingerBordering (  )  [virtual]

Destructor.

Definition at line 66 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.C.

LOCA::Pitchfork::MooreSpence::SalingerBordering::SalingerBordering ( const SalingerBordering  )  [private]

Private to prohibit copying.


Member Function Documentation

void LOCA::Pitchfork::MooreSpence::SalingerBordering::setBlocks ( const Teuchos::RCP< LOCA::Pitchfork::MooreSpence::AbstractGroup > &  group,
const Teuchos::RCP< LOCA::Pitchfork::MooreSpence::ExtendedGroup > &  pfGroup,
const Teuchos::RCP< const NOX::Abstract::MultiVector > &  asymMultiVector,
const Teuchos::RCP< const NOX::Abstract::Vector > &  nullVector,
const Teuchos::RCP< const NOX::Abstract::Vector > &  JnVector,
const Teuchos::RCP< const NOX::Abstract::Vector > &  dfdp,
const Teuchos::RCP< const NOX::Abstract::Vector > &  dJndp 
) [virtual]

Set blocks in extended linear system.

Parameters:
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.

Definition at line 71 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.C.

References asymMultiVector, asymVector, dfdp, dJndp, group, JnVector, nullVector, and pfGroup.

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

NOX::Abstract::Group::ReturnType LOCA::Pitchfork::MooreSpence::SalingerBordering::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 [protected]

SalingerBordering& LOCA::Pitchfork::MooreSpence::SalingerBordering::operator= ( const SalingerBordering  )  [private]

Private to prohibit copying.


Member Data Documentation

Global data object.

Definition at line 183 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by solveContiguous().

Teuchos::RCP<Teuchos::ParameterList> LOCA::Pitchfork::MooreSpence::SalingerBordering::solverParams [protected]

Solver parameters.

Definition at line 186 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Underlying group.

Definition at line 189 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solveContiguous().

Turning point group.

Definition at line 192 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solveContiguous().

Antisymmetric vector (psi).

Definition at line 195 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solveContiguous().

Antisymmetric vector (psi).

Definition at line 198 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), solve(), and solveContiguous().

Null vector.

Definition at line 201 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solveContiguous().

Jacobian times null vector.

Definition at line 204 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solveContiguous().

df/dp

Definition at line 207 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solve().

d(Jn)/dp

Definition at line 210 of file LOCA_Pitchfork_MooreSpence_SalingerBordering.H.

Referenced by setBlocks(), and solve().


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

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