|
MPQC
3.0.0-alpha
|
This performs line searches with cubic steps. More...
#include <math/optimize/mcsearch.h>
Public Member Functions | |
| MCSearch (const Ref< KeyVal > &) | |
| The MCSearch KeyVal CTOR does not read any input. More... | |
| int | update () |
| Take a step. More... | |
| void | init (RefSCVector &direction) |
| Initializes the line search object. More... | |
| void | init (RefSCVector &direction, Ref< Function > function) |
| Initializes the line search object. More... | |
| void | print (std::ostream &=ExEnv::out0()) const |
| Print the object. | |
Public Member Functions inherited from sc::LineOpt | |
| LineOpt (StateIn &) | |
| LineOpt (const Ref< KeyVal > &) | |
| 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. More... | |
| void | apply_transform (const Ref< NonlinearTransform > &) |
| Applies a nonlinear transform. | |
| void | print (std::ostream &=ExEnv::out0()) const |
| Print the object. | |
Public Member Functions inherited from sc::Optimize | |
| Optimize (StateIn &) | |
| Restore the state of a Function object. | |
| Optimize (const Ref< KeyVal > &) | |
| The KeyVal constructor reads the following information: More... | |
| virtual int | optimize () |
| Do the optimization. More... | |
| 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. | |
| Ref< Function > | function () const |
| Returns information about the Function being optimized. | |
| Ref< Convergence > | convergence () const |
| Return information about the Convergence object being used. | |
| Ref< SCMatrixKit > | matrixkit () const |
| RefSCDimension | dimension () const |
Public Member Functions inherited from sc::SavableState | |
| SavableState & | operator= (const SavableState &) |
| void | save_state (StateOut &) |
| Save the state of the object as specified by the StateOut object. More... | |
| void | save_object_state (StateOut &) |
| This can be used for saving state when the exact type of the object is known for both the save and the restore. More... | |
| virtual void | save_vbase_state (StateOut &) |
| Save the virtual bases for the object. More... | |
Public Member Functions inherited from sc::DescribedClass | |
| DescribedClass (const DescribedClass &) | |
| DescribedClass & | operator= (const DescribedClass &) |
| ClassDesc * | class_desc () const MPQC__NOEXCEPT |
| This returns the unique pointer to the ClassDesc corresponding to the given type_info object. More... | |
| const char * | class_name () const |
| Return the name of the object's exact type. | |
| int | class_version () const |
| Return the version of the class. | |
| Ref< DescribedClass > | ref () |
| Return this object wrapped up in a Ref smart pointer. More... | |
Public Member Functions inherited from sc::RefCount | |
| size_t | identifier () const |
| Return the unique identifier for this object that can be compared for different objects of different types. More... | |
| int | lock_ptr () const |
| Lock this object. | |
| int | unlock_ptr () const |
| Unlock this object. | |
| void | use_locks (bool inVal) |
| start and stop using locks on this object | |
| refcount_t | nreference () const |
| Return the reference count. | |
| refcount_t | reference () |
| Increment the reference count and return the new count. | |
| refcount_t | dereference () |
| Decrement the reference count and return the new count. | |
| int | managed () const |
| void | unmanage () |
| Turn off the reference counting mechanism for this object. More... | |
Protected Member Functions | |
| void | mcstep (double *stx, double *fx, double *dx, double *sty, double *fy, double *dy, double *stp, double *fp, double *dp, bool *brackt, double *stpmin, double *stpmax, int *info) |
| void | mcsrch (int *n, double *x, double *f, double *g, double *s, double *stp, double *ftol, double *xtol, int *maxfev, int *info, int *nfev, double *wa) |
| void | mcinit () |
Protected Member Functions inherited from sc::Optimize | |
| void | init () |
| Initialize the optimizer. | |
Protected Member Functions inherited from sc::SavableState | |
| SavableState (const SavableState &) | |
| SavableState (StateIn &) | |
| Each derived class StateIn CTOR handles the restore corresponding to calling save_object_state, save_vbase_state, and save_data_state listed above. More... | |
Protected Member Functions inherited from sc::RefCount | |
| RefCount (const RefCount &) | |
| RefCount & | operator= (const RefCount &) |
Protected Attributes | |
| double | gtol_ |
| double | stpmin_ |
| double | stpmax_ |
| double | dg |
| double | fm |
| double | fx |
| double | fy |
| double | dgm |
| double | dgx |
| double | dgy |
| double | fxm |
| double | fym |
| double | stx |
| double | sty |
| double | dgxm |
| double | dgym |
| int | infoc |
| double | finit |
| double | width |
| double | stmin |
| double | stmax |
| bool | stage1 |
| double | width1 |
| double | ftest1 |
| bool | brackt |
| double | dginit |
| double | dgtest |
| double | p |
| double | q |
| double | r__ |
| double | s |
| double | sgnd |
| double | stpc |
| double | stpf |
| double | stpq |
| double | gamma |
| double | theta |
| bool | bound |
| int | info_ |
| auto_vec< double > | wa_ |
Protected Attributes inherited from sc::LineOpt | |
| RefSCVector | initial_x_ |
| double | initial_value_ |
| RefSCVector | initial_grad_ |
| RefSCVector | search_direction_ |
| Ref< Function > | function_ |
Protected Attributes inherited from sc::Optimize | |
| int | max_iterations_ |
| int | n_iterations_ |
| int | ckpt_ |
| int | print_timings_ |
| double | max_stepsize_ |
| std::string | ckpt_file_ |
| Ref< Function > | function_ |
| Ref< Convergence > | conv_ |
| Ref< MessageGrp > | msg_ |
Additional Inherited Members | |
Static Public Member Functions inherited from sc::SavableState | |
| static void | save_state (SavableState *s, StateOut &) |
| static SavableState * | restore_state (StateIn &si) |
| Restores objects saved with save_state. More... | |
| static SavableState * | key_restore_state (StateIn &si, const char *keyword) |
| Like restore_state, but keyword is used to override values while restoring. | |
| static SavableState * | dir_restore_state (StateIn &si, const char *objectname, const char *keyword=0) |
This performs line searches with cubic steps.
It is based on the Fortran MCSRCH and MCSTEP routines produced by: Argonne National Laboratory. MINPACK Project. June 1983 Jorge J. More', David J. Thuente.
|
virtual |
Initializes the line search object.
Argument is a search direction. Use of this method assumes the Optimize base class already has a function object (got it from a keyval or elsewhere).
Reimplemented from sc::LineOpt.
|
virtual |
Initializes the line search object.
First argument is a search direction, second argument is a function object to optimize. Use this method when a function must be passed to the Optimize base class.
Reimplemented from sc::LineOpt.
|
virtual |