#include <NOX_Solver_LineSearchBased.H>
Inheritance diagram for NOX::Solver::LineSearchBased:
Public Member Functions | |
| LineSearchBased (NOX::Abstract::Group &grp, NOX::StatusTest::Generic &tests, NOX::Parameter::List ¶ms) | |
| Constructor. | |
| virtual | ~LineSearchBased () |
| Destructor. | |
| virtual bool | reset (NOX::Abstract::Group &grp, NOX::StatusTest::Generic &tests, NOX::Parameter::List ¶ms) |
| Reset the nonlinear solver for a new solve. | |
| virtual bool | reset (NOX::Abstract::Group &grp, NOX::StatusTest::Generic &tests) |
| A soft reset of the nonlinear solver for a new problem. | |
| virtual NOX::StatusTest::StatusType | getStatus () |
| Check current convergence and failure status. | |
| virtual NOX::StatusTest::StatusType | iterate () |
| Do one nonlinear method iteration and return status. | |
| virtual NOX::StatusTest::StatusType | solve () |
| Solve the nonlinear problem and return final status. | |
| virtual const NOX::Abstract::Group & | getSolutionGroup () const |
| Return a reference to the current solution group. | |
| virtual const NOX::Abstract::Group & | getPreviousSolutionGroup () const |
| Return a reference to the previous solution group. | |
| virtual int | getNumIterations () const |
| Get number of iterations. | |
| virtual const NOX::Parameter::List & | getParameterList () const |
| Return a refernece to the solver parameters. | |
| virtual double | getStepSize () const |
| Return the line search step size from the current iteration. | |
Protected Member Functions | |
| virtual void | init () |
| Print out initialization information and calcuation the RHS. | |
| virtual void | printUpdate () |
| Prints the current iteration information. | |
Protected Attributes | |
| NOX::Abstract::Group * | solnPtr |
| Current solution. | |
| NOX::Abstract::Group * | oldSolnPtr |
| Previous solution pointer. | |
| NOX::Abstract::Group & | oldSoln |
| Previous solution reference. | |
| NOX::Abstract::Vector * | dirPtr |
| Current search direction.pointer. | |
| NOX::Abstract::Vector & | dir |
| Current search direction.reference. | |
| NOX::StatusTest::Generic * | testPtr |
| Stopping test. | |
| NOX::Parameter::List * | paramsPtr |
| Input parameters. | |
| NOX::Utils | utils |
| Utils. | |
| NOX::LineSearch::Manager | lineSearch |
| Linesearch. | |
| NOX::Direction::Manager | direction |
| Search Direction. | |
| double | step |
| Current step. | |
| int | nIter |
| Number of nonlinear iterations. | |
| NOX::StatusTest::StatusType | status |
| Status of nonlinear solver. | |
| NOX::Parameter::PrePostOperator * | prePostOperatorPtr |
| Pointer to a user defined NOX::Abstract::PrePostOperator object. | |
| bool | havePrePostOperator |
| True if a PrePostOperator was registered with the solver. | |
Solves
using an iterative line-search-based method.
Each iteration, the solver does the following.
via a NOX::Direction method
and update
as
via a NOX::LineSearch method.
The iterations progress until the status tests (see NOX::StatusTest) determine either failure or convergence.
.The following parameter list entries are valid for this solver:
Output Parameters
Every time solve() is called, a sublist for output parameters called "Output" will be created and contain the following parameters.
"Output":
|
||||||||||||||||
|
Constructor. See reset(NOX::Abstract::Group&, NOX::StatusTest::Generic&, NOX::Parameter::List&) for description |
|
||||||||||||
|
A soft reset of the nonlinear solver for a new problem. This is a light-weight version of reset that takes no parameter list. Therefore, this reset only resets counters, the initial guess (contained in the grp argument) and new status tests (contained in the tests argument). This reset allows problems to bypass the potentially time consuming parsing of the parameter lists. Implements NOX::Solver::Generic. |
|
||||||||||||||||
|
Reset the nonlinear solver for a new solve.
Implements NOX::Solver::Generic. |
|
|
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. |
|
|
Current search direction.pointer. We have both a pointer and a reference because we need to create a DERIVED object and then want to have a reference to it. |
|
|
Previous solution pointer. We have both a pointer and a reference because we need to create a DERIVED object and then want to have a reference to it. |
1.3.9.1