Logo ROOT  
Reference Guide
Numerical2PGradientCalculator.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_Numerical2PGradientCalculator
11#define ROOT_Minuit2_Numerical2PGradientCalculator
12
13#include "Minuit2/MnConfig.h"
14
16
17#include <vector>
18
19namespace ROOT {
20
21 namespace Minuit2 {
22
23
24class MnFcn;
25class MnUserTransformation;
26class MnMachinePrecision;
27class MnStrategy;
28
29/**
30 class performing the numerical gradient calculation
31 */
32
34
35public:
36
38 const MnUserTransformation& par,
39 const MnStrategy& stra) :
40 fFcn(fcn), fTransformation(par), fStrategy(stra) {}
41
43
44 virtual FunctionGradient operator()(const MinimumParameters&) const;
45
46
47
48
49 virtual FunctionGradient operator()(const std::vector<double>& params) const;
50
51
52
53
55 const FunctionGradient&) const;
56
57 const MnFcn& Fcn() const {return fFcn;}
59 const MnMachinePrecision& Precision() const;
60 const MnStrategy& Strategy() const {return fStrategy;}
61
62 unsigned int Ncycle() const;
63 double StepTolerance() const;
64 double GradTolerance() const;
65
66private:
67
68 const MnFcn& fFcn;
71};
72
73 } // namespace Minuit2
74
75} // namespace ROOT
76
77#endif // ROOT_Minuit2_Numerical2PGradientCalculator
interface class for gradient calculators
Wrapper class to FCNBase interface used internally by Minuit.
Definition: MnFcn.h:33
Sets the relative floating point (double) arithmetic precision.
API class for defining three levels of strategies: low (0), medium (1), high (>=2); acts on: Migrad (...
Definition: MnStrategy.h:27
class dealing with the transformation between user specified parameters (external) and internal param...
class performing the numerical gradient calculation
virtual FunctionGradient operator()(const MinimumParameters &) const
Numerical2PGradientCalculator(const MnFcn &fcn, const MnUserTransformation &par, const MnStrategy &stra)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Definition: StringConv.hxx:21