15 #include "RConfigure.h" 17 #ifndef MATH_NO_PLUGIN_MANAGER 20 #include "TPluginManager.h" 22 #else // case no plugin manager is available 23 #ifdef R__HAS_MATHMORE 53 #ifdef MATH_NO_PLUGIN_MANAGER // no PM available 54 #ifdef R__HAS_MATHMORE 77 MATH_ERROR_MSG(
"RootFinder::SetMethod",
"RootFinderMethod type is not available in MathCore");
84 MATH_ERROR_MSG(
"RootFinder::SetMethod",
"RootFinderMethod type is not available in MathCore");
88 #else // case of using Plugin Manager 110 stype =
"Steffenson";
113 MATH_ERROR_MSG(
"RootFinder::SetMethod",
"RootFinderMethod type is not available in MathCore");
119 if ((h = gROOT->GetPluginManager()->FindHandler(
"ROOT::Math::IRootFinderMethod", stype.c_str() ))) {
120 if (h->LoadPlugin() == -1) {
121 MATH_ERROR_MSG(
"RootFinder::SetMethod",
"Error loading RootFinderMethod");
129 MATH_ERROR_MSG(
"RootFinder::SetMethod",
"Error loading RootFinderMethod");
Namespace for new ROOT classes and functions.
Secant algorithm, simplified version of Newton method, which does not require the derivative at every...
Steffenson method, providing the fastes convergence.
a Newton algorithm, which computes the derivative at each iteration See the GSL manual for more infor...
Interface for finding function roots of one-dimensional functions.
Roots::Bisection Bisection algorithm, simplest algorithm for bracketing the roots of a function...
#define MATH_ERROR_MSG(loc, str)
False Position algorithm based on linear interpolation.
RootFinder(RootFinder::EType type=RootFinder::kBRENT)
Construct a Root-Finder algorithm.
Class for finding the root of a one dimensional function using the Brent algorithm.
bool SetMethod(RootFinder::EType type=RootFinder::kBRENT)
IRootFinderMethod * fSolver
Namespace for new Math classes and functions.
Brent-Dekker algorithm which combines an interpolation strategy with the bisection algorithm See the ...