ROL
|
Implements a Brent's method line search. More...
#include <ROL_Brents.hpp>
Classes | |
class | testFunction |
Public Member Functions | |
virtual | ~Brents () |
Brents (ROL::ParameterList &parlist) | |
void | initialize (const Vector< Real > &x, const Vector< Real > &s, const Vector< Real > &g, Objective< Real > &obj, BoundConstraint< Real > &con) |
void | run (Real &alpha, Real &fval, int &ls_neval, int &ls_ngrad, const Real &gs, const Vector< Real > &s, const Vector< Real > &x, Objective< Real > &obj, BoundConstraint< Real > &con) |
Public Member Functions inherited from ROL::LineSearch< Real > | |
virtual | ~LineSearch () |
LineSearch (ROL::ParameterList &parlist) | |
void | setData (Real &eps, const Vector< Real > &g) |
void | setMaxitUpdate (Real &alpha, Real &fnew, const Real &fold) |
Private Member Functions | |
void | run_brents (int &neval, Real &fval, Real &alpha, typename LineSearch< Real >::ScalarFunction &phi, const Real A, const Real B) const |
bool | test_brents (void) const |
Private Attributes | |
Real | tol_ |
int | niter_ |
bool | test_ |
ROL::Ptr< Vector< Real > > | xnew_ |
Additional Inherited Members | |
Protected Member Functions inherited from ROL::LineSearch< Real > | |
virtual bool | status (const ELineSearch type, int &ls_neval, int &ls_ngrad, const Real alpha, const Real fold, const Real sgold, const Real fnew, const Vector< Real > &x, const Vector< Real > &s, Objective< Real > &obj, BoundConstraint< Real > &con) |
virtual Real | getInitialAlpha (int &ls_neval, int &ls_ngrad, const Real fval, const Real gs, const Vector< Real > &x, const Vector< Real > &s, Objective< Real > &obj, BoundConstraint< Real > &con) |
void | setNextInitialAlpha (Real alpha) |
void | updateIterate (Vector< Real > &xnew, const Vector< Real > &x, const Vector< Real > &s, Real alpha, BoundConstraint< Real > &con) |
bool | useLocalMinimizer () |
bool | takeNoStep () |
Implements a Brent's method line search.
Definition at line 23 of file ROL_Brents.hpp.
|
inlinevirtual |
Definition at line 34 of file ROL_Brents.hpp.
|
inline |
Definition at line 37 of file ROL_Brents.hpp.
References ROL::Brents< Real >::niter_, ROL::Brents< Real >::test_, and ROL::Brents< Real >::tol_.
|
inlinevirtual |
Reimplemented from ROL::LineSearch< Real >.
Definition at line 48 of file ROL_Brents.hpp.
References ROL::Vector< Real >::clone(), ROL::LineSearch< Real >::initialize(), ROL::Brents< Real >::test_, ROL::Brents< Real >::test_brents(), and ROL::Brents< Real >::xnew_.
|
inlinevirtual |
Implements ROL::LineSearch< Real >.
Definition at line 65 of file ROL_Brents.hpp.
References ROL::LineSearch< Real >::getInitialAlpha(), ROL::Brents< Real >::run_brents(), and ROL::Brents< Real >::xnew_.
|
inlineprivate |
Definition at line 85 of file ROL_Brents.hpp.
References ROL::Brents< Real >::niter_, ROL::Brents< Real >::tol_, and zero.
Referenced by ROL::Brents< Real >::run(), and ROL::Brents< Real >::test_brents().
|
inlineprivate |
Definition at line 177 of file ROL_Brents.hpp.
References ROL::Brents< Real >::run_brents(), ROL::Brents< Real >::tol_, and zero.
Referenced by ROL::Brents< Real >::initialize().
|
private |
Definition at line 25 of file ROL_Brents.hpp.
Referenced by ROL::Brents< Real >::Brents(), ROL::Brents< Real >::run_brents(), and ROL::Brents< Real >::test_brents().
|
private |
Definition at line 26 of file ROL_Brents.hpp.
Referenced by ROL::Brents< Real >::Brents(), and ROL::Brents< Real >::run_brents().
|
private |
Definition at line 27 of file ROL_Brents.hpp.
Referenced by ROL::Brents< Real >::Brents(), and ROL::Brents< Real >::initialize().
|
private |
Definition at line 29 of file ROL_Brents.hpp.
Referenced by ROL::Brents< Real >::initialize(), and ROL::Brents< Real >::run().