ROOT logo
ROOT » MATH » MATHCORE » ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>

class ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>: public ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>


   Chi2FCN class for binnned fits using the least square methods

   @ingroup  FitMethodFunc

This class is also known as (typedefs to this class)

ROOT::Fit::Chi2Function, ROOT::Fit::Chi2FCN<ROOT::Math::IMultiGenFunction>

Function Members (Methods)

public:
virtual~Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>()
ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>(const ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>&)
ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>(const ROOT::Fit::BinData& data, ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>::IModelFunction& func)
virtual ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>::BaseFunction*Clone() const
virtual ROOT::Math::IBaseFunctionMultiDim*ROOT::Math::IBaseFunctionMultiDim::Clone() const
virtual const ROOT::Fit::BinData&Data() const
virtual doubleDataElement(const double* x, unsigned int i, double* g) const
virtual doubleROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::DataElement(const double* x, unsigned int i, double* g = 0) const
virtual voidGradient(const double* x, double* g) const
virtual const ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>::IModelFunction&ModelFunction() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::NCalls() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::NDim() const
virtual unsigned intROOT::Math::IBaseFunctionMultiDim::NDim() const
virtual unsigned intNFitPoints() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::NPoints() const
doubleROOT::Math::IBaseFunctionMultiDim::operator()(const double* x) const
ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>&ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::operator=(const ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>&)
virtual voidROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::ResetNCalls()
virtual ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::Type_tType() const
virtual ROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::Type_tROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::Type() const
virtual voidROOT::Math::BasicFitMethodFunction<ROOT::Math::IBaseFunctionMultiDim>::UpdateNCalls() const
protected:
virtual voidSetNFitPoints(unsigned int n) const
private:
virtual doubleDoDerivative(const double* x, unsigned int icoord) const
virtual doubleDoEval(const double* x) const

Data Members

private:
enum ROOT::Math::BasicFitMethodFunction::Type_t { kUndefined
kLeastSquare
kLogLikelihood
};
private:
const ROOT::Fit::BinData&fData
ROOT::Fit::Chi2FCN<ROOT::Math::IBaseFunctionMultiDim>::IModelFunction&fFunc
vector<double>fGradfor derivatives
unsigned intfNEffPointsnumber of effective points used in the fit

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

BaseFunction * Clone() const
 clone the function
unsigned int NFitPoints() const
 effective points used in the fit (exclude the rejected one)
{ return fNEffPoints; }
double DataElement(const double* x, unsigned int i, double* g) const
 i-th chi-square residual
void Gradient(const double* x, double* g) const
 need to be virtual to be instantited
void SetNFitPoints(unsigned int n) const
 set number of fit points (need to be called in const methods, make it const)
{ fNEffPoints = n; }
double DoEval(const double* x) const
      Evaluation of the  function (required by interface)

double DoDerivative(const double* x, unsigned int icoord) const
 for derivatives