Class Optimizer#

Inheritance Relationships#

Derived Type#

Class Documentation#

class Optimizer#

this defines the basic interface for optimizers.

All pele optimizers should derive from this class.

Subclassed by pele::GradientOptimizer

Public Functions

inline virtual ~Optimizer()#

virtual destructor

virtual void one_iteration() = 0#
virtual void run() = 0#

Run the optimization algorithm until the stop criterion is satisfied or until the maximum number of iterations is reached.

virtual void run(int const niter) = 0#

Run the optimization algorithm for niter iterations or until the stop criterion is satisfied.

inline virtual Array<double> get_x() const = 0#

accessors

inline virtual Array<double> get_g() const = 0#
inline virtual double get_f() const = 0#
inline virtual double get_rms() const = 0#
inline virtual int get_nfev() const = 0#
inline virtual int get_niter() const = 0#
inline virtual bool success() = 0#
inline virtual int get_nhev() const = 0#