So-Bogus
A c++ sparse block matrix library aimed at Second Order cone problems
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
bogus::NonSmoothNewton< NSFunction > Class Template Reference

Dense, naive Newton implementation. More...

#include <NonSmoothNewton.hpp>

Public Types

typedef NSFunction::Traits Traits
 
typedef Traits::Scalar Scalar
 
typedef Traits::Vector Vector
 
typedef Traits::Matrix Matrix
 

Public Member Functions

 NonSmoothNewton (const NSFunction &func, Scalar tol)
 
Scalar solve (Vector &x) const
 Tries to find x such that m_func( x ) = 0. More...
 
void setMaxIters (unsigned maxIters)
 Sets the maximum number of iterations.
 
void setTol (Scalar tol)
 Sets the solver tolerance.
 

Detailed Description

template<typename NSFunction>
class bogus::NonSmoothNewton< NSFunction >

Dense, naive Newton implementation.

Template Parameters
NSFunctionThe type of the function for which to find the zeros. Should define compute() and computeJacobian() methods. Does not have to be smooth or convex, but that helps.
See Also
FischerBurmeister

Member Function Documentation

template<typename NSFunction >
Scalar bogus::NonSmoothNewton< NSFunction >::solve ( Vector &  x) const

Tries to find x such that m_func( x ) = 0.

Or, more precisely, such that

\[ \Phi(x) = \frac 1 2 \vert f(x) \vert_2^2 < tol \]

Parameters
xUsed both as an initial guess and to return the approximate solution
Returns
$ \Phi(x) $

The documentation for this class was generated from the following file: