Logo ROOT  
Reference Guide
MnCross.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_MnCross
11#define ROOT_Minuit2_MnCross
12
14
15namespace ROOT {
16
17namespace Minuit2 {
18
19class MnCross {
20
21public:
23 };
25 };
27 };
28
29public:
31 : fValue(0.), fState(MnUserParameterState()), fNFcn(0), fValid(false), fLimset(false), fMaxFcn(false),
32 fNewMin(false)
33 {
34 }
35
36 MnCross(unsigned int nfcn)
37 : fValue(0.), fState(MnUserParameterState()), fNFcn(nfcn), fValid(false), fLimset(false), fMaxFcn(false),
38 fNewMin(false)
39 {
40 }
41
42 MnCross(const MnUserParameterState &state, unsigned int nfcn)
43 : fValue(0.), fState(state), fNFcn(nfcn), fValid(false), fLimset(false), fMaxFcn(false), fNewMin(false)
44 {
45 }
46
47 MnCross(double value, const MnUserParameterState &state, unsigned int nfcn)
48 : fValue(value), fState(state), fNFcn(nfcn), fValid(true), fLimset(false), fMaxFcn(false), fNewMin(false)
49 {
50 }
51
52 MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossParLimit)
53 : fValue(0.), fState(state), fNFcn(nfcn), fValid(true), fLimset(true), fMaxFcn(false), fNewMin(false)
54 {
55 }
56
57 MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossFcnLimit)
58 : fValue(0.), fState(state), fNFcn(nfcn), fValid(false), fLimset(false), fMaxFcn(true), fNewMin(false)
59 {
60 }
61
62 MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossNewMin)
63 : fValue(0.), fState(state), fNFcn(nfcn), fValid(false), fLimset(false), fMaxFcn(false), fNewMin(true)
64 {
65 }
66
68
69 MnCross(const MnCross &cross)
70 : fValue(cross.fValue), fState(cross.fState), fNFcn(cross.fNFcn), fValid(cross.fValid), fLimset(cross.fLimset),
71 fMaxFcn(cross.fMaxFcn), fNewMin(cross.fNewMin)
72 {
73 }
74
75 MnCross &operator=(const MnCross &) = default;
76
77 MnCross &operator()(const MnCross &cross)
78 {
79 fValue = cross.fValue;
80 fState = cross.fState;
81 fNFcn = cross.fNFcn;
82 fValid = cross.fValid;
83 fLimset = cross.fLimset;
84 fMaxFcn = cross.fMaxFcn;
85 fNewMin = cross.fNewMin;
86 return *this;
87 }
88
89 double Value() const { return fValue; }
90 const MnUserParameterState &State() const { return fState; }
91 bool IsValid() const { return fValid; }
92 bool AtLimit() const { return fLimset; }
93 bool AtMaxFcn() const { return fMaxFcn; }
94 bool NewMinimum() const { return fNewMin; }
95 unsigned int NFcn() const { return fNFcn; }
96
97private:
98 double fValue;
100 unsigned int fNFcn;
101 bool fValid;
105};
106
107} // namespace Minuit2
108
109} // namespace ROOT
110
111#endif // ROOT_Minuit2_MnCross
bool AtLimit() const
Definition: MnCross.h:92
MnCross & operator()(const MnCross &cross)
Definition: MnCross.h:77
MnCross(double value, const MnUserParameterState &state, unsigned int nfcn)
Definition: MnCross.h:47
unsigned int NFcn() const
Definition: MnCross.h:95
MnUserParameterState fState
Definition: MnCross.h:99
bool AtMaxFcn() const
Definition: MnCross.h:93
MnCross(unsigned int nfcn)
Definition: MnCross.h:36
MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossNewMin)
Definition: MnCross.h:62
const MnUserParameterState & State() const
Definition: MnCross.h:90
bool IsValid() const
Definition: MnCross.h:91
MnCross & operator=(const MnCross &)=default
bool NewMinimum() const
Definition: MnCross.h:94
MnCross(const MnCross &cross)
Definition: MnCross.h:69
unsigned int fNFcn
Definition: MnCross.h:100
MnCross(const MnUserParameterState &state, unsigned int nfcn)
Definition: MnCross.h:42
MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossFcnLimit)
Definition: MnCross.h:57
MnCross(const MnUserParameterState &state, unsigned int nfcn, CrossParLimit)
Definition: MnCross.h:52
double Value() const
Definition: MnCross.h:89
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...
Definition: RNumpyDS.hxx:30