class ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>: public ROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>


   class evaluating the log likelihood
   for binned Poisson likelihood fits
   it is template to distinguish gradient and non-gradient case

   @ingroup  FitMethodFunc

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

ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IMultiGradFunction>, ROOT::Fit::PoissonLLGradFunction

Function Members (Methods)

public:
virtual~PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>()
virtual ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>::BaseFunction*Clone() const
virtual const ROOT::Fit::BinData&Data() const
virtual doubleDataElement(const double* x, unsigned int i, double* g) const
doubleROOT::Math::IGradientMultiDim::Derivative(const double* x, unsigned int icoord = 0) const
virtual voidROOT::Math::IGradientFunctionMultiDim::FdF(const double* x, double& f, double* df) const
virtual voidGradient(const double* x, double* g) const
virtual const ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>::IModelFunction&ModelFunction() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::NCalls() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::NDim() const
unsigned intNFitPoints() const
virtual unsigned intROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::NPoints() const
doubleROOT::Math::IBaseFunctionMultiDim::operator()(const double* x) const
ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>(const ROOT::Fit::BinData& data, ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>::IModelFunction& func)
virtual voidROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::ResetNCalls()
virtual ROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::Type_tType() const
virtual voidROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::UpdateNCalls() const
private:
virtual doubleDoDerivative(const double* x, unsigned int icoord) const
virtual doubleDoEval(const double* x) const
ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>&operator=(const ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>& rhs)
ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>(const ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>&)

Data Members

public:
enum ROOT::Math::BasicFitMethodFunction::Type_t { kUndefined
kLeastSquare
kLogLikelihood
};
private:
const ROOT::Fit::BinData&fData
ROOT::Fit::PoissonLikelihoodFCN<ROOT::Math::IGradientFunctionMultiDim>::IModelFunction&fFunc
vector<double>fGradfor derivatives
unsigned intfNCalls
unsigned intfNDim
unsigned intfNEffPointsnumber of effective points used in the fit
unsigned intfNPointssize of the data

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

BaseFunction * Clone() const
 clone the function (need to return Base for Windows)
{ return new PoissonLikelihoodFCN(fData,fFunc); }
unsigned int NFitPoints() const
 effective points used in the fit
{ return fNEffPoints; }
double DataElement(const double* x, unsigned int i, double* g) const
 i-th likelihood element and its gradient
void Gradient(const double* x, double* g) const
 evaluate gradient
double DoEval(const double* x) const
      Evaluation of the  function (required by interface)

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

Author: L. Moneta Fri Aug 17 14:29:24 2007
Last change: root/mathcore:$Id: PoissonLikelihoodFCN.h 26541 2008-12-01 10:00:52Z moneta $
Last generated: 2008-12-12 12:11
Copyright (c) 2007 LCG ROOT Math Team, CERN/PH-SFT *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.