Base class for GSL Root-Finding algorithms for one dimensional functions which do not use function derivatives. For finding the roots users should not use this class directly but instantiate the derived classes, for example ROOT::Math::Roots::Brent for using the Brent algorithm. All the classes defining the alhorithms are defined in the header Math/RootFinderAlgorithm.h They possible types implementing root bracketing algorithms which they do not require function derivatives are: <ul> <li>ROOT::Math::Roots::Bisection <li>ROOT::Math::Roots::FalsePos <li>ROOT::Math::Roots::Brent </ul> See also the specific classes for the documentation. See the GSL <A HREF="http://www.gnu.org/software/gsl/manual/html_node/Root-Bracketing-Algorithms.html"> online manual</A> for information on the GSL Root-Finding algorithms @ingroup RootFinders
virtual | ~GSLRootFinder() |
ROOT::Math::GSLRootFinder | GSLRootFinder() |
virtual int | Iterate() |
virtual int | Iterations() const |
virtual const char* | Name() const |
virtual double | Root() const |
virtual bool | SetFunction(const ROOT::Math::IGradFunction&, double) |
virtual bool | SetFunction(const ROOT::Math::IGenFunction& f, double xlow, double xup) |
bool | SetFunction(ROOT::Math::GSLRootFinder::GSLFuncPointer f, void* params, double xlow, double xup) |
virtual bool | Solve(int maxIter = 100, double absTol = 1E-8, double relTol = 1E-10) |
virtual int | Status() const |
void | FreeSolver() |
void | SetSolver(ROOT::Math::GSLRootFSolver* s) |
ROOT::Math::GSLRootFinder | GSLRootFinder(const ROOT::Math::GSLRootFinder&) |
ROOT::Math::GSLRootFinder& | operator=(const ROOT::Math::GSLRootFinder&) |
usually copying is non trivial, so we make this unaccessible
iterate to find ROOTS return GSL_CONTINUE if iteration was succesfull or another error