Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
FumiliMinimizer.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_FumiliMinimizer
11#define ROOT_Minuit2_FumiliMinimizer
12
16
17#include <vector>
18
19namespace ROOT {
20
21namespace Minuit2 {
22
23class MinimumSeedGenerator;
24class MinimumBuilder;
25class MinimumSeed;
26class MnFcn;
27class FumiliFcnBase;
28class GradientCalculator;
29class MnUserParameterState;
30class MnUserParameters;
31class MnUserCovariance;
32class MnStrategy;
33
34//______________________________________________________________
35/**
36
37Instantiates the seed generator and Minimum builder for the
38Fumili minimization method. Produces the Minimum via the
39Minimize methods inherited from ModularFunctionMinimizer.
40
41@author Andras Zsenei and Lorenzo Moneta, Creation date: 28 Sep 2004
42
43@ingroup Minuit
44
45*/
46
48
49public:
50 /**
51
52 Constructor initializing the FumiliMinimizer by instantiatiating
53 the SeedGenerator and MinimumBuilder for the Fumili minimization method.
54
55 @see MnSeedGenerator
56
57 @see FumiliBuilder
58
59 */
60
62
63 ~FumiliMinimizer() override {}
64
65 /**
66
67 Accessor to the seed generator of the minimizer.
68
69 @return A reference to the seed generator used by the minimizer
70
71 */
72
73 const MinimumSeedGenerator &SeedGenerator() const override { return fMinSeedGen; }
74
75 /**
76
77 Accessor to the Minimum builder of the minimizer.
78
79 @return a reference to the Minimum builder.
80
81 */
82
83 const FumiliBuilder &Builder() const override { return fMinBuilder; }
84 FumiliBuilder &Builder() override { return fMinBuilder; }
85
86 // for Fumili
87
88 FunctionMinimum Minimize(const FCNBase &, const MnUserParameterState &, const MnStrategy &, unsigned int maxfcn = 0,
89 double toler = 0.1) const override;
90
92 unsigned int maxfcn = 0, double toler = 0.1) const override;
93
95
96private:
99};
100
101} // namespace Minuit2
102
103} // namespace ROOT
104
105#endif // ROOT_Minuit2_FumiliMinimizer
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition FCNBase.h:45
Builds the FunctionMinimum using the Fumili method.
Instantiates the seed generator and Minimum builder for the Fumili minimization method.
FunctionMinimum Minimize(const FCNBase &, const MnUserParameterState &, const MnStrategy &, unsigned int maxfcn=0, double toler=0.1) const override
const MinimumSeedGenerator & SeedGenerator() const override
Accessor to the seed generator of the minimizer.
FumiliBuilder & Builder() override
const FumiliBuilder & Builder() const override
Accessor to the Minimum builder of the minimizer.
FumiliMinimizer()
Constructor initializing the FumiliMinimizer by instantiatiating the SeedGenerator and MinimumBuilder...
class holding the full result of the minimization; both internal and external (MnUserParameterState) ...
base class for seed generators (starting values); the seed generator prepares initial starting values...
concrete implementation of the MinimumSeedGenerator interface; used within ModularFunctionMinimizer;
API class for defining four levels of strategies: low (0), medium (1), high (2), very high (>=3); act...
Definition MnStrategy.h:27
class which holds the external user and/or internal Minuit representation of the parameters and error...
Base common class providing the API for all the minimizer Various Minimize methods are provided varyi...
FunctionMinimum Minimize(const FCNBase &, const std::vector< double > &, const std::vector< double > &, unsigned int stra=1, unsigned int maxfcn=0, double toler=0.1) const override
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...