OpenMD  2.5
Molecular Dynamics in the Open
QuantLib::ArmijoLineSearch Class Reference

Armijo line search. More...

#include <Armijo.hpp>

Inheritance diagram for QuantLib::ArmijoLineSearch:

Public Member Functions

 ArmijoLineSearch (RealType eps=1e-8, RealType alpha=0.05, RealType beta=0.65)
 Default constructor. More...
RealType operator() (Problem &P, EndCriteria::Type &ecType, const EndCriteria &, const RealType t_ini)
 Perform line search. More...

Private Attributes

RealType alpha_
RealType beta_

Additional Inherited Members

Detailed Description

Armijo line search.

Let $ \alpha $ and $ \beta $ be 2 scalars in $ [0,1] $. Let $ x $ be the current value of the unknown, $ d $ the search direction and $ t $ the step. Let $ f $ be the function to minimize. The line search stops when $ t $ verifies

\[ f(x + t \cdot d) - f(x) \leq -\alpha t f'(x+t \cdot d) \]


\[ f(x+\frac{t}{\beta} \cdot d) - f(x) > -\frac{\alpha}{\beta} t f'(x+t \cdot d) \]

(see Polak, Algorithms and consistent approximations, Optimization, volume 124 of Applied Mathematical Sciences, Springer-Verlag, NY, 1997)

Definition at line 48 of file Armijo.hpp.

Constructor & Destructor Documentation

◆ ArmijoLineSearch()

QuantLib::ArmijoLineSearch::ArmijoLineSearch ( RealType  eps = 1e-8,
RealType  alpha = 0.05,
RealType  beta = 0.65 

Default constructor.

Definition at line 51 of file Armijo.hpp.

References operator()().

Member Function Documentation

◆ operator()()

Member Data Documentation

◆ alpha_

RealType QuantLib::ArmijoLineSearch::alpha_

Definition at line 62 of file Armijo.hpp.

Referenced by operator()().

◆ beta_

RealType QuantLib::ArmijoLineSearch::beta_

Definition at line 62 of file Armijo.hpp.

Referenced by operator()().

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