10 #ifndef ROOT_Minuit2_InitialGradientCalculator
11 #define ROOT_Minuit2_InitialGradientCalculator
21 class MnUserTransformation;
22 class MnMachinePrecision;
28 class InitialGradientCalculator :
public GradientCalculator {
32 InitialGradientCalculator(
const MnFcn& fcn,
const MnUserTransformation& par,
33 const MnStrategy& stra) :
34 fFcn(fcn), fTransformation(par), fStrategy(stra) {};
36 virtual ~InitialGradientCalculator() {}
38 virtual FunctionGradient operator()(
const MinimumParameters&)
const;
40 virtual FunctionGradient operator()(
const MinimumParameters&,
41 const FunctionGradient&)
const;
43 const MnFcn& Fcn()
const {
return fFcn;}
44 const MnUserTransformation& Trafo()
const {
return fTransformation;}
45 const MnMachinePrecision& Precision()
const;
46 const MnStrategy& Strategy()
const {
return fStrategy;}
48 unsigned int Ncycle()
const;
49 double StepTolerance()
const;
50 double GradTolerance()
const;
55 const MnUserTransformation& fTransformation;
56 const MnStrategy& fStrategy;
63 #endif // ROOT_Minuit2_InitialGradientCalculator