Logo ROOT  
Reference Guide
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 
13 #include "Minuit2/MnApplication.h"
15 
16 #include <vector>
17 
18 namespace ROOT {
19 
20 namespace Minuit2 {
21 
22 class 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 
30 class MnMinimize : public MnApplication {
31 
32 public:
33  /// construct from FCNBase + std::vector for parameters and errors
34  MnMinimize(const FCNBase &fcn, const std::vector<double> &par, const std::vector<double> &err, unsigned int stra = 1)
36  {
37  }
38 
39  /// construct from FCNBase + std::vector for parameters and covariance
40  MnMinimize(const FCNBase &fcn, const std::vector<double> &par, unsigned int nrow, const std::vector<double> &cov,
41  unsigned int stra = 1)
43  {
44  }
45 
46  /// construct from FCNBase + std::vector for parameters and MnUserCovariance
47  MnMinimize(const FCNBase &fcn, const std::vector<double> &par, const MnUserCovariance &cov, unsigned int stra = 1)
49  {
50  }
51 
52  /// construct from FCNBase + MnUserParameters
53  MnMinimize(const FCNBase &fcn, const MnUserParameters &par, unsigned int stra = 1)
55  {
56  }
57 
58  /// construct from FCNBase + MnUserParameters + MnUserCovariance
59  MnMinimize(const FCNBase &fcn, const MnUserParameters &par, const MnUserCovariance &cov, unsigned int stra = 1)
61  {
62  }
63 
64  /// construct from FCNBase + MnUserParameterState + MnStrategy
65  MnMinimize(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str)
67  {
68  }
69 
70  // interfaces using FCNGradientBase
71 
72  /// construct from FCNGradientBase + std::vector for parameters and errors
73  MnMinimize(const FCNGradientBase &fcn, const std::vector<double> &par, const std::vector<double> &err,
74  unsigned int stra = 1)
76  {
77  }
78 
79  /// construct from FCNGradientBase + std::vector for parameters and covariance
80  MnMinimize(const FCNGradientBase &fcn, const std::vector<double> &par, unsigned int nrow,
81  const std::vector<double> &cov, unsigned int stra = 1)
83  {
84  }
85 
86  /// construct from FCNGradientBase + std::vector for parameters and MnUserCovariance
87  MnMinimize(const FCNGradientBase &fcn, const std::vector<double> &par, const MnUserCovariance &cov,
88  unsigned int stra = 1)
90  {
91  }
92 
93  /// construct from FCNGradientBase + MnUserParameters
94  MnMinimize(const FCNGradientBase &fcn, const MnUserParameters &par, unsigned int stra = 1)
96  {
97  }
98 
99  /// construct from FCNGradientBase + MnUserParameters + MnUserCovariance
100  MnMinimize(const FCNGradientBase &fcn, const MnUserParameters &par, const MnUserCovariance &cov,
101  unsigned int stra = 1)
103  {
104  }
105 
106  /// construct from FCNGradientBase + MnUserParameterState + MnStrategy
107  MnMinimize(const FCNGradientBase &fcn, const MnUserParameterState &par, const MnStrategy &str)
109  {
110  }
111 
112  MnMinimize(const MnMinimize &migr)
113  : MnApplication(migr.Fcnbase(), migr.State(), migr.Strategy(), migr.NumOfCalls()), fMinimizer(migr.fMinimizer)
114  {
115  }
116 
118 
120  const ModularFunctionMinimizer &Minimizer() const { return fMinimizer; }
121 
122 private:
124 
125 private:
126  // forbidden assignment operator
127  MnMinimize &operator=(const MnMinimize &) { return *this; }
128 };
129 
130 } // namespace Minuit2
131 
132 } // namespace ROOT
133 
134 #endif // ROOT_Minuit2_MnMinimize
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const std::vector< double > &par, const MnUserCovariance &cov, unsigned int stra=1)
construct from FCNGradientBase + std::vector for parameters and MnUserCovariance
Definition: MnMinimize.h:87
ROOT::Minuit2::MnApplication
application interface class for minimizers (migrad, simplex, Minimize, Scan) User normally instantiat...
Definition: MnApplication.h:37
ROOT::Minuit2::FCNBase
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition: FCNBase.h:45
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const MnUserParameterState &par, const MnStrategy &str)
construct from FCNGradientBase + MnUserParameterState + MnStrategy
Definition: MnMinimize.h:107
ROOT::Minuit2::MnApplication::Fcnbase
virtual const FCNBase & Fcnbase() const
Definition: MnApplication.h:67
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const MnUserParameters &par, unsigned int stra=1)
construct from FCNGradientBase + MnUserParameters
Definition: MnMinimize.h:94
ROOT::Minuit2::MnUserCovariance
Class containing the covariance matrix data represented as a vector of size n*(n+1)/2 Used to hide in...
Definition: MnUserCovariance.h:26
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const std::vector< double > &par, unsigned int nrow, const std::vector< double > &cov, unsigned int stra=1)
construct from FCNBase + std::vector for parameters and covariance
Definition: MnMinimize.h:40
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const MnMinimize &migr)
Definition: MnMinimize.h:112
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const std::vector< double > &par, unsigned int nrow, const std::vector< double > &cov, unsigned int stra=1)
construct from FCNGradientBase + std::vector for parameters and covariance
Definition: MnMinimize.h:80
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const MnUserParameters &par, const MnUserCovariance &cov, unsigned int stra=1)
construct from FCNBase + MnUserParameters + MnUserCovariance
Definition: MnMinimize.h:59
MnApplication.h
ROOT::Minuit2::MnApplication::State
const MnUserParameterState & State() const
Definition: MnApplication.h:64
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const std::vector< double > &par, const std::vector< double > &err, unsigned int stra=1)
construct from FCNBase + std::vector for parameters and errors
Definition: MnMinimize.h:34
ROOT::Minuit2::MnApplication::NumOfCalls
unsigned int NumOfCalls() const
Definition: MnApplication.h:69
ROOT::Minuit2::MnMinimize::fMinimizer
CombinedMinimizer fMinimizer
Definition: MnMinimize.h:123
ROOT::Minuit2::MnUserParameters
API class for the user interaction with the parameters; serves as input to the minimizer as well as o...
Definition: MnUserParameters.h:36
ROOT::Minuit2::ModularFunctionMinimizer
Base common class providing the API for all the minimizer Various Minimize methods are provided varyi...
Definition: ModularFunctionMinimizer.h:40
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const std::vector< double > &par, const std::vector< double > &err, unsigned int stra=1)
construct from FCNGradientBase + std::vector for parameters and errors
Definition: MnMinimize.h:73
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str)
construct from FCNBase + MnUserParameterState + MnStrategy
Definition: MnMinimize.h:65
ROOT::Minuit2::MnMinimize::Minimizer
ModularFunctionMinimizer & Minimizer()
Definition: MnMinimize.h:119
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNGradientBase &fcn, const MnUserParameters &par, const MnUserCovariance &cov, unsigned int stra=1)
construct from FCNGradientBase + MnUserParameters + MnUserCovariance
Definition: MnMinimize.h:100
ROOT::Minuit2::FCNGradientBase
Extension of the FCNBase for providing the analytical Gradient of the function.
Definition: FCNGradientBase.h:34
ROOT::Minuit2::MnUserParameterState
class which holds the external user and/or internal Minuit representation of the parameters and error...
Definition: MnUserParameterState.h:33
ROOT::Minuit2::MnMinimize::operator=
MnMinimize & operator=(const MnMinimize &)
Definition: MnMinimize.h:127
CombinedMinimizer.h
ROOT::Minuit2::CombinedMinimizer
Combined minimizer: combination of Migrad and Simplex.
Definition: CombinedMinimizer.h:30
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const MnUserParameters &par, unsigned int stra=1)
construct from FCNBase + MnUserParameters
Definition: MnMinimize.h:53
ROOT::Minuit2::MnStrategy
API class for defining three levels of strategies: low (0), medium (1), high (>=2); acts on: Migrad (...
Definition: MnStrategy.h:27
ROOT
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Definition: EExecutionPolicy.hxx:4
ROOT::Minuit2::MnMinimize::MnMinimize
MnMinimize(const FCNBase &fcn, const std::vector< double > &par, const MnUserCovariance &cov, unsigned int stra=1)
construct from FCNBase + std::vector for parameters and MnUserCovariance
Definition: MnMinimize.h:47
ROOT::Minuit2::MnMinimize::Minimizer
const ModularFunctionMinimizer & Minimizer() const
Definition: MnMinimize.h:120
ROOT::Minuit2::MnMinimize
API class for minimization using Variable Metric technology ("MIGRAD"); allows for user interaction: ...
Definition: MnMinimize.h:30
ROOT::Minuit2::MnApplication::Strategy
const MnStrategy & Strategy() const
Definition: MnApplication.h:68
ROOT::Minuit2::MnMinimize::~MnMinimize
~MnMinimize()
Definition: MnMinimize.h:117