ROL
ROL::ScalarMinimizationLineSearch< Real > Class Template Reference

Implements line search methods that attempt to minimize the scalar function \(\phi(t) := f(x+ts)\). More...

#include <ROL_ScalarMinimizationLineSearch.hpp>

Inheritance diagram for ROL::ScalarMinimizationLineSearch< Real >:

Classes

class  Phi
class  LineSearchStatusTest

Public Member Functions

 ScalarMinimizationLineSearch (ROL::ParameterList &parlist, const ROL::Ptr< ScalarMinimization< Real > > &sm=ROL::nullPtr, const ROL::Ptr< Bracketing< Real > > &br=ROL::nullPtr, const ROL::Ptr< ScalarFunction< Real > > &sf=ROL::nullPtr)
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 Attributes

ROL::Ptr< Vector< Real > > xnew_
ROL::Ptr< Vector< Real > > g_
ROL::Ptr< ScalarMinimization< Real > > sm_
ROL::Ptr< Bracketing< Real > > br_
ROL::Ptr< ScalarFunction< Real > > sf_
ECurvatureCondition econd_
Real c1_
Real c2_
Real c3_
int max_nfval_

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 ()

Detailed Description

template<class Real>
class ROL::ScalarMinimizationLineSearch< Real >

Implements line search methods that attempt to minimize the scalar function \(\phi(t) := f(x+ts)\).

Definition at line 28 of file ROL_ScalarMinimizationLineSearch.hpp.

Constructor & Destructor Documentation

◆ ScalarMinimizationLineSearch()

template<class Real>
ROL::ScalarMinimizationLineSearch< Real >::ScalarMinimizationLineSearch ( ROL::ParameterList & parlist,
const ROL::Ptr< ScalarMinimization< Real > > & sm = ROL::nullPtr,
const ROL::Ptr< Bracketing< Real > > & br = ROL::nullPtr,
const ROL::Ptr< ScalarFunction< Real > > & sf = ROL::nullPtr )
inline

Member Function Documentation

◆ initialize()

template<class Real>
void ROL::ScalarMinimizationLineSearch< Real >::initialize ( const Vector< Real > & x,
const Vector< Real > & s,
const Vector< Real > & g,
Objective< Real > & obj,
BoundConstraint< Real > & con )
inlinevirtual

◆ run()

template<class Real>
void ROL::ScalarMinimizationLineSearch< Real >::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 )
inlinevirtual

Member Data Documentation

◆ xnew_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::ScalarMinimizationLineSearch< Real >::xnew_
private

Definition at line 30 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by initialize(), and run().

◆ g_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::ScalarMinimizationLineSearch< Real >::g_
private

Definition at line 31 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by initialize(), and run().

◆ sm_

template<class Real>
ROL::Ptr<ScalarMinimization<Real> > ROL::ScalarMinimizationLineSearch< Real >::sm_
private

Definition at line 32 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ br_

template<class Real>
ROL::Ptr<Bracketing<Real> > ROL::ScalarMinimizationLineSearch< Real >::br_
private

Definition at line 33 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ sf_

template<class Real>
ROL::Ptr<ScalarFunction<Real> > ROL::ScalarMinimizationLineSearch< Real >::sf_
private

Definition at line 34 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ econd_

template<class Real>
ECurvatureCondition ROL::ScalarMinimizationLineSearch< Real >::econd_
private

Definition at line 36 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ c1_

template<class Real>
Real ROL::ScalarMinimizationLineSearch< Real >::c1_
private

Definition at line 37 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ c2_

template<class Real>
Real ROL::ScalarMinimizationLineSearch< Real >::c2_
private

Definition at line 38 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ c3_

template<class Real>
Real ROL::ScalarMinimizationLineSearch< Real >::c3_
private

Definition at line 39 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().

◆ max_nfval_

template<class Real>
int ROL::ScalarMinimizationLineSearch< Real >::max_nfval_
private

Definition at line 40 of file ROL_ScalarMinimizationLineSearch.hpp.

Referenced by run(), and ScalarMinimizationLineSearch().


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