pele
Python energy landscape explorer
 All Classes Namespaces Functions Variables Typedefs
Public Member Functions
pele::LBFGS Class Reference

#include <lbfgs.h>

Inheritance diagram for pele::LBFGS:
pele::GradientOptimizer pele::Optimizer

List of all members.

Public Member Functions

 LBFGS (std::shared_ptr< pele::BasePotential > potential, const pele::Array< double > x0, double tol=1e-4, int M=4)
virtual ~LBFGS ()
void one_iteration ()
void set_H0 (double H0)
void set_max_f_rise (double max_f_rise)
void set_use_relative_f (int use_relative_f)
double get_H0 () const
virtual void reset (pele::Array< double > &x0)

Detailed Description

An implementation of the LBFGS optimization algorithm in c++. This Implementation uses a backtracking linesearch.

Definition at line 16 of file lbfgs.h.


Constructor & Destructor Documentation

pele::LBFGS::LBFGS ( std::shared_ptr< pele::BasePotential potential,
const pele::Array< double >  x0,
double  tol = 1e-4,
int  M = 4 
)

Constructor

Definition at line 8 of file lbfgs.cpp.

virtual pele::LBFGS::~LBFGS ( ) [inline, virtual]

Destructor

Definition at line 55 of file lbfgs.h.


Member Function Documentation

double pele::LBFGS::get_H0 ( ) const [inline]

Definition at line 78 of file lbfgs.h.

void pele::LBFGS::one_iteration ( ) [virtual]

Do one iteration iteration of the optimization algorithm

Implements pele::GradientOptimizer.

Definition at line 31 of file lbfgs.cpp.

void pele::LBFGS::reset ( pele::Array< double > &  x0) [virtual]

reset the lbfgs optimizer to start a new minimization from x0

H0 is not reset because the current value of H0 is probably better than the input value. You can use set_H0() to change H0.

Reimplemented from pele::GradientOptimizer.

Definition at line 216 of file lbfgs.cpp.

void pele::LBFGS::set_H0 ( double  H0) [inline]

Definition at line 63 of file lbfgs.h.

void pele::LBFGS::set_max_f_rise ( double  max_f_rise) [inline]

Definition at line 70 of file lbfgs.h.

void pele::LBFGS::set_use_relative_f ( int  use_relative_f) [inline]

Definition at line 72 of file lbfgs.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs