|
NOX
Development
|
Pseudo-transient solver. More...
#include <NOX_Solver_PseudoTransient.hpp>


Public Member Functions | |
| PseudoTransient (const Teuchos::RCP< NOX::Abstract::Group > &xGrp, const Teuchos::RCP< NOX::StatusTest::Generic > &tests, const Teuchos::RCP< Teuchos::ParameterList > ¶ms) | |
| void | setParameterList (const Teuchos::RCP< Teuchos::ParameterList > ¶mList) |
|
Teuchos::RCP< const Teuchos::ParameterList > | getValidParameters () const |
| void | reset (const NOX::Abstract::Vector &initialGuess, const Teuchos::RCP< NOX::StatusTest::Generic > &tests) |
| Resets the solver, sets a new status test, and sets a new initial guess. | |
| void | reset (const NOX::Abstract::Vector &initialGuess) |
| Resets the solver and sets a new initial guess. | |
| NOX::StatusTest::StatusType | getStatus () |
| Check current convergence and failure status. | |
| NOX::StatusTest::StatusType | step () |
| Do one nonlinear step in the iteration sequence and return status. | |
| NOX::StatusTest::StatusType | solve () |
| Solve the nonlinear problem and return final status. | |
| const NOX::Abstract::Group & | getSolutionGroup () const |
| Return a reference to the current solution group. | |
| const NOX::Abstract::Group & | getPreviousSolutionGroup () const |
| Return a reference to the previous solution group. | |
| int | getNumIterations () const |
| Get number of iterations. | |
| const Teuchos::ParameterList & | getList () const |
| Return a reference to the solver parameters. | |
| double | getStepSize () const |
|
Teuchos::RCP< const NOX::Abstract::Group > | getSolutionGroupPtr () const |
| Return a RCP to the solution group. | |
|
Teuchos::RCP< const NOX::Abstract::Group > | getPreviousSolutionGroupPtr () const |
| Return a RCP to the previous solution group. | |
|
Teuchos::RCP< const Teuchos::ParameterList > | getListPtr () const |
| Return a RCP to the solver parameters. | |
Protected Member Functions | |
| virtual void | init () |
| virtual void | printUpdate () |
Protected Attributes | |
| Teuchos::RCP< NOX::GlobalData > | globalDataPtr |
| Pointer to the global data object. | |
| Teuchos::RCP< NOX::Utils > | utilsPtr |
| Utils. | |
|
Teuchos::RCP < NOX::Abstract::Group > | solnPtr |
| Current solution. | |
|
Teuchos::RCP < NOX::Abstract::Group > | oldSolnPtr |
| Previous solution pointer. | |
|
Teuchos::RCP < NOX::Abstract::Group > | transientResidualGroup |
| Group used to evaluate a transient residual. | |
|
Teuchos::RCP < NOX::Abstract::Vector > | dirPtr |
| Current search direction pointer. | |
|
Teuchos::RCP < NOX::StatusTest::Generic > | testPtr |
| Stopping test. | |
| Teuchos::RCP < NOX::LineSearch::Generic > | lineSearchPtr |
| Input parameters. | |
|
Teuchos::RCP < NOX::Direction::Generic > | directionPtr |
| Search Direction. | |
| double | stepSize |
| Current step. | |
| int | nIter |
| Number of nonlinear iterations. | |
| NOX::StatusTest::StatusType | status |
| Status of nonlinear solver. | |
| NOX::StatusTest::CheckType | checkType |
| Type of check to use for status tests. See NOX::StatusTest for more details. | |
| NOX::Solver::PrePostOperator | prePostOperator |
| Pointer to a user defined NOX::Abstract::PrePostOperator object. | |
| Teuchos::RCP< NOX::Thyra::Group > | thyraSolnGroup |
| Pointer to solnPtr casted back to a thyra group. | |
| Teuchos::RCP< NOX::Thyra::Group > | thyraOldSolnGroup |
| Pointer to oldSolnPtr casted back to a thyra group. | |
| Teuchos::RCP< NOX::Thyra::Group > | thyraTransientResidualGroup |
| Group used to evaluate a transient residual. | |
| double | delta |
| Step size for pseudo-transient stepping. | |
| double | inv_delta |
| Inverse step size for pseudo-transient stepping. | |
| double | deltaInit |
| Initial step size. | |
| double | deltaMax |
| Maximum step size. | |
| double | deltaMin |
| Minimum step size. | |
| double | deltaOld |
| Step size from previous iteration. | |
| double | time |
| Pseudo-transient time. | |
|
Teuchos::RCP < ::Thyra::VectorBase< double > > | x_dot |
| solution time derivative used for scaling operator V in pseudo-transient paper | |
| bool | use_transient_residual |
| If set to true, the candidate direction will use the transient residual instead of the steady-state residual. This is a modification of the Kelley-Keyes paper. | |
| int | max_pseudo_transient_iterations |
| Maximum number of iterations before pseudo-transient is disabled and the algorithm switches to a line search-based direct to steady state solve. | |
|
Teuchos::RCP < Teuchos::ParameterList > | validParameters |
| Parameters that are valid for this solver. | |
Pseudo-transient solver.
Requires that the Thyra::ModelEvaluator implement transient support (uses alpha, beta, Jacobian evaluation and optionally x_dot in residual).
Based on the 1998 Kelley Keyes paper, with minor modifications.
Solve the nonlinear problem and return final status.
By "solve", we call iterate() until the NOX::StatusTest value is either NOX::StatusTest::Converged or NOX::StatusTest::Failed.
Implements NOX::Solver::Generic.
References Teuchos::ParameterList::set(), Teuchos::ParameterList::sublist(), and NOX::StatusTest::Unconverged.
Input parameters.
Linesearch.
1.7.6.1