18#ifndef ROOT_Minuit2_NumericalDerivator 
   19#define ROOT_Minuit2_NumericalDerivator 
   44   NumericalDerivator(
double step_tolerance, 
double grad_tolerance, 
unsigned int ncycles, 
double error_level,
 
   45                      bool always_exactly_mimic_minuit2 = 
true);
 
   48                           const std::vector<ROOT::Fit::ParameterSettings> ¶meters);
 
   50                                               const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
 
   51                                               const std::vector<DerivatorElement> &previous_gradient);
 
   54                                      const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
 
   57                                          const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
 
   60                               const std::vector<ROOT::Fit::ParameterSettings> ¶meters, 
unsigned int i_component,
 
   74                           const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
 
   75                           std::vector<DerivatorElement> &gradient);
 
   86   std::vector<double> 
fVx;
 
TBuffer & operator<<(TBuffer &buf, const Tmpl *obj)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Class, describing value, limits and step size of the parameters Provides functionality also to set/re...
Sets the relative floating point (double) arithmetic precision.
DerivatorElement operator()(const ROOT::Math::IBaseFunctionMultiDim *function, const double *x, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, unsigned int i_component, const DerivatorElement &previous)
void SetGradTolerance(double value)
std::vector< double > fVxFValCache
bool fAlwaysExactlyMimicMinuit2
void SetAlwaysExactlyMimicMinuit2(bool flag)
double Int2ext(const ROOT::Fit::ParameterSettings ¶meter, double val) const
NumericalDerivator(const NumericalDerivator &other)
void SetErrorLevel(double value)
ROOT::Minuit2::SqrtUpParameterTransformation fUpperLimTrafo
bool AlwaysExactlyMimicMinuit2() const
ROOT::Minuit2::MnMachinePrecision fPrecision
DerivatorElement PartialDerivative(const ROOT::Math::IBaseFunctionMultiDim *function, const double *x, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, unsigned int i_component, DerivatorElement previous)
void SetupDifferentiate(const ROOT::Math::IBaseFunctionMultiDim *function, const double *cx, const std::vector< ROOT::Fit::ParameterSettings > ¶meters)
This function sets internal state based on input parameters.
void SetNCycles(unsigned int value)
void SetInitialGradient(const ROOT::Math::IBaseFunctionMultiDim *function, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, std::vector< DerivatorElement > &gradient)
This function was not implemented as in Minuit2.
double DInt2Ext(const ROOT::Fit::ParameterSettings ¶meter, double val) const
double Ext2int(const ROOT::Fit::ParameterSettings ¶meter, double val) const
std::vector< double > fVx
ROOT::Minuit2::SinParameterTransformation fDoubleLimTrafo
DerivatorElement FastPartialDerivative(const ROOT::Math::IBaseFunctionMultiDim *function, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, unsigned int i_component, const DerivatorElement &previous)
ROOT::Minuit2::SqrtLowParameterTransformation fLowerLimTrafo
void SetStepTolerance(double value)
std::vector< double > fVxExternal
std::vector< DerivatorElement > Differentiate(const ROOT::Math::IBaseFunctionMultiDim *function, const double *x, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, const std::vector< DerivatorElement > &previous_gradient)
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.