NOX
Development
|
Moore-Spence Hopf solver strategy based on "Salinger" bordering. This is the classic 5-solve Hopf bordering method. More...
#include <LOCA_Hopf_MooreSpence_SalingerBordering.H>
Protected Member Functions | |
NOX::Abstract::Group::ReturnType | solveContiguous (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input_x, const NOX::Abstract::MultiVector &input_y, const NOX::Abstract::MultiVector &input_z, const NOX::Abstract::MultiVector::DenseMatrix &input_w, const NOX::Abstract::MultiVector::DenseMatrix &input_p, NOX::Abstract::MultiVector &result_x, NOX::Abstract::MultiVector &result_y, NOX::Abstract::MultiVector &result_z, NOX::Abstract::MultiVector::DenseMatrix &result_w, NOX::Abstract::MultiVector::DenseMatrix &result_p) 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::Hopf::MooreSpence::AbstractGroup > | group |
Underlying group. | |
Teuchos::RCP < LOCA::Hopf::MooreSpence::ExtendedGroup > | hopfGroup |
Hopf group. | |
Teuchos::RCP< const NOX::Abstract::Vector > | yVector |
Real component of eigenvector. | |
Teuchos::RCP< const NOX::Abstract::Vector > | zVector |
Imaginary component of eigenvector. | |
Teuchos::RCP< const NOX::Abstract::Vector > | CeRealVector |
Jy-wBz vector. | |
Teuchos::RCP< const NOX::Abstract::Vector > | CeImagVector |
Jz+wBy vector. | |
Teuchos::RCP< const NOX::Abstract::Vector > | dfdp |
df/dp vector | |
Teuchos::RCP< const NOX::Abstract::Vector > | dCedpReal |
d(Jy-wBz)/dp vector | |
Teuchos::RCP< const NOX::Abstract::Vector > | dCedpImag |
d(Jz+wBy)/dp vector | |
Teuchos::RCP< const NOX::Abstract::Vector > | ByVector |
By vector. | |
Teuchos::RCP< const NOX::Abstract::Vector > | minusBzVector |
-Bz vector | |
double | w |
Frequency w. | |
Moore-Spence Hopf solver strategy based on "Salinger" bordering. This is the classic 5-solve Hopf bordering method.
This class solves the Moore-Spence Hopf Newton equations:
via the following block elimination scheme:
LOCA::Hopf::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. |
|
virtual |
Set blocks in extended linear system.
group | [in] Underlying group representing J |
hopfGroup | [in] Hopf group representing the Hopf equations. |
yVector | [in] Vector representing y |
zVector | [in] Vector representing z |
CeRealVector | [in] Vector representing Jy-wBz |
CeImagVector | [in] Vector representing Jz+wBy |
dfdp | [in] Vector representing df/dp |
dCedpReal | [in] Vector representing d(Jy-wBz)/dp |
dCedpImag | [in] Vector representing d(Jz+wBy)/dp |
ByVector | [in] Vector representing By |
mBzVector | [in] Vector representing -Bz |
w | [in] Bifurcation frequency w |
Implements LOCA::Hopf::MooreSpence::SolverStrategy.
|
virtual |
Solves the extended system as defined above.
The params argument is the linear solver parameters.
Implements LOCA::Hopf::MooreSpence::SolverStrategy.
References NOX::Abstract::MultiVector::clone(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::getBifParams(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::getFrequencies(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::getImagEigenMultiVec(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::getRealEigenMultiVec(), LOCA::Hopf::MooreSpence::ExtendedMultiVector::getXMultiVec(), NOX::Abstract::MultiVector::init(), LOCA::Extended::MultiVector::numVectors(), NOX::Abstract::MultiVector::setBlock(), and NOX::Abstract::MultiVector::subView().