iterative-solver 0.0
molpro::linalg::itsolv::OptimizeBFGSOptions Struct Reference

Allows setting and getting of options for OptimizeBFGS instance via IterativeSolver base class. More...

#include <OptimizeBFGSOptions.h>

Inheritance diagram for molpro::linalg::itsolv::OptimizeBFGSOptions:
Collaboration diagram for molpro::linalg::itsolv::OptimizeBFGSOptions:

Detailed Description

Allows setting and getting of options for OptimizeBFGS instance via IterativeSolver base class.

Public Member Functions

 OptimizeBFGSOptions ()=default
 
 OptimizeBFGSOptions (const options_map &opt)
 
- Public Member Functions inherited from molpro::linalg::itsolv::OptimizeOptions
 OptimizeOptions ()=default
 
 OptimizeOptions (const options_map &opt)
 
- Public Member Functions inherited from molpro::linalg::itsolv::Options
virtual ~Options ()=default
 
 Options ()=default
 
 Options (const options_map &opt)
 Initialises options from key/value strings. Unrecognised options are ignored. More...
 
void copy (const Options &source)
 copies options from source object More...
 

Public Attributes

std::optional< int > max_size_qspace
 
std::optional< double > norm_thresh
 
std::optional< double > svd_thresh
 
std::optional< bool > strong_Wolfe
 Whether to use strong or weak Wolfe conditions. More...
 
std::optional< double > Wolfe_1
 Acceptance parameter for function value. More...
 
std::optional< double > Wolfe_2
 Acceptance parameter for function gradient. More...
 
std::optional< double > linesearch_tolerance
 If the predicted line search is within tolerance of 1, don't bother taking it. More...
 
std::optional< double > linesearch_grow_factor
 
std::optional< double > quasinewton_maximum_step
 Quasi-Newton steps with an L-2 norm larger than this will be scaled down to this value. More...
 
- Public Attributes inherited from molpro::linalg::itsolv::Options
std::optional< double > convergence_threshold
 convergence threshold More...
 
std::optional< int > n_roots
 number of roots to solve for More...
 
std::optional< Verbosityverbosity
 verbosity level during IterativeSolver::solve() More...
 
std::optional< int > max_iter
 maximum number of iterations during IterativeSolver::solve() More...
 
std::optional< double > max_p
 maximum size of P space More...
 
std::optional< double > p_threshold
 threshold for selecting P space More...
 

Constructor & Destructor Documentation

◆ OptimizeBFGSOptions() [1/2]

molpro::linalg::itsolv::OptimizeBFGSOptions::OptimizeBFGSOptions ( )
default

◆ OptimizeBFGSOptions() [2/2]

molpro::linalg::itsolv::OptimizeBFGSOptions::OptimizeBFGSOptions ( const options_map opt)

Member Data Documentation

◆ linesearch_grow_factor

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::linesearch_grow_factor

If the predicted line search step is extrapolation, limit the step to this factor times the current step

◆ linesearch_tolerance

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::linesearch_tolerance

If the predicted line search is within tolerance of 1, don't bother taking it.

◆ max_size_qspace

std::optional<int> molpro::linalg::itsolv::OptimizeBFGSOptions::max_size_qspace

◆ norm_thresh

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::norm_thresh

◆ quasinewton_maximum_step

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::quasinewton_maximum_step

Quasi-Newton steps with an L-2 norm larger than this will be scaled down to this value.

◆ strong_Wolfe

std::optional<bool> molpro::linalg::itsolv::OptimizeBFGSOptions::strong_Wolfe

Whether to use strong or weak Wolfe conditions.

◆ svd_thresh

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::svd_thresh

◆ Wolfe_1

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::Wolfe_1

Acceptance parameter for function value.

◆ Wolfe_2

std::optional<double> molpro::linalg::itsolv::OptimizeBFGSOptions::Wolfe_2

Acceptance parameter for function gradient.