ROOT   Reference Guide
Searching...
No Matches
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
15namespace ROOT {
16
17namespace Minuit2 {
18
19class MnFcn;
20class MinimumParameters;
21class MnMachinePrecision;
22class MnParabolaPoint;
23
24/**
25
26Implements a 1-dimensional minimization along a given direction
27(i.e. quadratic interpolation) It is independent of the algorithm
28that generates the direction vector. It brackets the 1-dimensional
29Minimum and iterates to approach the real Minimum of the n-dimensional
30function.
31
32
34and Lorenzo Moneta
35
36@ingroup Minuit
37
38*/
39
41
42public:
44
46
47 MnParabolaPoint operator()(const MnFcn &, const MinimumParameters &, const MnAlgebraicVector &, double,
48 const MnMachinePrecision &) const;
49
50#ifdef USE_OTHER_LS
51 MnParabolaPoint CubicSearch(const MnFcn &, const MinimumParameters &, const MnAlgebraicVector &, double, double,
52 const MnMachinePrecision &) const;
53
54 MnParabolaPoint BrentSearch(const MnFcn &, const MinimumParameters &, const MnAlgebraicVector &, double, double,
55 const MnMachinePrecision &) const;
56#endif
57
58private:
59};
60
61} // namespace Minuit2
62
63} // namespace ROOT
64
65#endif // ROOT_Minuit2_MnLineSearch
Wrapper class to FCNBase interface used internally by Minuit.
Definition MnFcn.h:30
Implements a 1-dimensional minimization along a given direction (i.e.
MnParabolaPoint operator()(const MnFcn &, const MinimumParameters &, const MnAlgebraicVector &, double, const MnMachinePrecision &) const
Perform a line search from position defined by the vector st along the direction step,...
Sets the relative floating point (double) arithmetic precision.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...