ROL
|
Provides interface for and implements trust-region subproblem solvers. More...
#include <ROL_TrustRegion.hpp>
Public Member Functions | |
virtual | ~TrustRegion () |
TrustRegion (Teuchos::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, int &flagTR, const Vector< Real > &s, const Real snorm, const Real fold, const Vector< Real > &g, int iter, ProjectedObjective< Real > &pObj) |
void | setPredictedReduction (const Real pRed) |
Real | getPredictedReduction (void) const |
virtual void | run (Vector< Real > &s, Real &snorm, Real &del, int &iflag, int &iter, const Vector< Real > &x, const Vector< Real > &grad, const Real &gnorm, ProjectedObjective< Real > &pObj)=0 |
Private Member Functions | |
void | updateObj (Vector< Real > &x, int iter, ProjectedObjective< Real > &pObj) |
Private Attributes | |
Teuchos::RCP< Vector< Real > > | xupdate_ |
Teuchos::RCP< Vector< Real > > | Hs_ |
Real | delmax_ |
Real | eta0_ |
Real | eta1_ |
Real | eta2_ |
Real | gamma0_ |
Real | gamma1_ |
Real | gamma2_ |
Real | pRed_ |
Real | TRsafe_ |
Real | eps_ |
std::vector< bool > | useInexact_ |
Real | ftol_old_ |
Real | scale_ |
Real | omega_ |
Real | force_ |
int | updateIter_ |
int | forceFactor_ |
int | cnt_ |
bool | softUp_ |
unsigned | verbosity_ |
Provides interface for and implements trust-region subproblem solvers.
Definition at line 57 of file ROL_TrustRegion.hpp.
|
inlinevirtual |
Definition at line 103 of file ROL_TrustRegion.hpp.
|
inline |
Definition at line 106 of file ROL_TrustRegion.hpp.
References ROL::ROL_EPSILON.
|
inlineprivate |
Definition at line 91 of file ROL_TrustRegion.hpp.
References ROL::ProjectedObjective< Real >::update().
|
inlinevirtual |
Reimplemented in ROL::TruncatedCG< Real >, ROL::CauchyPoint< Real >, ROL::DoubleDogLeg< Real >, and ROL::DogLeg< Real >.
Definition at line 136 of file ROL_TrustRegion.hpp.
References ROL::Vector< Real >::clone().
Referenced by ROL::DogLeg< Real >::initialize(), ROL::DoubleDogLeg< Real >::initialize(), ROL::CauchyPoint< Real >::initialize(), and ROL::TruncatedCG< Real >::initialize().
|
inlinevirtual |
Definition at line 141 of file ROL_TrustRegion.hpp.
References ROL::Vector< Real >::axpy(), ROL::Vector< Real >::dot(), ROL::Vector< Real >::dual(), ROL::TrustRegion< Real >::eps_, ROL::TrustRegion< Real >::eta2_, ROL::TrustRegion< Real >::forceFactor_, ROL::ProjectedObjective< Real >::hessVec(), ROL::ProjectedObjective< Real >::isConActivated(), ROL::ProjectedObjective< Real >::isFeasible(), ROL::TrustRegion< Real >::pRed_, ROL::ProjectedObjective< Real >::project(), ROL::ProjectedObjective< Real >::pruneActive(), ROL::ProjectedObjective< Real >::reducedHessVec(), ROL::ROL_EPSILON, ROL::ProjectedObjective< Real >::update(), and ROL::ProjectedObjective< Real >::value().
|
inline |
Definition at line 315 of file ROL_TrustRegion.hpp.
Referenced by ROL::DogLeg< Real >::run(), ROL::DoubleDogLeg< Real >::run(), ROL::CauchyPoint< Real >::run(), and ROL::TruncatedCG< Real >::run().
|
inline |
Definition at line 318 of file ROL_TrustRegion.hpp.
References ROL::Vector< Real >::clone(), ROL::ProjectedObjective< Real >::computeProjectedStep(), ROL::Vector< Real >::dot(), ROL::ProjectedObjective< Real >::hessVec(), ROL::ProjectedObjective< Real >::isConActivated(), ROL::ProjectedObjective< Real >::isFeasible(), ROL::TrustRegion< Real >::pRed_, ROL::ROL_EPSILON, ROL::TrustRegion< Real >::run(), ROL::Vector< Real >::set(), and ROL::TRUSTREGION_CAUCHYPOINT.
|
pure virtual |
Implemented in ROL::TruncatedCG< Real >, ROL::CauchyPoint< Real >, ROL::DoubleDogLeg< Real >, and ROL::DogLeg< Real >.
Referenced by ROL::TrustRegion< Real >::getPredictedReduction().
|
private |
Definition at line 60 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 61 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 63 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 64 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 65 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 66 of file ROL_TrustRegion.hpp.
Referenced by ROL::TrustRegion< Real >::update().
|
private |
Definition at line 67 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 68 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 69 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 71 of file ROL_TrustRegion.hpp.
Referenced by ROL::TrustRegion< Real >::getPredictedReduction(), and ROL::TrustRegion< Real >::update().
|
private |
Definition at line 73 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 74 of file ROL_TrustRegion.hpp.
Referenced by ROL::TrustRegion< Real >::update().
|
private |
Definition at line 76 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 78 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 80 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 81 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 82 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 83 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 84 of file ROL_TrustRegion.hpp.
Referenced by ROL::TrustRegion< Real >::update().
|
private |
Definition at line 85 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 87 of file ROL_TrustRegion.hpp.
|
private |
Definition at line 89 of file ROL_TrustRegion.hpp.