Logo ROOT  
Reference Guide
InitialGradientCalculator.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_InitialGradientCalculator
11 #define ROOT_Minuit2_InitialGradientCalculator
12 
14 
15 namespace ROOT {
16 
17 namespace Minuit2 {
18 
19 class MnFcn;
20 class MnUserTransformation;
21 class MnMachinePrecision;
22 class MnStrategy;
23 
24 /**
25  Class to calculate an initial estimate of the gradient
26  */
28 
29 public:
30  InitialGradientCalculator(const MnFcn &fcn, const MnUserTransformation &par, const MnStrategy &stra)
31  : fFcn(fcn), fTransformation(par), fStrategy(stra){};
32 
34 
35  virtual FunctionGradient operator()(const MinimumParameters &) const;
36 
37  virtual FunctionGradient operator()(const MinimumParameters &, const FunctionGradient &) const;
38 
39  const MnFcn &Fcn() const { return fFcn; }
40  const MnUserTransformation &Trafo() const { return fTransformation; }
41  const MnMachinePrecision &Precision() const;
42  const MnStrategy &Strategy() const { return fStrategy; }
43 
44  unsigned int Ncycle() const;
45  double StepTolerance() const;
46  double GradTolerance() const;
47 
48 private:
49  const MnFcn &fFcn;
52 };
53 
54 } // namespace Minuit2
55 
56 } // namespace ROOT
57 
58 #endif // ROOT_Minuit2_InitialGradientCalculator
ROOT::Minuit2::InitialGradientCalculator::Trafo
const MnUserTransformation & Trafo() const
Definition: InitialGradientCalculator.h:40
ROOT::Minuit2::MnFcn
Wrapper class to FCNBase interface used internally by Minuit.
Definition: MnFcn.h:30
GradientCalculator.h
ROOT::Minuit2::InitialGradientCalculator
Class to calculate an initial estimate of the gradient.
Definition: InitialGradientCalculator.h:27
ROOT::Minuit2::FunctionGradient
Definition: FunctionGradient.h:21
ROOT::Minuit2::InitialGradientCalculator::fFcn
const MnFcn & fFcn
Definition: InitialGradientCalculator.h:49
ROOT::Minuit2::InitialGradientCalculator::StepTolerance
double StepTolerance() const
Definition: InitialGradientCalculator.cxx:99
ROOT::Minuit2::MinimumParameters
Definition: MinimumParameters.h:19
ROOT::Minuit2::InitialGradientCalculator::operator()
virtual FunctionGradient operator()(const MinimumParameters &) const
Definition: InitialGradientCalculator.cxx:25
ROOT::Minuit2::MnMachinePrecision
Sets the relative floating point (double) arithmetic precision.
Definition: MnMachinePrecision.h:32
ROOT::Minuit2::InitialGradientCalculator::GradTolerance
double GradTolerance() const
Definition: InitialGradientCalculator.cxx:105
ROOT::Minuit2::InitialGradientCalculator::Precision
const MnMachinePrecision & Precision() const
Definition: InitialGradientCalculator.cxx:87
ROOT::Minuit2::InitialGradientCalculator::Fcn
const MnFcn & Fcn() const
Definition: InitialGradientCalculator.h:39
ROOT::Minuit2::InitialGradientCalculator::~InitialGradientCalculator
virtual ~InitialGradientCalculator()
Definition: InitialGradientCalculator.h:33
ROOT::Minuit2::MnUserTransformation
class dealing with the transformation between user specified parameters (external) and internal param...
Definition: MnUserTransformation.h:38
ROOT::Minuit2::InitialGradientCalculator::fTransformation
const MnUserTransformation & fTransformation
Definition: InitialGradientCalculator.h:50
ROOT::Minuit2::InitialGradientCalculator::Ncycle
unsigned int Ncycle() const
Definition: InitialGradientCalculator.cxx:93
ROOT::Minuit2::MnStrategy
API class for defining three levels of strategies: low (0), medium (1), high (>=2); acts on: Migrad (...
Definition: MnStrategy.h:27
ROOT::Minuit2::InitialGradientCalculator::Strategy
const MnStrategy & Strategy() const
Definition: InitialGradientCalculator.h:42
ROOT::Minuit2::GradientCalculator
interface class for gradient calculators
Definition: GradientCalculator.h:23
ROOT
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Definition: EExecutionPolicy.hxx:4
ROOT::Minuit2::InitialGradientCalculator::InitialGradientCalculator
InitialGradientCalculator(const MnFcn &fcn, const MnUserTransformation &par, const MnStrategy &stra)
Definition: InitialGradientCalculator.h:30
ROOT::Minuit2::InitialGradientCalculator::fStrategy
const MnStrategy & fStrategy
Definition: InitialGradientCalculator.h:51