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 60 of file ROL_TrustRegion.hpp.

Constructor & Destructor Documentation

◆ ~TrustRegion()

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

Definition at line 90 of file ROL_TrustRegion.hpp.

◆ TrustRegion()

Member Function Documentation

◆ initialize()

◆ 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 393 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 63 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 63 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 63 of file ROL_TrustRegion.hpp.

Referenced by initialize(), and update().

◆ TRmodel_

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

Definition at line 65 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta0_

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

Definition at line 67 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta1_

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

Definition at line 67 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ eta2_

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

Definition at line 67 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma0_

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

Definition at line 68 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma1_

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

Definition at line 68 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ gamma2_

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

Definition at line 68 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 70 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion().

◆ eps_

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

Definition at line 70 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ mu0_

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

Definition at line 71 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 73 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 75 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ scale_

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

Definition at line 77 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ omega_

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

Definition at line 77 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ force_

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

Definition at line 77 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ forceFactor_

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

Definition at line 77 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ updateIter_

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

Definition at line 78 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ cnt_

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

Definition at line 78 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().

◆ verbosity_

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

Definition at line 80 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 83 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 84 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 85 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 86 of file ROL_TrustRegion.hpp.

Referenced by TrustRegion(), and update().


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