31#ifndef ROOT_Math_GSLRootFinder
32#define ROOT_Math_GSLRootFinder
85#if defined(__ROOTCLING__) || defined(G__DICTIONARY)
87 std::cerr <<
"GSLRootFinder - Error : this method must be used with a Root Finder algorithm using derivatives" << std::endl;
102 double Root()
const override;
109 bool Solve(
int maxIter = 100,
double absTol = 1E-8,
double relTol = 1E-10)
override;
119 const char *
Name()
const override;
Wrapper class to the gsl_function C structure.
Root-Finder implementation class using GSL.
GSLRootFinder(GSLRootFinder &&)=delete
double(* GSLFuncPointer)(double, void *)
const char * Name() const override
double GSLRootFinder::XLower() const { return fXlow; }
GSLFunctionWrapper * fFunction
int Status() const override
Return the status of last root finding.
int Iterate() override
This method is implemented only by the GSLRootFinder and GSLRootFinderDeriv classes and will return a...
~GSLRootFinder() override
void SetSolver(GSLRootFSolver *s)
GSLRootFinder & operator=(const GSLRootFinder &)=delete
int Iterations() const override
Return number of iterations.
GSLRootFinder(const GSLRootFinder &)=delete
GSLRootFinder & operator=(GSLRootFinder &&)=delete
double Root() const override
Returns the previously calculated root.
bool Solve(int maxIter=100, double absTol=1E-8, double relTol=1E-10) override
Find the root.
bool SetFunction(const IGenFunction &f, double xlow, double xup) override
Sets the function for the rest of the algorithms.
virtual bool SetFunction(const ROOT::Math::IGradFunction &, double)
Sets the function for algorithms using derivatives.
IRootFinderMethod()
Default Constructor.
IGradientFunctionOneDim IGradFunction
IBaseFunctionOneDim IGenFunction