sc::MCSearch(3)

πŸ“¦
version 2.3.1 Β· 5 versions
, in ubuntu jammy

πŸ’– NAME πŸ’–

okay bestie, welcome to the sc::MCSearch(3) glow-up πŸ’… β€” sc::MCSearch is the one that performs line searches with cubic steps. That's the whole main-character job, no cap ✨.


✨ 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. πŸ¦‹

🧚 Protected Member Functions 🧚

Bestie, these are the protected helper signatures, kept exact so nobody comes for me 😭:

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 function, listed right here with no extra description on the page. πŸ’œ

πŸŽ€ Protected Attributes πŸŽ€

okay so this is the full protected-attribute stash β€” every single one, exactly as the page lists them:

  • 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_

🌈 Additional Inherited Members 🌈

There are additional inherited members too β€” the page just has this heading for them and doesn't spell out the list here. 🫢


πŸ¦‹ 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. 🫢


mwah πŸ’‹ β€” Version 2.3.1, Sun Oct 4 2020, with the manual tag sc::MCSearch(3), that's the footer tea, bestie πŸŽ€βœ¨

πŸ“¦ where this page comes from