Definition at line 40 of file NumericalDerivator.h.
Public Member Functions | |
| NumericalDerivator (bool always_exactly_mimic_minuit2=true) | |
| NumericalDerivator (const NumericalDerivator &other) | |
| NumericalDerivator (double step_tolerance, double grad_tolerance, unsigned int ncycles, double error_level, bool always_exactly_mimic_minuit2=true) | |
| bool | AlwaysExactlyMimicMinuit2 () const |
| std::vector< DerivatorElement > | Differentiate (unsigned int nDim, const FCNBase *function, const double *x, std::span< const ROOT::Fit::ParameterSettings > parameters, std::span< const DerivatorElement > previous_gradient) |
| double | DInt2Ext (const ROOT::Fit::ParameterSettings ¶meter, double val) const |
| double | Ext2int (const ROOT::Fit::ParameterSettings ¶meter, double val) const |
| DerivatorElement | FastPartialDerivative (const FCNBase *function, std::span< const ROOT::Fit::ParameterSettings > parameters, unsigned int i_component, const DerivatorElement &previous) |
| double | GetValue () const |
| double | Int2ext (const ROOT::Fit::ParameterSettings ¶meter, double val) const |
| DerivatorElement | operator() (unsigned int nDim, const FCNBase *function, const double *x, std::span< const ROOT::Fit::ParameterSettings > parameters, unsigned int i_component, const DerivatorElement &previous) |
| DerivatorElement | PartialDerivative (unsigned int nDim, const FCNBase *function, const double *x, std::span< const ROOT::Fit::ParameterSettings > parameters, unsigned int i_component, DerivatorElement previous) |
| void | SetAlwaysExactlyMimicMinuit2 (bool flag) |
| void | SetErrorLevel (double value) |
| void | SetGradTolerance (double value) |
| void | SetInitialGradient (std::span< const ROOT::Fit::ParameterSettings > parameters, std::vector< DerivatorElement > &gradient) |
| This function was not implemented as in Minuit2. | |
| void | SetNCycles (unsigned int value) |
| void | SetStepTolerance (double value) |
| void | SetupDifferentiate (unsigned int nDim, const FCNBase *function, const double *cx, std::span< const ROOT::Fit::ParameterSettings > parameters) |
| This function sets internal state based on input parameters. | |
Private Attributes | |
| bool | fAlwaysExactlyMimicMinuit2 |
| double | fDfmin |
| ROOT::Minuit2::SinParameterTransformation | fDoubleLimTrafo |
| double | fGradTolerance = 0.1 |
| ROOT::Minuit2::SqrtLowParameterTransformation | fLowerLimTrafo |
| unsigned int | fNCycles = 2 |
| ROOT::Minuit2::MnMachinePrecision | fPrecision |
| double | fStepTolerance = 0.5 |
| double | fUp = 1 |
| ROOT::Minuit2::SqrtUpParameterTransformation | fUpperLimTrafo |
| double | fVal = 0 |
| double | fVrysml |
| std::vector< double > | fVx |
| std::vector< double > | fVxExternal |
| std::vector< double > | fVxFValCache |
#include <Minuit2/NumericalDerivator.h>
|
explicit |
Definition at line 39 of file NumericalDerivator.cxx.
|
default |
| NumericalDerivator::NumericalDerivator | ( | double | step_tolerance, |
| double | grad_tolerance, | ||
| unsigned int | ncycles, | ||
| double | error_level, | ||
| bool | always_exactly_mimic_minuit2 = true ) |
Definition at line 44 of file NumericalDerivator.cxx.
|
inline |
Definition at line 76 of file NumericalDerivator.h.
| std::vector< DerivatorElement > NumericalDerivator::Differentiate | ( | unsigned int | nDim, |
| const FCNBase * | function, | ||
| const double * | x, | ||
| std::span< const ROOT::Fit::ParameterSettings > | parameters, | ||
| std::span< const DerivatorElement > | previous_gradient ) |
Definition at line 153 of file NumericalDerivator.cxx.
| double NumericalDerivator::DInt2Ext | ( | const ROOT::Fit::ParameterSettings & | parameter, |
| double | val ) const |
Definition at line 202 of file NumericalDerivator.cxx.
| double NumericalDerivator::Ext2int | ( | const ROOT::Fit::ParameterSettings & | parameter, |
| double | val ) const |
Definition at line 185 of file NumericalDerivator.cxx.
| DerivatorElement NumericalDerivator::FastPartialDerivative | ( | const FCNBase * | function, |
| std::span< const ROOT::Fit::ParameterSettings > | parameters, | ||
| unsigned int | i_component, | ||
| const DerivatorElement & | previous ) |
Definition at line 91 of file NumericalDerivator.cxx.
|
inline |
Definition at line 63 of file NumericalDerivator.h.
| double NumericalDerivator::Int2ext | ( | const ROOT::Fit::ParameterSettings & | parameter, |
| double | val ) const |
Definition at line 169 of file NumericalDerivator.cxx.
| DerivatorElement NumericalDerivator::operator() | ( | unsigned int | nDim, |
| const FCNBase * | function, | ||
| const double * | x, | ||
| std::span< const ROOT::Fit::ParameterSettings > | parameters, | ||
| unsigned int | i_component, | ||
| const DerivatorElement & | previous ) |
Definition at line 145 of file NumericalDerivator.cxx.
| DerivatorElement NumericalDerivator::PartialDerivative | ( | unsigned int | nDim, |
| const FCNBase * | function, | ||
| const double * | x, | ||
| std::span< const ROOT::Fit::ParameterSettings > | parameters, | ||
| unsigned int | i_component, | ||
| DerivatorElement | previous ) |
Definition at line 82 of file NumericalDerivator.cxx.
|
inline |
Definition at line 77 of file NumericalDerivator.h.
|
inline |
Definition at line 67 of file NumericalDerivator.h.
|
inline |
Definition at line 65 of file NumericalDerivator.h.
| void NumericalDerivator::SetInitialGradient | ( | std::span< const ROOT::Fit::ParameterSettings > | parameters, |
| std::vector< DerivatorElement > & | gradient ) |
This function was not implemented as in Minuit2.
Now it copies the behavior of InitialGradientCalculator. See https://github.com/roofit-dev/root/issues/10
Definition at line 224 of file NumericalDerivator.cxx.
|
inline |
Definition at line 66 of file NumericalDerivator.h.
|
inline |
Definition at line 64 of file NumericalDerivator.h.
| void NumericalDerivator::SetupDifferentiate | ( | unsigned int | nDim, |
| const FCNBase * | function, | ||
| const double * | cx, | ||
| std::span< const ROOT::Fit::ParameterSettings > | parameters ) |
This function sets internal state based on input parameters.
This state setup is used in the actual (partial) derivative calculations.
Definition at line 58 of file NumericalDerivator.cxx.
|
private |
Definition at line 100 of file NumericalDerivator.h.
|
private |
Definition at line 88 of file NumericalDerivator.h.
|
private |
Definition at line 95 of file NumericalDerivator.h.
|
private |
Definition at line 81 of file NumericalDerivator.h.
|
private |
Definition at line 97 of file NumericalDerivator.h.
|
private |
Definition at line 99 of file NumericalDerivator.h.
|
private |
Definition at line 93 of file NumericalDerivator.h.
|
private |
Definition at line 80 of file NumericalDerivator.h.
|
private |
Definition at line 82 of file NumericalDerivator.h.
|
private |
Definition at line 96 of file NumericalDerivator.h.
|
private |
Definition at line 83 of file NumericalDerivator.h.
|
private |
Definition at line 89 of file NumericalDerivator.h.
|
private |
Definition at line 85 of file NumericalDerivator.h.
|
private |
Definition at line 86 of file NumericalDerivator.h.
|
private |
Definition at line 87 of file NumericalDerivator.h.