31#ifndef ROOT_Math_GSLMinimizer1D
32#define ROOT_Math_GSLMinimizer1D
61 class GSL1DMinimizerWrapper;
62 class GSLFunctionWrapper;
108 template <
class UserFunc>
168 bool Minimize(
int maxIter,
double absTol,
double relTol);
186 const char *
Name()
const;
195 static int TestInterval(
double xlow,
double xup,
double epsAbs,
double epsRel);
wrapper class for gsl_min_fminimizer structure
Class for adapting any C++ functor class to C function pointers used by GSL.
Wrapper class to the gsl_function C structure.
Minimizer for arbitrary one dimensional functions.
double XLower() const
Return current lower bound of the minimization interval.
double XUpper() const
Return current upper bound of the minimization interval.
GSLMinimizer1D & operator=(const GSLMinimizer1D &)
const char * Name() const
Return name of minimization algorithm.
double XMinimum() const
Return current estimate of the position of the minimum.
bool Minimize(int maxIter, double absTol, double relTol)
Find minimum position iterating until convergence specified by the absolute and relative tolerance or...
int Iterate()
Perform a minimizer iteration and if an unexepcted problem occurr then an error code will be returned...
GSL1DMinimizerWrapper * fMinimizer
static int TestInterval(double xlow, double xup, double epsAbs, double epsRel)
Test convergence of the interval.
int Status() const
Return status of last minimization.
GSLMinimizer1D(Minim1D::Type type=Minim1D::kBRENT)
Construct the minimizer passing the minimizer type using the Minim1D::Algorithm enumeration.
void SetFunction(const UserFunc &f, double xmin, double xlow, double xup)
Set, or reset, minimizer to use the function f and the initial search interval [xlow,...
double FValMinimum() const
Return function value at current estimate of the minimum.
virtual ~GSLMinimizer1D()
Destructor: free allocated resources.
int Iterations() const
Return number of iteration used to find minimum.
double FValLower() const
Return function value at current lower bound of the minimization interval.
GSLFunctionWrapper * fFunction
double FValUpper() const
Return function value at current upper bound of the minimization interval.
Interface class for numerical methods for one-dimensional minimization.
Type
Enumeration with One Dimensional Minimizer Algorithms.
Namespace for new Math classes and functions.
double(* GSLFuncPointer)(double, void *)
Function pointer corresponding to gsl_function signature.