NOX::Direction::SteepestDescent Class Reference

Calculates the steepest descent direction. More...

#include <NOX_Direction_SteepestDescent.H>

Inheritance diagram for NOX::Direction::SteepestDescent:

[legend]
Collaboration diagram for NOX::Direction::SteepestDescent:
[legend]
List of all members.

Public Types

enum  ScalingType { TwoNorm, QuadMin, FunctionTwoNorm, None }
 Scaling types. More...

Public Member Functions

 SteepestDescent (const NOX::Utils &u, NOX::Parameter::List &params)
 Constructor.
 ~SteepestDescent ()
 Destructor.
bool reset (NOX::Parameter::List &params)
 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.

Detailed Description

Calculates the steepest descent direction.

Calculates the direction

\[ d = - \gamma \nabla f(x) = -\gamma J(x)^T F(x) \]

This is the (scaled) gradient of the function $f(x) = \frac{1}{2} \|F(x)\|^2$. The valued of $\gamma$ depends on the choice of "Scaling Type" below.

Parameters

"Direction":

"Direction"/"Steepest Descent":


Member Enumeration Documentation

enum NOX::Direction::SteepestDescent::ScalingType
 

Scaling types.

Enumeration values:
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.


Member Function Documentation

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.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:42:27 2008 for NOX by doxygen 1.3.9.1