ROOT  6.06/09
Reference Guide
MnLineSearch.h
Go to the documentation of this file.
1 // @(#)root/minuit2:$Id$
2 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3 
4 /**********************************************************************
5  * *
6  * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7  * *
8  **********************************************************************/
9 
10 #ifndef ROOT_Minuit2_MnLineSearch
11 #define ROOT_Minuit2_MnLineSearch
12 
13 #include "Minuit2/MnMatrix.h"
14 
15 namespace ROOT {
16 
17  namespace Minuit2 {
18 
19 
20 class MnFcn;
21 class MinimumParameters;
22 class MnMachinePrecision;
23 class MnParabolaPoint;
24 
25 
26 
27 
28 /**
29 
30 Implements a 1-dimensional minimization along a given direction
31 (i.e. quadratic interpolation) It is independent of the algorithm
32 that generates the direction vector. It brackets the 1-dimensional
33 Minimum and iterates to approach the real Minimum of the n-dimensional
34 function.
35 
36 
37 @author Fred James and Matthias Winkler; comments added by Andras Zsenei
38 and Lorenzo Moneta
39 
40 @ingroup Minuit
41 
42 */
43 
44 
45 
46 
47 class MnLineSearch {
48 
49 public:
50 
52 
54 
55  MnParabolaPoint operator()(const MnFcn&, const MinimumParameters&, const MnAlgebraicVector&, double, const MnMachinePrecision&, bool debug = false) const;
56 
57 #ifdef USE_OTHER_LS
58  MnParabolaPoint CubicSearch(const MnFcn&, const MinimumParameters&, const MnAlgebraicVector&, double, double, const MnMachinePrecision&, bool debug = false) const;
59 
60  MnParabolaPoint BrentSearch(const MnFcn&, const MinimumParameters&, const MnAlgebraicVector&, double, double, const MnMachinePrecision&, bool debug = false) const;
61 #endif
62 
63 private:
64 
65 };
66 
67  } // namespace Minuit2
68 
69 } // namespace ROOT
70 
71 #endif // ROOT_Minuit2_MnLineSearch
Namespace for new ROOT classes and functions.
Definition: ROOT.py:1
MnParabolaPoint operator()(const MnFcn &, const MinimumParameters &, const MnAlgebraicVector &, double, const MnMachinePrecision &, bool debug=false) const
Perform a line search from position defined by the vector st along the direction step, where the length of vector step gives the expected position of Minimum.
determines the relative floating point arithmetic precision.
A point of a parabola.
Wrapper class to FCNBase interface used internally by Minuit.
Definition: MnFcn.h:33
bool debug
Implements a 1-dimensional minimization along a given direction (i.e.
Definition: MnLineSearch.h:47