NOX::LineSearch::Generic Class Reference

Generic line search interface More...

#include <NOX_LineSearch_Generic.H>

Inheritance diagram for NOX::LineSearch::Generic:

List of all members.

Public Member Functions

 Generic ()
 Default constructor.
virtual ~Generic ()
virtual bool reset (NOX::Parameter::List &params)=0
 Reset parameters.
virtual bool compute (NOX::Abstract::Group &grp, double &step, const NOX::Abstract::Vector &dir, const NOX::Solver::Generic &s)=0
 Perform a line search.

Detailed Description

Generic line search interface

Every line search should respect the following Parameter:

Member Function Documentation

virtual bool NOX::LineSearch::Generic::compute NOX::Abstract::Group grp,
double &  step,
const NOX::Abstract::Vector dir,
const NOX::Solver::Generic s
[pure virtual]

Perform a line search.


  • $x_{\rm new}$ denotes the new solution to be calculated (corresponding to grp)
  • $\lambda$ denotes the step to be calculated (step),
  • $d$ denotes the search direction (dir).
  • $x_{\rm old}$ denotes the previous solution (i.e., the result of s.getPreviousSolutionGroup().getX())

In the end, we should have computed $ \lambda $ and updated grp so that

\[ x_{\rm new} = x_{\rm old} + \lambda d. \]

Ideally, $ \|F(x_{\rm new})\| < \|F(x_{\rm old})\| $.

Implemented in NOX::LineSearch::Backtrack, NOX::LineSearch::FullStep, NOX::LineSearch::Manager, NOX::LineSearch::MoreThuente, and NOX::LineSearch::Polynomial.

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