Logo ROOT  
Reference Guide
MnContours.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_MnContours
11 #define ROOT_Minuit2_MnContours
12 
13 
14 #include "Minuit2/MnConfig.h"
15 #include "Minuit2/MnStrategy.h"
16 
17 #include <vector>
18 #include <utility>
19 
20 namespace ROOT {
21 
22  namespace Minuit2 {
23 
24 
25 class FCNBase;
26 class FunctionMinimum;
27 class ContoursError;
28 
29 //_____________________________________________________________
30 /**
31  API class for Contours Error analysis (2-dim errors);
32  minimization has to be done before and Minimum must be valid;
33  possibility to ask only for the points or the points and associated Minos
34  errors;
35  */
36 
37 class MnContours {
38 
39 public:
40 
41  /// construct from FCN + Minimum
42  MnContours(const FCNBase& fcn, const FunctionMinimum& min) : fFCN(fcn), fMinimum(min), fStrategy(MnStrategy(1)) {}
43 
44  /// construct from FCN + Minimum + strategy
45  MnContours(const FCNBase& fcn, const FunctionMinimum& min, unsigned int stra) : fFCN(fcn), fMinimum(min), fStrategy(MnStrategy(stra)) {}
46 
47  /// construct from FCN + Minimum + strategy
48  MnContours(const FCNBase& fcn, const FunctionMinimum& min, const MnStrategy& stra) : fFCN(fcn), fMinimum(min), fStrategy(stra) {}
49 
51 
52  /// ask for one Contour (points only) from number of points (>=4) and parameter indeces
53  std::vector<std::pair<double,double> > operator()(unsigned int, unsigned int, unsigned int npoints = 20) const;
54 
55  /// ask for one Contour ContoursError (MinosErrors + points)
56  /// from number of points (>=4) and parameter indeces
57  /// can be printed via std::cout
58  ContoursError Contour(unsigned int, unsigned int, unsigned int npoints = 20) const;
59 
60  const MnStrategy& Strategy() const {return fStrategy;}
61 
62 private:
63 
64  const FCNBase& fFCN;
67 };
68 
69  } // namespace Minuit2
70 
71 } // namespace ROOT
72 
73 #endif // ROOT_Minuit2_MnContours
ROOT::Minuit2::MnContours::MnContours
MnContours(const FCNBase &fcn, const FunctionMinimum &min)
construct from FCN + Minimum
Definition: MnContours.h:50
ROOT::Minuit2::MnContours::operator()
std::vector< std::pair< double, double > > operator()(unsigned int, unsigned int, unsigned int npoints=20) const
ask for one Contour (points only) from number of points (>=4) and parameter indeces
Definition: MnContours.cxx:41
MnStrategy.h
ROOT::Minuit2::MnContours::fFCN
const FCNBase & fFCN
Definition: MnContours.h:72
ROOT::Minuit2::MnContours::Strategy
const MnStrategy & Strategy() const
Definition: MnContours.h:68
ROOT::Minuit2::FCNBase
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition: FCNBase.h:55
ROOT::Minuit2::ContoursError
Definition: ContoursError.h:32
ROOT::Minuit2::MnContours::~MnContours
~MnContours()
Definition: MnContours.h:58
ROOT::Minuit2::MnContours::fMinimum
const FunctionMinimum & fMinimum
Definition: MnContours.h:73
ROOT::Minuit2::MnContours::Contour
ContoursError Contour(unsigned int, unsigned int, unsigned int npoints=20) const
ask for one Contour ContoursError (MinosErrors + points) from number of points (>=4) and parameter in...
Definition: MnContours.cxx:47
ROOT::Minuit2::FunctionMinimum
class holding the full result of the minimization; both internal and external (MnUserParameterState) ...
Definition: FunctionMinimum.h:40
ROOT::Minuit2::MnStrategy
API class for defining three levels of strategies: low (0), medium (1), high (>=2); acts on: Migrad (...
Definition: MnStrategy.h:35
ROOT::Minuit2::MnContours::fStrategy
MnStrategy fStrategy
Definition: MnContours.h:74
ROOT
VSD Structures.
Definition: StringConv.hxx:21
MnConfig.h