#include <LOCA_TurningPoint_MooreSpence_SalingerBordering.H>
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::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) |
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 |
Solves the extended system as defined above. | |
virtual NOX::Abstract::Group::ReturnType | solveTranspose (Teuchos::ParameterList ¶ms, const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &input, LOCA::TurningPoint::MooreSpence::ExtendedMultiVector &result) const |
Solves the transpose of the extended system as defined above. | |
Protected Member Functions | |
NOX::Abstract::Group::ReturnType | solveContiguous (Teuchos::ParameterList ¶ms, 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. | |
NOX::Abstract::Group::ReturnType | solveTransposeContiguous (Teuchos::ParameterList ¶ms, 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::RCP< LOCA::GlobalData > | globalData |
Global data object. | |
Teuchos::RCP < Teuchos::ParameterList > | solverParams |
Solver parameters. | |
Teuchos::RCP < LOCA::TurningPoint::MooreSpence::AbstractGroup > | group |
Underlying group. | |
Teuchos::RCP < LOCA::TurningPoint::MooreSpence::ExtendedGroup > | tpGroup |
Turning point group. | |
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::MultiVector > | dfdp |
df/dp | |
Teuchos::RCP< const NOX::Abstract::MultiVector > | dJndp |
d(Jn)/dp | |
Private Member Functions | |
SalingerBordering (const SalingerBordering &) | |
Private to prohibit copying. | |
SalingerBordering & | operator= (const SalingerBordering &) |
Private to prohibit copying. |
This class solves the Moore-Spence turning point Newton equations:
via the following block elimination scheme:
Definition at line 97 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
LOCA::TurningPoint::MooreSpence::SalingerBordering::SalingerBordering | ( | const Teuchos::RCP< LOCA::GlobalData > & | global_data, | |
const Teuchos::RCP< LOCA::Parameter::SublistParser > & | topParams, | |||
const Teuchos::RCP< Teuchos::ParameterList > & | solverParams | |||
) |
Constructor.
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_TurningPoint_MooreSpence_SalingerBordering.C.
LOCA::TurningPoint::MooreSpence::SalingerBordering::~SalingerBordering | ( | ) | [virtual] |
LOCA::TurningPoint::MooreSpence::SalingerBordering::SalingerBordering | ( | const SalingerBordering & | ) | [private] |
Private to prohibit copying.
void LOCA::TurningPoint::MooreSpence::SalingerBordering::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 | |||
) | [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 |
Implements LOCA::TurningPoint::MooreSpence::SolverStrategy.
Definition at line 69 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.C.
References dfdp, dJndp, group, JnVector, nullVector, and tpGroup.
NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MooreSpence::SalingerBordering::solve | ( | Teuchos::ParameterList & | params, | |
const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector & | input, | |||
LOCA::TurningPoint::MooreSpence::ExtendedMultiVector & | result | |||
) | const [virtual] |
Solves the extended system as defined above.
The params argument is the linear solver parameters.
Implements LOCA::TurningPoint::MooreSpence::SolverStrategy.
Definition at line 86 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.C.
References LOCA::TurningPoint::MooreSpence::ExtendedMultiVector::getNullMultiVec(), LOCA::Extended::MultiVector::getScalars(), LOCA::TurningPoint::MooreSpence::ExtendedMultiVector::getXMultiVec(), LOCA::Extended::MultiVector::numVectors(), and solveContiguous().
NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTranspose | ( | Teuchos::ParameterList & | params, | |
const LOCA::TurningPoint::MooreSpence::ExtendedMultiVector & | input, | |||
LOCA::TurningPoint::MooreSpence::ExtendedMultiVector & | result | |||
) | const [virtual] |
Solves the transpose of the extended system as defined above.
The params argument is the linear solver parameters.
Reimplemented from LOCA::TurningPoint::MooreSpence::SolverStrategy.
Definition at line 165 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.C.
References LOCA::TurningPoint::MooreSpence::ExtendedMultiVector::getNullMultiVec(), LOCA::Extended::MultiVector::getScalars(), LOCA::TurningPoint::MooreSpence::ExtendedMultiVector::getXMultiVec(), LOCA::Extended::MultiVector::numVectors(), solveTransposeContiguous(), and tpGroup.
NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MooreSpence::SalingerBordering::solveContiguous | ( | Teuchos::ParameterList & | 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 [protected] |
Solves equations with contiguous arguments.
Definition at line 251 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.C.
References NOX::Abstract::MultiVector::clone(), globalData, group, JnVector, nullVector, NOX::Abstract::MultiVector::numVectors(), NOX::Abstract::Group::Ok, NOX::ShapeCopy, NOX::Abstract::MultiVector::subView(), and tpGroup.
Referenced by solve().
NOX::Abstract::Group::ReturnType LOCA::TurningPoint::MooreSpence::SalingerBordering::solveTransposeContiguous | ( | Teuchos::ParameterList & | 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 [protected] |
Solves equations with contiguous arguments.
Definition at line 343 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.C.
References NOX::Abstract::MultiVector::clone(), dfdp, dJndp, globalData, group, NOX::Abstract::MultiVector::multiply(), nullVector, NOX::Abstract::MultiVector::numVectors(), NOX::Abstract::Group::Ok, NOX::ShapeCopy, and NOX::Abstract::MultiVector::subView().
Referenced by solveTranspose().
SalingerBordering& LOCA::TurningPoint::MooreSpence::SalingerBordering::operator= | ( | const SalingerBordering & | ) | [private] |
Private to prohibit copying.
Teuchos::RCP<LOCA::GlobalData> LOCA::TurningPoint::MooreSpence::SalingerBordering::globalData [protected] |
Global data object.
Definition at line 194 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by solveContiguous(), and solveTransposeContiguous().
Teuchos::RCP<Teuchos::ParameterList> LOCA::TurningPoint::MooreSpence::SalingerBordering::solverParams [protected] |
Solver parameters.
Definition at line 197 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Teuchos::RCP<LOCA::TurningPoint::MooreSpence::AbstractGroup> LOCA::TurningPoint::MooreSpence::SalingerBordering::group [protected] |
Underlying group.
Definition at line 200 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), solveContiguous(), and solveTransposeContiguous().
Teuchos::RCP<LOCA::TurningPoint::MooreSpence::ExtendedGroup> LOCA::TurningPoint::MooreSpence::SalingerBordering::tpGroup [protected] |
Turning point group.
Definition at line 203 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), solveContiguous(), and solveTranspose().
Teuchos::RCP<const NOX::Abstract::Vector> LOCA::TurningPoint::MooreSpence::SalingerBordering::nullVector [protected] |
Null vector.
Definition at line 206 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), solveContiguous(), and solveTransposeContiguous().
Teuchos::RCP<const NOX::Abstract::Vector> LOCA::TurningPoint::MooreSpence::SalingerBordering::JnVector [protected] |
Jacobian times null vector.
Definition at line 209 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), and solveContiguous().
Teuchos::RCP<const NOX::Abstract::MultiVector> LOCA::TurningPoint::MooreSpence::SalingerBordering::dfdp [protected] |
df/dp
Definition at line 212 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), and solveTransposeContiguous().
Teuchos::RCP<const NOX::Abstract::MultiVector> LOCA::TurningPoint::MooreSpence::SalingerBordering::dJndp [protected] |
d(Jn)/dp
Definition at line 215 of file LOCA_TurningPoint_MooreSpence_SalingerBordering.H.
Referenced by setBlocks(), and solveTransposeContiguous().