ROL
Public Member Functions | Private Attributes | List of all members
ROL::NonlinearCG_U< Real > Class Template Reference

Provides the interface to compute optimization steps with nonlinear CG. More...

#include <ROL_NonlinearCG_U.hpp>

+ Inheritance diagram for ROL::NonlinearCG_U< Real >:

Public Member Functions

 NonlinearCG_U (ParameterList &parlist, const Ptr< NonlinearCG< Real > > &nlcg=nullPtr)
 Constructor.
 
void compute (Vector< Real > &s, Real &snorm, Real &sdotg, int &iter, int &flag, const Vector< Real > &x, const Vector< Real > &g, Objective< Real > &obj) override
 
std::string printName (void) const override
 
- Public Member Functions inherited from ROL::DescentDirection_U< Real >
virtual ~DescentDirection_U ()
 
virtual void initialize (const Vector< Real > &x, const Vector< Real > &g)
 
virtual void update (const Vector< Real > &x, const Vector< Real > &s, const Vector< Real > &gold, const Vector< Real > &gnew, const Real snorm, const int iter)
 

Private Attributes

Ptr< NonlinearCG< Real > > nlcg_
 NonlinearCG object (used for quasi-Newton)
 
ENonlinearCG enlcg_
 
std::string ncgName_
 

Detailed Description

template<typename Real>
class ROL::NonlinearCG_U< Real >

Provides the interface to compute optimization steps with nonlinear CG.

Definition at line 62 of file ROL_NonlinearCG_U.hpp.

Constructor & Destructor Documentation

◆ NonlinearCG_U()

template<typename Real >
ROL::NonlinearCG_U< Real >::NonlinearCG_U ( ParameterList & parlist,
const Ptr< NonlinearCG< Real > > & nlcg = nullPtr )
inline

Constructor.

Constructor to build a NonlinearCG object with a user-defined nonlinear CG object. Algorithmic specifications are passed in through a ROL::ParameterList.

Parameters
[in]parlistis a parameter list containing algorithmic specifications
[in]nlcgis a user-defined NonlinearCG object

Definition at line 80 of file ROL_NonlinearCG_U.hpp.

References ROL::NonlinearCG_U< Real >::enlcg_, ROL::NonlinearCG_U< Real >::ncgName_, ROL::NonlinearCG_U< Real >::nlcg_, and ROL::StringToENonlinearCG().

Member Function Documentation

◆ compute()

template<typename Real >
void ROL::NonlinearCG_U< Real >::compute ( Vector< Real > & s,
Real & snorm,
Real & sdotg,
int & iter,
int & flag,
const Vector< Real > & x,
const Vector< Real > & g,
Objective< Real > & obj )
inlineoverridevirtual

◆ printName()

template<typename Real >
std::string ROL::NonlinearCG_U< Real >::printName ( void ) const
inlineoverridevirtual

Reimplemented from ROL::DescentDirection_U< Real >.

Definition at line 113 of file ROL_NonlinearCG_U.hpp.

References ROL::NonlinearCG_U< Real >::ncgName_.

Member Data Documentation

◆ nlcg_

template<typename Real >
Ptr<NonlinearCG<Real> > ROL::NonlinearCG_U< Real >::nlcg_
private

NonlinearCG object (used for quasi-Newton)

Definition at line 65 of file ROL_NonlinearCG_U.hpp.

Referenced by ROL::NonlinearCG_U< Real >::compute(), and ROL::NonlinearCG_U< Real >::NonlinearCG_U().

◆ enlcg_

template<typename Real >
ENonlinearCG ROL::NonlinearCG_U< Real >::enlcg_
private

Definition at line 66 of file ROL_NonlinearCG_U.hpp.

Referenced by ROL::NonlinearCG_U< Real >::NonlinearCG_U().

◆ ncgName_

template<typename Real >
std::string ROL::NonlinearCG_U< Real >::ncgName_
private

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