27 fFCN(fcn), fState(state), fStrategy(stra), fNumCall(nfcn), fUseGrad(false)
42 if(maxfcn == 0) maxfcn = 200 + 100*npar + 5*npar*npar;
63 std::cout <<
"State resulting from Migrad. Total Function calls " <<
fNumCall <<
fState << std::endl;
64 const std::vector<ROOT::Minuit2::MinimumState>& iterationStates = min.
States();
65 std::cout <<
"Number of iterations " << iterationStates.size() << std::endl;
66 for (
unsigned int i = 0; i < iterationStates.size(); ++i) {
69 std::cout <<
"----------> Iteration " << i << std::endl;
70 int pr = std::cout.precision(18);
71 std::cout <<
" FVAL = " << st.
Fval()
72 <<
" Edm = " << st.
Edm() <<
" Nfcn = " << st.
NFcn() << std::endl;
73 std::cout.precision(pr);
74 std::cout <<
" Error matrix change = " << st.
Error().
Dcovar()
76 std::cout <<
" Internal parameters : ";
77 for (
int j = 0; j < st.
size() ; ++j)
78 std::cout <<
" p" << j <<
" = " << st.
Vec()(j);
79 std::cout << std::endl;
void Release(unsigned int)
void SetError(unsigned int, double)
Namespace for new ROOT classes and functions.
unsigned int ExtOfInt(unsigned int) const
void Add(const std::string &name, double val, double err)
class for the individual Minuit Parameter with Name and number; contains the input numbers for the mi...
const MinuitParameter & Parameter(unsigned int i) const
std::vector< double > Params() const
void SetPrecision(double eps)
unsigned int ExtOfInt(unsigned int) const
std::vector< double > Params() const
unsigned int VariableParameters() const
double Error(unsigned int) const
const std::vector< ROOT::Minuit2::MinuitParameter > & MinuitParameters() const
facade: forward interface of MnUserParameters and MnUserTransformation
void SetLimits(unsigned int, double, double)
const MinuitParameter & Parameter(unsigned int i) const
Extension of the FCNBase for providing the analytical Gradient of the function.
class holding the full result of the minimization; both internal and external (MnUserParameterState) ...
double Error(unsigned int) const
MnUserParameterState fState
double Int2ext(unsigned int, double) const
virtual const FCNBase & Fcnbase() const
const std::vector< ROOT::Minuit2::MinimumState > & States() const
std::vector< double > Errors() const
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
double Ext2int(unsigned int, double) const
void Add(const char *Name, double val, double err)
unsigned int IntOfExt(unsigned int) const
void SetValue(unsigned int, double)
class which holds the external user and/or internal Minuit representation of the parameters and error...
double Value(unsigned int) const
std::vector< double > Errors() const
void RemoveLimits(unsigned int)
void SetLimits(unsigned int, double, double)
MnApplication(const FCNBase &fcn, const MnUserParameterState &state, const MnStrategy &stra, unsigned int nfcn=0)
constructor from non-gradient functions
virtual FunctionMinimum Minimize(const FCNBase &, const std::vector< double > &, const std::vector< double > &, unsigned int stra=1, unsigned int maxfcn=0, double toler=0.1) const
void SetError(unsigned int, double)
const MinimumError & Error() const
const char * Name(unsigned int) const
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
void Release(unsigned int)
unsigned int Index(const std::string &) const
void SetPrecision(double)
void SetValue(unsigned int, double)
const char * Name(unsigned int) const
unsigned int IntOfExt(unsigned int) const
double Ext2int(unsigned int, double) const
const std::vector< ROOT::Minuit2::MinuitParameter > & MinuitParameters() const
virtual FunctionMinimum operator()(unsigned int maxfcn=0, double tolerance=0.1)
Minimize the function.
MinimumState keeps the information (position, Gradient, 2nd deriv, etc) after one minimization step (...
double Int2ext(unsigned int, double) const
virtual const ModularFunctionMinimizer & Minimizer() const =0
const MnUserParameterState & UserState() const
unsigned int Index(const char *) const
API class for defining three levels of strategies: low (0), medium (1), high (>=2); acts on: Migrad (...
unsigned int VariableParameters() const
void RemoveLimits(unsigned int)
double Value(unsigned int) const
const MnAlgebraicVector & Vec() const