ROL
ROL::TrustRegion< Real > Class Template Referenceabstract

Provides interface for and implements trust-region subproblem solvers. More...

#include <ROL_TrustRegion.hpp>

Inheritance diagram for ROL::TrustRegion< Real >:

Public Member Functions

virtual ~TrustRegion ()
 TrustRegion (ROL::ParameterList &parlist)
virtual void initialize (const Vector< Real > &x, const Vector< Real > &s, const Vector< Real > &g)
virtual void update (Vector< Real > &x, Real &fnew, Real &del, int &nfval, int &ngrad, ETrustRegionFlag &flagTR, const Vector< Real > &s, const Real snorm, const Real fold, const Vector< Real > &g, int iter, Objective< Real > &obj, BoundConstraint< Real > &bnd, TrustRegionModel< Real > &model)
virtual void run (Vector< Real > &s, Real &snorm, int &iflag, int &iter, const Real del, TrustRegionModel< Real > &model)=0
void setPredictedReduction (const Real pRed)
Real getPredictedReduction (void) const

Private Attributes

ROL::Ptr< Vector< Real > > prim_
ROL::Ptr< Vector< Real > > dual_
ROL::Ptr< Vector< Real > > xtmp_
ETrustRegionModel TRmodel_
Real eta0_
Real eta1_
Real eta2_
Real gamma0_
Real gamma1_
Real gamma2_
Real pRed_
Real TRsafe_
Real eps_
Real mu0_
std::vector< bool > useInexact_
Real ftol_old_
Real scale_
Real omega_
Real force_
Real forceFactor_
int updateIter_
int cnt_
unsigned verbosity_
Real alpha_init_
 Initial line-search parameter for projected methods.
int max_fval_
 Maximum function evaluations in line-search for projected methods.
Real mu_
 Post-Smoothing tolerance for projected methods.
Real beta_
 Post-Smoothing rate for projected methods.

Detailed Description

template<class Real>
class ROL::TrustRegion< Real >

Provides interface for and implements trust-region subproblem solvers.

Definition at line 26 of file ROL_TrustRegion.hpp.

Constructor & Destructor Documentation

◆ ~TrustRegion()

template<class Real>
virtual ROL::TrustRegion< Real >::~TrustRegion ( )
inlinevirtual

Definition at line 56 of file ROL_TrustRegion.hpp.

◆ TrustRegion()

Member Function Documentation

◆ initialize()

template<class Real>
virtual void ROL::TrustRegion< Real >::initialize ( const Vector< Real > & x,
const Vector< Real > & s,
const Vector< Real > & g )
inlinevirtual

◆ update()

template<class Real>
virtual void ROL::TrustRegion< Real >::update ( Vector< Real > & x,
Real & fnew,
Real & del,
int & nfval,
int & ngrad,
ETrustRegionFlag & flagTR,
const Vector< Real > & s,
const Real snorm,
const Real fold,
const Vector< Real > & g,
int iter,
Objective< Real > & obj,
BoundConstraint< Real > & bnd,
TrustRegionModel< Real > & model )
inlinevirtual

◆ run()

template<class Real>
virtual void ROL::TrustRegion< Real >::run ( Vector< Real > & s,
Real & snorm,
int & iflag,
int & iter,
const Real del,
TrustRegionModel< Real > & model )
pure virtual

◆ setPredictedReduction()

template<class Real>
void ROL::TrustRegion< Real >::setPredictedReduction ( const Real pRed)
inline

◆ getPredictedReduction()

template<class Real>
Real ROL::TrustRegion< Real >::getPredictedReduction ( void ) const
inline

Definition at line 364 of file ROL_TrustRegion.hpp.

References pRed_.

Member Data Documentation

◆ prim_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::TrustRegion< Real >::prim_
private

Definition at line 29 of file ROL_TrustRegion.hpp.

Referenced by initialize(), and update().

◆ dual_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::TrustRegion< Real >::dual_
private

Definition at line 29 of file ROL_TrustRegion.hpp.

Referenced by initialize(), and update().

◆ xtmp_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::TrustRegion< Real >::xtmp_
private

Definition at line 29 of file ROL_TrustRegion.hpp.

Referenced by initialize(), and update().

◆ TRmodel_

template<class Real>
ETrustRegionModel ROL::TrustRegion< Real >::TRmodel_
private

Definition at line 31 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta0_

template<class Real>
Real ROL::TrustRegion< Real >::eta0_
private

Definition at line 33 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta1_

template<class Real>
Real ROL::TrustRegion< Real >::eta1_
private

Definition at line 33 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta2_

template<class Real>
Real ROL::TrustRegion< Real >::eta2_
private

Definition at line 33 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma0_

template<class Real>
Real ROL::TrustRegion< Real >::gamma0_
private

Definition at line 34 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma1_

template<class Real>
Real ROL::TrustRegion< Real >::gamma1_
private

Definition at line 34 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma2_

template<class Real>
Real ROL::TrustRegion< Real >::gamma2_
private

Definition at line 34 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ pRed_

template<class Real>
Real ROL::TrustRegion< Real >::pRed_
private

◆ TRsafe_

template<class Real>
Real ROL::TrustRegion< Real >::TRsafe_
private

Definition at line 36 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion().

◆ eps_

template<class Real>
Real ROL::TrustRegion< Real >::eps_
private

Definition at line 36 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ mu0_

template<class Real>
Real ROL::TrustRegion< Real >::mu0_
private

Definition at line 37 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ useInexact_

template<class Real>
std::vector<bool> ROL::TrustRegion< Real >::useInexact_
private

Definition at line 39 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ ftol_old_

template<class Real>
Real ROL::TrustRegion< Real >::ftol_old_
private

Definition at line 41 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ scale_

template<class Real>
Real ROL::TrustRegion< Real >::scale_
private

Definition at line 43 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ omega_

template<class Real>
Real ROL::TrustRegion< Real >::omega_
private

Definition at line 43 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ force_

template<class Real>
Real ROL::TrustRegion< Real >::force_
private

Definition at line 43 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ forceFactor_

template<class Real>
Real ROL::TrustRegion< Real >::forceFactor_
private

Definition at line 43 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ updateIter_

template<class Real>
int ROL::TrustRegion< Real >::updateIter_
private

Definition at line 44 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ cnt_

template<class Real>
int ROL::TrustRegion< Real >::cnt_
private

Definition at line 44 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ verbosity_

template<class Real>
unsigned ROL::TrustRegion< Real >::verbosity_
private

Definition at line 46 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ alpha_init_

template<class Real>
Real ROL::TrustRegion< Real >::alpha_init_
private

Initial line-search parameter for projected methods.

Definition at line 49 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ max_fval_

template<class Real>
int ROL::TrustRegion< Real >::max_fval_
private

Maximum function evaluations in line-search for projected methods.

Definition at line 50 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ mu_

template<class Real>
Real ROL::TrustRegion< Real >::mu_
private

Post-Smoothing tolerance for projected methods.

Definition at line 51 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ beta_

template<class Real>
Real ROL::TrustRegion< Real >::beta_
private

Post-Smoothing rate for projected methods.

Definition at line 52 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().


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