Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sc::MCSearch(3)			     MPQC		       sc::MCSearch(3)

NAME
       sc::MCSearch - This performs line searches with cubic steps.

SYNOPSIS
       #include	<mcsearch.h>

       Inherits	sc::LineOpt.

   Public Member Functions
       MCSearch	(const Ref< KeyVal > &)
	   The MCSearch	KeyVal CTOR does not read any input.
       int update ()
	   Take	a step.
       void init (RefSCVector &direction)
	   Initializes the line	search object.
       void init (RefSCVector &direction, Ref< Function	> function)
	   Initializes the line	search 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.
       virtual void init (RefSCVector &direction)
	   Initializes the line	search object.
       virtual void init (RefSCVector &direction, Ref< Function	> function)
	   Initializes the line	search object.
       void apply_transform (const Ref<	NonlinearTransform > &)
	   Applies a nonlinear transform.
       double decrease_factor ()
	   Returns factor for sufficient decrease test.
       double set_decrease_factor (double factor)
	   Sets	factor for sufficient decrease test.

       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:
       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

       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.
       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.
       virtual void save_vbase_state (StateOut &)
	   Save	the virtual bases for the object.
       virtual 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.

       Public Member Functions inherited from sc::DescribedClass
       DescribedClass (const DescribedClass &)
       DescribedClass &	operator= (const DescribedClass	&)
       ClassDesc * class_desc () const	throw ()
	   This	returns	the unique pointer to the ClassDesc corresponding to
	   the given type_info object.
       const char * class_name () const
	   Return the name of the object's exact type.
       int class_version () const
	   Return the version of the class.
       virtual void print (std::ostream	&=ExEnv::out0()) const
	   Print the object.

       Public Member Functions inherited from sc::RefCount
       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.
       int managed () const
	   Return 1 if the object is managed. Otherwise	return 0.

       Public Member Functions inherited from sc::Identity
       Identifier identifier ()
	   Return the Identifier for this argument.

   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::LineOpt
       int sufficient_decrease (RefSCVector &step)

       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.

       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
       double decrease_factor_
       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_
       char * ckpt_file
       Ref< Function > function_
       Ref< Convergence	> conv_

   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.
       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)

Detailed Description
       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.

Constructor & Destructor Documentation
   sc::MCSearch::MCSearch (const Ref< KeyVal > &)
       The MCSearch KeyVal CTOR	does not read any input. See the LineOpt
       KeyVal CTOR for parameters that it takes.

Member Function	Documentation
   void	sc::MCSearch::init (RefSCVector	& direction) [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.

   void	sc::MCSearch::init (RefSCVector	& direction, Ref< Function > function)
       [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.

   int sc::MCSearch::update () [virtual]
       Take a step. Returns 1 if the optimization has converged, otherwise 0.

       Implements sc::Optimize.

Author
       Generated automatically by Doxygen for MPQC from	the source code.

Version	2.3.1			Tue May	13 2025		       sc::MCSearch(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=sc_MCSearch&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help