File indexing completed on 2025-09-17 09:14:08
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef ROOT_Minuit2_Numerical2PGradientCalculator
0011 #define ROOT_Minuit2_Numerical2PGradientCalculator
0012
0013 #include "Minuit2/MnConfig.h"
0014
0015 #include "Minuit2/GradientCalculator.h"
0016
0017 namespace ROOT {
0018
0019 namespace Minuit2 {
0020
0021 class MnFcn;
0022 class MnUserTransformation;
0023 class MnStrategy;
0024
0025
0026
0027
0028
0029 class Numerical2PGradientCalculator : public GradientCalculator {
0030
0031 public:
0032 Numerical2PGradientCalculator(const MnFcn &fcn, const MnUserTransformation &par, const MnStrategy &stra)
0033 : fFcn(fcn), fTransformation(par), fStrategy(stra)
0034 {
0035 }
0036
0037 FunctionGradient operator()(const MinimumParameters &) const override;
0038
0039 FunctionGradient operator()(const MinimumParameters &, const FunctionGradient &) const override;
0040
0041 private:
0042 const MnFcn &fFcn;
0043 const MnUserTransformation &fTransformation;
0044 const MnStrategy &fStrategy;
0045 };
0046
0047 }
0048
0049 }
0050
0051 #endif