Implement the abstract 1-dimensional root finding interface using the Brent-Decker method.
This implementation is based on the one in the GNU scientific library (v0.99).
Definition at line 21 of file RooBrentRootFinder.h.
Public Member Functions | |
| RooBrentRootFinder (const RooAbsFunc &function) | |
| Constructor taking function binding as input. | |
| ~RooBrentRootFinder () override | |
| bool | findRoot (double &result, double xlo, double xhi, double value=0) const override |
| Do the root finding using the Brent-Decker method. | |
| TClass * | IsA () const override |
| void | setTol (double tol) |
| Set convergence tolerance parameter. | |
| void | Streamer (TBuffer &) override |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from RooAbsRootFinder | |
| RooAbsRootFinder (const RooAbsFunc &function) | |
| Constructor take function binding as argument. | |
| virtual | ~RooAbsRootFinder () |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
Static Public Member Functions inherited from RooAbsRootFinder | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
Protected Types | |
| enum | { MaxIterations = 512 } |
Protected Attributes | |
| double | _tol |
Protected Attributes inherited from RooAbsRootFinder | |
| const RooAbsFunc * | _function |
| Pointer to input function. | |
| bool | _valid |
| True if current state is valid. | |
#include <RooBrentRootFinder.h>
|
protected |
| Enumerator | |
|---|---|
| MaxIterations | |
Definition at line 34 of file RooBrentRootFinder.h.
| RooBrentRootFinder::RooBrentRootFinder | ( | const RooAbsFunc & | function | ) |
Constructor taking function binding as input.
Definition at line 42 of file RooBrentRootFinder.cxx.
|
inlineoverride |
Definition at line 24 of file RooBrentRootFinder.h.
|
static |
|
inlinestaticconstexpr |
Definition at line 38 of file RooBrentRootFinder.h.
|
inlinestatic |
Definition at line 38 of file RooBrentRootFinder.h.
|
overridevirtual |
Do the root finding using the Brent-Decker method.
Returns a boolean status and loads 'result' with our best guess at the root if true. Prints a warning if the initial interval does not bracket a single root or if the root is not found after a fixed number of iterations.
Implements RooAbsRootFinder.
Definition at line 56 of file RooBrentRootFinder.cxx.
|
inlineoverridevirtual |
Reimplemented from RooAbsRootFinder.
Definition at line 38 of file RooBrentRootFinder.h.
|
inline |
Set convergence tolerance parameter.
Definition at line 29 of file RooBrentRootFinder.h.
|
overridevirtual |
Reimplemented from RooAbsRootFinder.
|
inline |
Definition at line 38 of file RooBrentRootFinder.h.
|
protected |
Definition at line 36 of file RooBrentRootFinder.h.