|
NOX Development
|
Abstract strategy for solving the Moore-Spence turning point equations. More...
#include <LOCA_TurningPoint_MooreSpence_SolverStrategy.H>

Public Member Functions | |
| SolverStrategy () | |
| Constructor. | |
| virtual | ~SolverStrategy () |
| Destructor. | |
| virtual void | setBlocks (const Teuchos::RCP< LOCA::TurningPoint::MooreSpence::AbstractGroup > &group, const Teuchos::RCP< LOCA::TurningPoint::MooreSpence::ExtendedGroup > &tpGroup, const Teuchos::RCP< const NOX::Abstract::Vector > &nullVector, const Teuchos::RCP< const NOX::Abstract::Vector > &JnVector, const Teuchos::RCP< const NOX::Abstract::MultiVector > &dfdp, const Teuchos::RCP< const NOX::Abstract::MultiVector > &dJndp)=0 |
| Set blocks in extended linear system. | |
| virtual NOX::Abstract::Group::ReturnType | solve (Teuchos::ParameterList ¶ms, const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &input, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &result) const =0 |
| Solves the extended system as defined above. | |
| virtual NOX::Abstract::Group::ReturnType | solveTranspose (Teuchos::ParameterList &, const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &) const |
| Solves the transpose of the extended system as defined above. | |
Abstract strategy for solving the Moore-Spence turning point equations.
This class provides an abstract interface for solver strategies to solve the Moore-Spence turning point Newton system:
![\[
\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}.
\]](form_659.png)
After instantiating a solver (via LOCA::TurningPoint::MooreSpence::SolverFactory), the linear system is set up by setBlocks() and can then be solved by solve().
|
pure virtual |
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 |
Implemented in LOCA::TurningPoint::MooreSpence::PhippsBordering, and LOCA::TurningPoint::MooreSpence::SalingerBordering.
|
pure virtual |
Solves the extended system as defined above.
The params argument is the linear solver parameters.
Implemented in LOCA::TurningPoint::MooreSpence::PhippsBordering, and LOCA::TurningPoint::MooreSpence::SalingerBordering.
|
inlinevirtual |
Solves the transpose of the extended system as defined above.
The params argument is the linear solver parameters.
Reimplemented in LOCA::TurningPoint::MooreSpence::PhippsBordering, and LOCA::TurningPoint::MooreSpence::SalingerBordering.
References NOX::Abstract::Group::NotDefined.