58 const std::vector<ROOT::Fit::ParameterSettings> ¶meters)
68 for (
unsigned i = 0; i <
function->NDim(); i++) {
83 const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
92 const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
103 double step = std::max(
optstp, std::abs(0.1 *
deriv.step_size));
120 deriv.step_size = step;
146 const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
152std::vector<DerivatorElement>
154 const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
159 std::vector<DerivatorElement> gradient;
225 const std::vector<ROOT::Fit::ParameterSettings> ¶meters,
226 std::vector<DerivatorElement> &gradient)
278 gradient[
ix].derivative =
grd;
279 gradient[
ix].second_derivative =
g2;
280 gradient[
ix].step_size =
gstep;
286 return out <<
"(derivative: " <<
value.derivative <<
", second_derivative: " <<
value.second_derivative
287 <<
", step_size: " <<
value.step_size <<
")";
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
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...
double Eps() const
eps returns the smallest possible number so that 1.+eps > 1.
double Eps2() const
eps2 returns 2*sqrt(eps)
DerivatorElement operator()(const ROOT::Math::IBaseFunctionMultiDim *function, const double *x, const std::vector< ROOT::Fit::ParameterSettings > ¶meters, unsigned int i_component, const DerivatorElement &previous)
std::vector< double > fVxFValCache
bool fAlwaysExactlyMimicMinuit2
double Int2ext(const ROOT::Fit::ParameterSettings ¶meter, double val) const
ROOT::Minuit2::SqrtUpParameterTransformation fUpperLimTrafo
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 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.
NumericalDerivator(bool always_exactly_mimic_minuit2=true)
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
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)
std::ostream & operator<<(std::ostream &, const FunctionMinimum &)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...