File indexing completed on 2025-10-30 08:54:34
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef ROOT_Minuit2_MnMigrad
0011 #define ROOT_Minuit2_MnMigrad
0012
0013 #include "Minuit2/MnApplication.h"
0014 #include "Minuit2/VariableMetricMinimizer.h"
0015
0016 #include <vector>
0017
0018 namespace ROOT {
0019
0020 namespace Minuit2 {
0021
0022 class FCNBase;
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032 class MnMigrad : public MnApplication {
0033
0034 public:
0035
0036 MnMigrad(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str = MnStrategy{1})
0037 : MnApplication(fcn, {par}, str), fMinimizer(VariableMetricMinimizer())
0038 {
0039 }
0040
0041
0042 MnMigrad(const MnMigrad &) = default;
0043
0044
0045 MnMigrad &operator=(const MnMigrad &) = delete;
0046
0047 ModularFunctionMinimizer &Minimizer() override { return fMinimizer; }
0048 const ModularFunctionMinimizer &Minimizer() const override { return fMinimizer; }
0049
0050 private:
0051 VariableMetricMinimizer fMinimizer;
0052 };
0053
0054 }
0055
0056 }
0057
0058 #endif