#include <NOX_Direction_Newton.H>
Inheritance diagram for NOX::Direction::Newton:
Public Member Functions  
Newton (const Teuchos::RefCountPtr< NOX::GlobalData > &gd, Teuchos::ParameterList ¶ms)  
Constructor.  
virtual  ~Newton () 
Destructor.  
virtual bool  reset (const Teuchos::RefCountPtr< NOX::GlobalData > &gd, Teuchos::ParameterList ¶ms) 
Reset direction based on possibly new parameters.  
virtual 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&).  
Protected Member Functions  
virtual bool  resetForcingTerm (const NOX::Abstract::Group &soln, const NOX::Abstract::Group &oldSoln, int niter, const NOX::Solver::Generic &solver) 
Computes the Newton direction by solving the Newton system.
Here is the n x n Jacobian matrix at the current iterate, is the nvector representing the nonlinear function at the current iterate, and is the nvector that we are solving for.
If we use an iterative linear solver for the Newton system, then this is called an inexact Newton method. The tolerance used to terminate the linear solve is called the forcing term. The forcing term may be constant, or it may be adjustable. In either case, at iteration we require,
Here is the forcing term for iteration .
With the following safeguards imposed:
With the following safeguards imposed:
Parameters
"Direction":
"Direction"/"Newton":
"Direction"/"Newton"/"Linear Solver":

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. 

Compute the direction vector,
The 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. 

Called each iteration to reset the forcing term (ie, the convergence tolerance for the linear solver). 