![]() |
|
|||
File indexing completed on 2025-09-18 09:31:46
0001 // @(#)root/minuit2:$Id$ 0002 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 0003 0004 /********************************************************************** 0005 * * 0006 * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * 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 API class for minimization using Variable Metric technology ("MIGRAD"); 0027 allows for user interaction: set/change parameters, do minimization, 0028 change parameters, re-do minimization etc.; 0029 also used by MnMinos and MnContours; 0030 */ 0031 0032 class MnMigrad : public MnApplication { 0033 0034 public: 0035 /// construct from FCNBase + MnUserParameterState + MnStrategy 0036 MnMigrad(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str = MnStrategy{1}) 0037 : MnApplication(fcn, {par}, str), fMinimizer(VariableMetricMinimizer()) 0038 { 0039 } 0040 0041 /// Copy constructor, copy shares the reference to the same FCNBase in MnApplication 0042 MnMigrad(const MnMigrad &) = default; 0043 0044 // Copy assignment deleted, since MnApplication has unassignable reference to FCNBase 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 } // namespace Minuit2 0055 0056 } // namespace ROOT 0057 0058 #endif // ROOT_Minuit2_MnMigrad
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |