Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
MnMinimize.h
Go to the documentation of this file.
1// @(#)root/minuit2:$Id$
2// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3
4/**********************************************************************
5 * *
6 * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7 * *
8 **********************************************************************/
9
10#ifndef ROOT_Minuit2_MnMinimize
11#define ROOT_Minuit2_MnMinimize
12
15
16#include <vector>
17
18namespace ROOT {
19
20namespace Minuit2 {
21
22class FCNBase;
23
24/** API class for minimization using Variable Metric technology ("MIGRAD");
25 allows for user interaction: set/change parameters, do minimization,
26 change parameters, re-do minimization etc.;
27 also used by MnMinos and MnContours;
28 */
29
30class MnMinimize : public MnApplication {
31
32public:
33 /// construct from FCNBase + MnUserParameterState + MnStrategy
34 MnMinimize(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str = MnStrategy{1})
35 : MnApplication(fcn, {par}, str), fMinimizer(CombinedMinimizer())
36 {
37 }
38
43
45 const ModularFunctionMinimizer &Minimizer() const override { return fMinimizer; }
46
47private:
49
50private:
51 // forbidden assignment operator
52 MnMinimize &operator=(const MnMinimize &) { return *this; }
53};
54
55} // namespace Minuit2
56
57} // namespace ROOT
58
59#endif // ROOT_Minuit2_MnMinimize
Combined minimizer: combination of Migrad and Simplex.
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition FCNBase.h:49
application interface class for minimizers (migrad, simplex, Minimize, Scan) User normally instantiat...
unsigned int NumOfCalls() const
const MnStrategy & Strategy() const
virtual const FCNBase & Fcnbase() const
MnUserParameterState & State()
API class for minimization using Variable Metric technology ("MIGRAD"); allows for user interaction: ...
Definition MnMinimize.h:30
ModularFunctionMinimizer & Minimizer() override
Definition MnMinimize.h:44
MnMinimize & operator=(const MnMinimize &)
Definition MnMinimize.h:52
MnMinimize(const MnMinimize &migr)
Definition MnMinimize.h:39
MnMinimize(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str=MnStrategy{1})
construct from FCNBase + MnUserParameterState + MnStrategy
Definition MnMinimize.h:34
const ModularFunctionMinimizer & Minimizer() const override
Definition MnMinimize.h:45
CombinedMinimizer fMinimizer
Definition MnMinimize.h:48
API class for defining four levels of strategies: low (0), medium (1), high (2), very high (>=3); act...
Definition MnStrategy.h:27
class which holds the external user and/or internal Minuit representation of the parameters and error...
Base common class providing the API for all the minimizer Various Minimize methods are provided varyi...
Namespace for new ROOT classes and functions.