#include <NOX_Direction_SteepestDescent.H>
Inheritance diagram for NOX::Direction::SteepestDescent:


Public Types | |
| TwoNorm | |
| Scale by the 2-norm of the gradient. | |
| QuadMin | |
| Scale by the step that minimizes the 1-D quadratic. | |
| FunctionTwoNorm | |
| Scale by the 2-norm of F. | |
| None | |
| No scaling at all. | |
| enum | ScalingType { TwoNorm, QuadMin, FunctionTwoNorm, None } |
| Scaling types. More... | |
Public Member Functions | |
| SteepestDescent (const Teuchos::RCP< NOX::GlobalData > &gd, Teuchos::ParameterList ¶ms) | |
| Constructor. | |
| ~SteepestDescent () | |
| Destructor. | |
| bool | reset (const Teuchos::RCP< NOX::GlobalData > &gd, Teuchos::ParameterList ¶ms) |
| Reset direction based on possibly new parameters. | |
| bool | compute (NOX::Abstract::Vector &dir, NOX::Abstract::Group &grp, const NOX::Solver::Generic &solver) |
Compute the direction vector, dir, for a specific method given the current group, grp. | |
| virtual bool | compute (NOX::Abstract::Vector &dir, NOX::Abstract::Group &grp, const NOX::Solver::LineSearchBased &solver) |
| Same as compute(NOX::Abstract::Vector&, NOX::Abstract::Group&, const NOX::Solver::Generic&). | |
Calculates the direction
This is the (scaled) gradient of the function
. The valued of
depends on the choice of "Scaling Type" below.
Parameters
"Direction":
"Direction"/"Steepest Descent":
[default]


| bool NOX::Direction::SteepestDescent::compute | ( | NOX::Abstract::Vector & | dir, | |
| NOX::Abstract::Group & | grp, | |||
| const NOX::Solver::LineSearchBased & | solver | |||
| ) | [virtual] |
Same as compute(NOX::Abstract::Vector&, NOX::Abstract::Group&, const NOX::Solver::Generic&).
Enables direct support for line search based solvers for the purpose of efficiency since the LineSearchBased object has a getStep() function that some directions require.
If it is not redefined in the derived class, it will just call the compute with the NOX::Solver::Generic argument.
Reimplemented from NOX::Direction::Generic.
| bool NOX::Direction::SteepestDescent::compute | ( | NOX::Abstract::Vector & | dir, | |
| NOX::Abstract::Group & | grp, | |||
| const NOX::Solver::Generic & | solver | |||
| ) | [virtual] |
Compute the direction vector, dir, for a specific method given the current group, grp.
The grp is not const so that we can compute the F vector, the Jacobian matrix, the Newton vector, and so on.
Const access to the solver is used for getting additional information such as the past solution, the iteration number, and so on.
Implements NOX::Direction::Generic.
1.4.7