sc::Optimize(3) | MPQC | sc::Optimize(3) |
NAME¶
sc::Optimize - The Optimize class is an abstract base class for classes that find the extreme points of Function's.
SYNOPSIS¶
#include <opt.h>
Inherits sc::SavableState.
Inherited by sc::EFCOpt, sc::GDIISOpt, sc::LineOpt, sc::NewtonOpt, sc::QNewtonOpt, and sc::SteepestDescentOpt.
Public Member Functions¶
Optimize (StateIn &)
Restore the state of a Function object. Optimize (const
Ref< KeyVal > &)
The KeyVal constructor reads the following information: void
save_data_state (StateOut &)
Save the base classes (with save_data_state) and the members in the same order
that the StateIn CTOR initializes them. virtual int optimize
()
Do the optimization. void set_checkpoint ()
Set up for checkpointing. void set_checkpoint_file (const char *)
void set_function (const Ref< Function > &)
Set the function to be optimized. void set_max_iterations (int)
Set the iteration limit. virtual void init ()
Initialize the optimizer. virtual int update ()=0
Take a step. virtual void apply_transform (const Ref<
NonlinearTransform > &)
Ref< Function > function () const
Returns information about the Function being optimized. Ref<
SCMatrixKit > matrixkit () const
RefSCDimension dimension () const
Protected Attributes¶
int max_iterations_
int n_iterations_
int ckpt_
int print_timings_
double max_stepsize_
char * ckpt_file
Ref< Function > function_
Ref< Convergence > conv_
Additional Inherited Members¶
Detailed Description¶
The Optimize class is an abstract base class for classes that find the extreme points of Function's.
Constructor & Destructor Documentation¶
sc::Optimize::Optimize (const Ref< KeyVal > &)¶
The KeyVal constructor reads the following information:
- checkpoint
- If true, the optimization will be checkpointed. The default is false.
- checkpoint_file
- The name of the checkpoint file. The name defaults to opt_ckpt.dat.
- max_iterations
- The maximum number of interations. The default is 10.
- max_stepsize
- The maximum stepsize. The default is 0.6.
- function
- A Function object. There is no default.
- convergence
- This can be either a floating point number or a Convergence object. If it is a floating point number then it is the convergence criterion. See the description Convergence class for the default.
Member Function Documentation¶
virtual void sc::Optimize::apply_transform (const Ref< NonlinearTransform > &) [virtual]¶
Reimplemented in sc::LineOpt.
virtual void sc::Optimize::init () [virtual]¶
Initialize the optimizer.
Reimplemented in sc::EFCOpt, sc::GDIISOpt, sc::NewtonOpt, sc::QNewtonOpt, and sc::SteepestDescentOpt.
virtual int sc::Optimize::optimize () [virtual]¶
Do the optimization. Returns nonzero if the optimization is complete.
void sc::Optimize::save_data_state (StateOut &) [virtual]¶
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. This must be implemented by the derived class if the class has data.
Reimplemented from sc::SavableState.
Reimplemented in sc::LineOpt, sc::QNewtonOpt, and sc::SteepestDescentOpt.
virtual int sc::Optimize::update () [pure virtual]¶
Take a step. Returns 1 if the optimization has converged, otherwise 0.
Implemented in sc::EFCOpt, sc::GDIISOpt, sc::MCSearch, sc::NewtonOpt, sc::Backtrack, sc::QNewtonOpt, and sc::SteepestDescentOpt.
Author¶
Generated automatically by Doxygen for MPQC from the source code.
Fri Dec 2 2022 | Version 2.3.1 |