Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
MnFumiliMinimize.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_MnFumiliMinimize
11#define ROOT_Minuit2_MnFumiliMinimize
12
16
17#include <vector>
18
19namespace ROOT {
20
21namespace Minuit2 {
22
23// class FumiliFCNBase;
24// class FCNBase;
25
26//___________________________________________________________________________
27/**
28
29
30API class for minimization using Fumili technology;
31allows for user interaction: set/change parameters, do minimization,
32change parameters, re-do minimization etc.;
33also used by MnMinos and MnContours;
34
35
36 */
37
39
40public:
41 /// construct from FumiliFCNBase + MnUserParameterState + MnStrategy
44 {
45 }
46
48 : MnApplication(migr.Fcnbase(), migr.State(), migr.Strategy(), migr.NumOfCalls()), fMinimizer(migr.fMinimizer),
49 fFCN(migr.Fcnbase())
50 {
51 }
52
53 FumiliMinimizer &Minimizer() override { return fMinimizer; }
54 const FumiliMinimizer &Minimizer() const override { return fMinimizer; }
55
56 const FumiliFCNBase &Fcnbase() const override { return fFCN; }
57
58 /// overwrite Minimize to use FumiliFCNBase
59 FunctionMinimum operator()(unsigned int = 0, double = 0.1) override;
60
61private:
64
65private:
66 // forbidden assignment of migrad (const FumiliFCNBase& = )
67 MnFumiliMinimize &operator=(const MnFumiliMinimize &) { return *this; }
68};
69
70} // namespace Minuit2
71
72} // namespace ROOT
73
74#endif // ROOT_Minuit2_MnFumiliMinimize
Extension of the FCNBase for the Fumili method.
Instantiates the seed generator and Minimum builder for the Fumili minimization method.
class holding the full result of the minimization; both internal and external (MnUserParameterState) ...
application interface class for minimizers (migrad, simplex, Minimize, Scan) User normally instantiat...
unsigned int NumOfCalls() const
const MnStrategy & Strategy() const
const MnUserParameterState & State() const
API class for minimization using Fumili technology; allows for user interaction: set/change parameter...
MnFumiliMinimize(const MnFumiliMinimize &migr)
MnFumiliMinimize(const FumiliFCNBase &fcn, const MnUserParameterState &par, const MnStrategy &str=MnStrategy{1})
construct from FumiliFCNBase + MnUserParameterState + MnStrategy
MnFumiliMinimize & operator=(const MnFumiliMinimize &)
FunctionMinimum operator()(unsigned int=0, double=0.1) override
overwrite Minimize to use FumiliFCNBase
FumiliMinimizer & Minimizer() override
const FumiliFCNBase & Fcnbase() const override
const FumiliMinimizer & Minimizer() const override
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...
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...