Logo ROOT  
Reference Guide
BasicMinimumSeed.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_BasicMinimumSeed
11 #define ROOT_Minuit2_BasicMinimumSeed
12 
13 #include "Minuit2/MinimumState.h"
15 #include "Minuit2/MinimumError.h"
18 
19 #include "Minuit2/StackAllocator.h"
20 
21 namespace ROOT {
22 
23  namespace Minuit2 {
24 
25 
26 //extern StackAllocator gStackAllocator;
27 
28 class BasicMinimumSeed {
29 
30 public:
31 
32  BasicMinimumSeed(const MinimumState& state, const MnUserTransformation& trafo) : fState(state), fTrafo(trafo), fValid(true) {}
33 
35 
36  BasicMinimumSeed(const BasicMinimumSeed& seed) : fState(seed.fState), fTrafo(seed.fTrafo), fValid(seed.fValid) {}
37 
39  fState = seed.fState;
40  fTrafo = seed.fTrafo;
41  fValid = seed.fValid;
42  return *this;
43  }
44 
45  void* operator new(size_t nbytes) {
47  }
48 
49  void operator delete(void* p, size_t /*nbytes*/) {
51  }
52 
53  const MinimumState& State() const {return fState;}
54  const MinimumParameters& Parameters() const {return State().Parameters();}
55  const MinimumError& Error() const {return State().Error();};
56  const FunctionGradient& Gradient() const {return State().Gradient();}
57  const MnUserTransformation& Trafo() const {return fTrafo;}
58  const MnMachinePrecision& Precision() const {return fTrafo.Precision();}
59  double Fval() const {return State().Fval();}
60  double Edm() const {return State().Edm();}
61  unsigned int NFcn() const {return State().NFcn();}
62  bool IsValid() const {return fValid;}
63 
64 private:
65 
68  bool fValid;
69 };
70 
71  } // namespace Minuit2
72 
73 } // namespace ROOT
74 
75 #endif // ROOT_Minuit2_BasicMinimumSeed
ROOT::Minuit2::MinimumState::Edm
double Edm() const
Definition: MinimumState.h:73
ROOT::Minuit2::BasicMinimumSeed::Parameters
const MinimumParameters & Parameters() const
Definition: BasicMinimumSeed.h:66
ROOT::Minuit2::MinimumState
MinimumState keeps the information (position, Gradient, 2nd deriv, etc) after one minimization step (...
Definition: MinimumState.h:37
ROOT::Minuit2::MinimumState::Gradient
const FunctionGradient & Gradient() const
Definition: MinimumState.h:71
ROOT::Minuit2::BasicMinimumSeed::fTrafo
MnUserTransformation fTrafo
Definition: BasicMinimumSeed.h:79
ROOT::Minuit2::MnUserTransformation::Precision
const MnMachinePrecision & Precision() const
forwarded interface
Definition: MnUserTransformation.h:131
MnUserTransformation.h
ROOT::Minuit2::StackAllocator::Deallocate
void Deallocate(void *p)
Definition: StackAllocator.h:112
ROOT::Minuit2::BasicMinimumSeed::BasicMinimumSeed
BasicMinimumSeed(const MinimumState &state, const MnUserTransformation &trafo)
Definition: BasicMinimumSeed.h:44
ROOT::Minuit2::MinimumState::NFcn
int NFcn() const
Definition: MinimumState.h:74
ROOT::Minuit2::BasicMinimumSeed::NFcn
unsigned int NFcn() const
Definition: BasicMinimumSeed.h:73
ROOT::Minuit2::BasicMinimumSeed::operator=
BasicMinimumSeed & operator=(const BasicMinimumSeed &seed)
Definition: BasicMinimumSeed.h:50
ROOT::Minuit2::BasicMinimumSeed
Definition: BasicMinimumSeed.h:36
ROOT::Minuit2::BasicMinimumSeed::Error
const MinimumError & Error() const
Definition: BasicMinimumSeed.h:67
FunctionGradient.h
ROOT::Minuit2::BasicMinimumSeed::Fval
double Fval() const
Definition: BasicMinimumSeed.h:71
ROOT::Minuit2::MinimumState::Error
const MinimumError & Error() const
Definition: MinimumState.h:70
ROOT::Minuit2::BasicMinimumSeed::fValid
bool fValid
Definition: BasicMinimumSeed.h:80
ROOT::Minuit2::BasicMinimumSeed::Precision
const MnMachinePrecision & Precision() const
Definition: BasicMinimumSeed.h:70
ROOT::Minuit2::MinimumState::Fval
double Fval() const
Definition: MinimumState.h:72
ROOT::Minuit2::MnMachinePrecision
Sets the relative floating point (double) arithmetic precision.
Definition: MnMachinePrecision.h:41
StackAllocator.h
ROOT::Minuit2::StackAllocator::Allocate
void * Allocate(size_t nBytes)
Definition: StackAllocator.h:83
ROOT::Minuit2::StackAllocatorHolder::Get
static StackAllocator & Get()
Definition: StackAllocator.h:232
ROOT::Minuit2::BasicMinimumSeed::State
const MinimumState & State() const
Definition: BasicMinimumSeed.h:65
ROOT::Minuit2::BasicMinimumSeed::fState
MinimumState fState
Definition: BasicMinimumSeed.h:78
ROOT::Minuit2::MnUserTransformation
class dealing with the transformation between user specified parameters (external) and internal param...
Definition: MnUserTransformation.h:47
ROOT::Minuit2::BasicMinimumSeed::Edm
double Edm() const
Definition: BasicMinimumSeed.h:72
ROOT::Minuit2::BasicMinimumSeed::IsValid
bool IsValid() const
Definition: BasicMinimumSeed.h:74
ROOT::Minuit2::MinimumState::Parameters
const MinimumParameters & Parameters() const
Definition: MinimumState.h:66
MinimumError.h
ROOT::Minuit2::BasicMinimumSeed::Gradient
const FunctionGradient & Gradient() const
Definition: BasicMinimumSeed.h:68
MinimumParameters.h
ROOT::Minuit2::BasicMinimumSeed::Trafo
const MnUserTransformation & Trafo() const
Definition: BasicMinimumSeed.h:69
ROOT::Minuit2::BasicMinimumSeed::~BasicMinimumSeed
~BasicMinimumSeed()
Definition: BasicMinimumSeed.h:46
ROOT
VSD Structures.
Definition: StringConv.hxx:21
MinimumState.h