Steffenson method, providing the fastes convergence.
See the GSL manual for more information
Definition at line 147 of file RootFinderAlgorithms.h.
Public Types | |
| typedef void(* | GSLFdFPointer) (double, void *, double *, double *) |
| typedef double(* | GSLFuncPointer) (double, void *) |
Public Member Functions | |
| Steffenson () | |
| ~Steffenson () override | |
| int | Iterate () override |
| iterate (return GSL_SUCCESS in case of successful iteration) | |
| int | Iterations () const override |
| Return number of iterations. | |
| const char * | Name () const override |
| Return name of root finder algorithm. | |
| double | Root () const override |
| Returns the previously calculated root. | |
| bool | SetFunction (const IGradFunction &f, double xstart) override |
| Sets the function for algorithms using derivatives. | |
| virtual bool | SetFunction (const ROOT::Math::IGenFunction &, double, double) |
| Sets the function for the rest of the algorithms. | |
| bool | SetFunction (GSLFuncPointer f, GSLFuncPointer df, GSLFdFPointer fdf, void *p, double Root) |
| bool | Solve (int maxIter=100, double absTol=1E-8, double relTol=1E-10) override |
| Find the root (return false if failed). | |
| int | Status () const override |
| Return the status of last root finding. | |
Protected Member Functions | |
| void | FreeSolver () |
| void | SetSolver (GSLRootFdFSolver *s) |
Private Attributes | |
| GSLFunctionDerivWrapper * | fFunction |
| int | fIter |
| double | fPrevRoot |
| double | fRoot |
| GSLRootFdFSolver * | fS |
| int | fStatus |
| bool | fValidPoint |
#include <Math/RootFinderAlgorithms.h>
|
inherited |
Definition at line 100 of file GSLRootFinderDeriv.h.
Definition at line 99 of file GSLRootFinderDeriv.h.
| ROOT::Math::Roots::Steffenson::Steffenson | ( | ) |
Definition at line 126 of file RootFinderAlgorithms.cxx.
|
override |
Definition at line 133 of file RootFinderAlgorithms.cxx.
|
protectedinherited |
Definition at line 88 of file GSLRootFinderDeriv.cxx.
|
overridevirtualinherited |
iterate (return GSL_SUCCESS in case of successful iteration)
Reimplemented from ROOT::Math::IRootFinderMethod.
Definition at line 93 of file GSLRootFinderDeriv.cxx.
|
inlineoverridevirtualinherited |
Return number of iterations.
Reimplemented from ROOT::Math::IRootFinderMethod.
Definition at line 114 of file GSLRootFinderDeriv.h.
|
overridevirtualinherited |
Return name of root finder algorithm.
Implements ROOT::Math::IRootFinderMethod.
Definition at line 118 of file GSLRootFinderDeriv.cxx.
|
overridevirtualinherited |
Returns the previously calculated root.
Implements ROOT::Math::IRootFinderMethod.
Definition at line 113 of file GSLRootFinderDeriv.cxx.
|
inlineoverridevirtualinherited |
Sets the function for algorithms using derivatives.
Reimplemented from ROOT::Math::IRootFinderMethod.
Definition at line 93 of file GSLRootFinderDeriv.h.
|
inlinevirtualinherited |
Sets the function for the rest of the algorithms.
The parameters set the interval where the root has to be calculated.
Reimplemented from ROOT::Math::IRootFinderMethod.
Definition at line 53 of file IRootFinderMethod.h.
|
inherited |
Definition at line 65 of file GSLRootFinderDeriv.cxx.
|
protectedinherited |
Definition at line 83 of file GSLRootFinderDeriv.cxx.
|
overridevirtualinherited |
Find the root (return false if failed).
Implements ROOT::Math::IRootFinderMethod.
Definition at line 123 of file GSLRootFinderDeriv.cxx.
|
inlineoverridevirtualinherited |
Return the status of last root finding.
Implements ROOT::Math::IRootFinderMethod.
Definition at line 119 of file GSLRootFinderDeriv.h.
|
privateinherited |
Definition at line 131 of file GSLRootFinderDeriv.h.
|
privateinherited |
Definition at line 136 of file GSLRootFinderDeriv.h.
|
mutableprivateinherited |
Definition at line 135 of file GSLRootFinderDeriv.h.
|
mutableprivateinherited |
Definition at line 134 of file GSLRootFinderDeriv.h.
|
privateinherited |
Definition at line 132 of file GSLRootFinderDeriv.h.
|
privateinherited |
Definition at line 137 of file GSLRootFinderDeriv.h.
|
privateinherited |
Definition at line 138 of file GSLRootFinderDeriv.h.