LOCA::TurningPoint::MooreSpence::SalingerBordering Class Reference

Moore-Spence turning point solver strategy based on "Salinger" bordering. This is the classic 4-solve bordering method. More...

#include <LOCA_TurningPoint_MooreSpence_SalingerBordering.H>

Inheritance diagram for LOCA::TurningPoint::MooreSpence::SalingerBordering:

Collaboration diagram for LOCA::TurningPoint::MooreSpence::SalingerBordering:
List of all members.

Public Member Functions

 SalingerBordering (const Teuchos::RefCountPtr< LOCA::GlobalData > &global_data, const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< NOX::Parameter::List > &solverParams)
virtual ~SalingerBordering ()
virtual void setBlocks (const Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::AbstractGroup > &group, const Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::ExtendedGroup > &tpGroup, 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 (NOX::Parameter::List &params, const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &input, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &result, bool isContiguous) const
 Solves the extended system as defined above.

Protected Member Functions

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

Protected Attributes

Teuchos::RefCountPtr< LOCA::GlobalDataglobalData
 Global data object.
Teuchos::RefCountPtr< NOX::Parameter::ListsolverParams
 Solver parameters.
Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::AbstractGroupgroup
 Underlying group.
Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::ExtendedGrouptpGroup
 Turning point group.
Teuchos::RefCountPtr< const
 Null vector.
Teuchos::RefCountPtr< const
 Jacobian times null vector.
Teuchos::RefCountPtr< const
Teuchos::RefCountPtr< const

Detailed Description

Moore-Spence turning point solver strategy based on "Salinger" bordering. This is the classic 4-solve bordering method.

This class solves the Moore-Spence turning point Newton equations:

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

via the following block elimination scheme:

\[ \begin{split} J [A \; b] &= [F \; f_p] \\ J [C \; d] &= (Jv)_x[A \; b] - [G \; (Jv)_p] \\ z &= (h + \phi^T C) / \phi^T d \\ X &= A - b z \\ Y &= -C + d z \end{split} \]

Constructor & Destructor Documentation

LOCA::TurningPoint::MooreSpence::SalingerBordering::SalingerBordering const Teuchos::RefCountPtr< LOCA::GlobalData > &  global_data,
const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< NOX::Parameter::List > &  solverParams


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

Member Function Documentation

void LOCA::TurningPoint::MooreSpence::SalingerBordering::setBlocks const Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::AbstractGroup > &  group,
const Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::ExtendedGroup > &  tpGroup,
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
tpGroup [in] Turning point group representing the turning point equations.
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::TurningPoint::MooreSpence::SolverStrategy.

NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MooreSpence::SalingerBordering::solve NOX::Parameter::List params,
const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector input,
LOCA::TurningPoint::MooreSpence::ExtendedMultiVector result,
bool  isContiguous
const [virtual]

Solves the extended system as defined above.

The params argument is the linear solver parameters.

Implements LOCA::TurningPoint::MooreSpence::SolverStrategy.

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