ROOT
6.30.04
Reference Guide
All
Namespaces
Files
Pages
BrentMethods.h
Go to the documentation of this file.
1
#ifndef ROOT_Math_BrentMethods
2
#define ROOT_Math_BrentMethods
3
4
#include "
Math/IFunctionfwd.h
"
5
6
7
namespace
ROOT {
8
namespace
Math {
9
10
namespace
BrentMethods {
11
12
/**
13
Grid search implementation, used to bracket the minimum and later
14
use Brent's method with the bracketed interval
15
The step of the search is set to (xmax-xmin)/fNpx
16
type: 0-returns MinimumX
17
1-returns Minimum
18
2-returns MaximumX
19
3-returns Maximum
20
4-returns X corresponding to fy
21
22
*/
23
24
double
MinimStep(
const
IGenFunction* f,
int
type,
double
&xmin,
double
&xmax,
double
fy,
int
npx = 100,
bool
useLog =
false
);
25
26
/**
27
Finds a minimum of a function, if the function is unimodal between xmin and xmax
28
This method uses a combination of golden section search and parabolic interpolation
29
Details about convergence and properties of this algorithm can be
30
found in the book by R.P.Brent "Algorithms for Minimization Without Derivatives"
31
or in the "Numerical Recipes", chapter 10.2
32
convergence is reached using tolerance = 2 *( epsrel * abs(x) + epsabs)
33
34
type: 0-returns MinimumX
35
1-returns Minimum
36
2-returns MaximumX
37
3-returns Maximum
38
4-returns X corresponding to fy
39
40
if ok=true the method has converged.
41
Maxiter returns the actual number of iteration performed
42
43
*/
44
45
double
MinimBrent(
const
IGenFunction* f,
int
type,
double
&xmin,
double
&xmax,
double
xmiddle,
double
fy,
bool
&ok,
int
&niter,
double
epsabs = 1.E-8,
double
epsrel = 1.E-10,
int
maxiter = 100 );
46
47
48
}
// end namespace BrentMethods
49
}
// end namespace Math
50
}
// ned namespace ROOT
51
52
#endif
IFunctionfwd.h
math
mathcore
inc
Math
BrentMethods.h
Generated on Tue May 5 2020 14:03:00 for ROOT by
1.8.5