ROL
|
Provides the interface to compute optimization steps with nonlinear CG. More...
#include <ROL_NonlinearCG_U.hpp>
Public Member Functions | |
NonlinearCG_U (ParameterList &parlist, const Ptr< NonlinearCG< Real >> &nlcg=nullPtr) | |
Constructor. More... | |
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) More... | |
ENonlinearCG | enlcg_ |
std::string | ncgName_ |
Provides the interface to compute optimization steps with nonlinear CG.
Definition at line 28 of file ROL_NonlinearCG_U.hpp.
|
inline |
Constructor.
Constructor to build a NonlinearCG object with a user-defined nonlinear CG object. Algorithmic specifications are passed in through a ROL::ParameterList.
[in] | parlist | is a parameter list containing algorithmic specifications |
[in] | nlcg | is a user-defined NonlinearCG object |
Definition at line 46 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().
|
inlineoverridevirtual |
Implements ROL::DescentDirection_U< Real >.
Definition at line 63 of file ROL_NonlinearCG_U.hpp.
References ROL::Vector< Real >::apply(), ROL::Vector< Real >::dual(), ROL::NonlinearCG_U< Real >::nlcg_, ROL::Vector< Real >::norm(), ROL::Vector< Real >::scale(), and ROL::Vector< Real >::set().
|
inlineoverridevirtual |
Reimplemented from ROL::DescentDirection_U< Real >.
Definition at line 79 of file ROL_NonlinearCG_U.hpp.
References ROL::NonlinearCG_U< Real >::ncgName_.
|
private |
NonlinearCG object (used for quasi-Newton)
Definition at line 31 of file ROL_NonlinearCG_U.hpp.
Referenced by ROL::NonlinearCG_U< Real >::compute(), and ROL::NonlinearCG_U< Real >::NonlinearCG_U().
|
private |
Definition at line 32 of file ROL_NonlinearCG_U.hpp.
Referenced by ROL::NonlinearCG_U< Real >::NonlinearCG_U().
|
private |
Definition at line 33 of file ROL_NonlinearCG_U.hpp.
Referenced by ROL::NonlinearCG_U< Real >::NonlinearCG_U(), and ROL::NonlinearCG_U< Real >::printName().