Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
MnScan.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_MnScan
11#define ROOT_Minuit2_MnScan
12
15
16#include <vector>
17#include <utility>
18
19namespace ROOT {
20
21namespace Minuit2 {
22
23class FCNBase;
24
25//_______________________________________________________________________
26/**
27 API class for minimization using a scan method to find the minimum;
28 allows for user interaction: set/change parameters, do minimization,
29 change parameters, re-do minimization etc.;
30
31 */
32
33class MnScan : public MnApplication {
34
35public:
36 /// construct from FCNBase + MnUserParameterState + MnStrategy
37 MnScan(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str = MnStrategy{})
39 {
40 }
41
42 MnScan(const MnScan &migr)
43 : MnApplication(migr.Fcnbase(), migr.State(), migr.Strategy(), migr.NumOfCalls()), fMinimizer(migr.fMinimizer)
44 {
45 }
46
48 const ModularFunctionMinimizer &Minimizer() const override { return fMinimizer; }
49
50 std::vector<std::pair<double, double>>
51 Scan(unsigned int par, unsigned int maxsteps = 41, double low = 0., double high = 0.);
52
53private:
55
56 /// forbidden assignment (const FCNBase& = )
57 MnScan &operator=(const MnScan &) { return *this; }
58};
59
60} // namespace Minuit2
61
62} // namespace ROOT
63
64#endif // ROOT_Minuit2_MnScan
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition FCNBase.h:51
application interface class for minimizers (migrad, simplex, Minimize, Scan) User normally instantiat...
unsigned int NumOfCalls() const
const MnStrategy & Strategy() const
const MnUserParameterState & State() const
virtual const FCNBase & Fcnbase() const
API class for minimization using a scan method to find the minimum; allows for user interaction: set/...
Definition MnScan.h:33
const ModularFunctionMinimizer & Minimizer() const override
Definition MnScan.h:48
MnScan(const FCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str=MnStrategy{})
construct from FCNBase + MnUserParameterState + MnStrategy
Definition MnScan.h:37
MnScan(const MnScan &migr)
Definition MnScan.h:42
ScanMinimizer fMinimizer
Definition MnScan.h:54
ModularFunctionMinimizer & Minimizer() override
Definition MnScan.h:47
std::vector< std::pair< double, double > > Scan(unsigned int par, unsigned int maxsteps=41, double low=0., double high=0.)
Definition MnScan.cxx:17
MnScan & operator=(const MnScan &)
forbidden assignment (const FCNBase& = )
Definition MnScan.h:57
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...
Class implementing the required methods for a minimization using SCAN API is provided in the upper RO...
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...