ROOT » MATH » MINUIT2 » ROOT::Minuit2::FCNBase

class ROOT::Minuit2::FCNBase: public ROOT::Minuit2::GenericFunction




Interface (abstract class) defining the function to be minimized, which has to be implemented by the user.

@author Fred James and Matthias Winkler; modified by Andras Zsenei and Lorenzo Moneta

@ingroup Minuit


Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~FCNBase()
virtual doubleErrorDef() const
ROOT::Minuit2::FCNBaseFCNBase()
ROOT::Minuit2::FCNBaseFCNBase(const ROOT::Minuit2::FCNBase&)
ROOT::Minuit2::GenericFunctionROOT::Minuit2::GenericFunction::GenericFunction()
ROOT::Minuit2::GenericFunctionROOT::Minuit2::GenericFunction::GenericFunction(const ROOT::Minuit2::GenericFunction&)
virtual doubleoperator()(const vector<double>& x) const
ROOT::Minuit2::FCNBase&operator=(const ROOT::Minuit2::FCNBase&)
virtual voidSetErrorDef(double)
virtual doubleUp() const

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

virtual ~FCNBase()
{}
double operator()(const vector<double>& x) const

      The meaning of the vector of parameters is of course defined by the user,
      who uses the values of those parameters to calculate their function Value.
      The order and the position of these parameters is strictly the one specified
      by the user when supplying the starting values for minimization. The starting
      values must be specified by the user, either via an std::vector<double> or the
      MnUserParameters supplied as input to the MINUIT minimizers such as
      VariableMetricMinimizer or MnMigrad. Later values are determined by MINUIT
      as it searches for the Minimum or performs whatever analysis is requested by
      the user.

      @param par function parameters as defined by the user.

      @return the Value of the function.

      @see MnUserParameters
      @see VariableMetricMinimizer
      @see MnMigrad


double ErrorDef() const

      Error definition of the function. MINUIT defines Parameter errors as the
      change in Parameter Value required to change the function Value by up. Normally,
      for chisquared fits it is 1, and for negative log likelihood, its Value is 0.5.
      If the user wants instead the 2-sigma errors for chisquared fits, it becomes 4,
      as Chi2(x+n*sigma) = Chi2(x) + n*n.

      Comment a little bit better with links!!!!!!!!!!!!!!!!!


{return Up();}
double Up() const

      Error definition of the function. MINUIT defines Parameter errors as the
      change in Parameter Value required to change the function Value by up. Normally,
      for chisquared fits it is 1, and for negative log likelihood, its Value is 0.5.
      If the user wants instead the 2-sigma errors for chisquared fits, it becomes 4,
      as Chi2(x+n*sigma) = Chi2(x) + n*n.

      \todo Comment a little bit better with links!!!!!!!!!!!!!!!!! Idem for ErrorDef()


void SetErrorDef(double )
       add interface to set dynamically a new error definition
       Re-implement this function if needed.

{}