Logo ROOT  
Reference Guide
ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType > Class Template Reference

template<class DerivFunType, class ModelFunType, class DataType>
class ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >

BasicFCN class: base class for the objective functions used in the fits It has a reference to the data and th emodel function used in the fit.

It cannot be instantiated but constructed from the derived classes

Definition at line 40 of file BasicFCN.h.

Public Member Functions

virtual const DataType & Data () const
 access to const reference to the data More...
 
std::shared_ptr< DataType > DataPtr () const
 access to data pointer More...
 
virtual const IModelFunctionModelFunction () const
 access to const reference to the model function More...
 
std::shared_ptr< IModelFunctionModelFunctionPtr () const
 access to function pointer More...
 
- Public Member Functions inherited from ROOT::Math::BasicFitMethodFunction< DerivFunType >
 BasicFitMethodFunction (int dim, int npoint)
 
virtual ~BasicFitMethodFunction ()
 Virtual Destructor (no operations) More...
 
virtual double DataElement (const double *x, unsigned int i, double *g=0) const=0
 method returning the data i-th contribution to the fit objective function For example the residual for the least square functions or the pdf element for the likelihood functions. More...
 
virtual unsigned int NCalls () const
 return the total number of function calls (overrided if needed) More...
 
virtual unsigned int NDim () const
 Number of dimension (parameters) . More...
 
virtual unsigned int NPoints () const
 return the number of data points used in evaluating the function More...
 
virtual void ResetNCalls ()
 reset number of function calls More...
 
virtual Type_t Type () const
 return the type of method, override if needed More...
 
virtual void UpdateNCalls () const
 update number of calls More...
 

Protected Types

typedef BaseObjFunction::BaseFunction BaseFunction
 
typedef ::ROOT::Math::BasicFitMethodFunction< DerivFunType > BaseObjFunction
 
typedef ::ROOT::Math::IParamMultiFunctionTempl< TIModelFunction
 
typedef ModelFunType::BackendType T
 

Protected Member Functions

 BasicFCN (const std::shared_ptr< DataType > &data, const std::shared_ptr< IModelFunction > &func)
 Constructor from data set and model function. More...
 
virtual ~BasicFCN ()
 Destructor (no operations) More...
 
void SetData (const std::shared_ptr< DataType > &data)
 Set the data pointer. More...
 
void SetModelFunction (const std::shared_ptr< IModelFunction > &func)
 Set the function pointer. More...
 

Protected Attributes

std::shared_ptr< DataType > fData
 
std::shared_ptr< IModelFunctionfFunc
 

Additional Inherited Members

- Public Types inherited from ROOT::Math::BasicFitMethodFunction< DerivFunType >
typedef FunctionType::BaseFunc BaseFunction
 
enum  Type_t
 enumeration specyfing the possible fit method types More...
 

#include <Fit/BasicFCN.h>

Inheritance diagram for ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >:
[legend]

Member Typedef Documentation

◆ BaseFunction

template<class DerivFunType , class ModelFunType , class DataType >
typedef BaseObjFunction::BaseFunction ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::BaseFunction
protected

Definition at line 47 of file BasicFCN.h.

◆ BaseObjFunction

template<class DerivFunType , class ModelFunType , class DataType >
typedef ::ROOT::Math::BasicFitMethodFunction<DerivFunType> ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::BaseObjFunction
protected

Definition at line 46 of file BasicFCN.h.

◆ IModelFunction

template<class DerivFunType , class ModelFunType , class DataType >
typedef ::ROOT::Math::IParamMultiFunctionTempl<T> ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::IModelFunction
protected

Definition at line 49 of file BasicFCN.h.

◆ T

template<class DerivFunType , class ModelFunType , class DataType >
typedef ModelFunType::BackendType ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::T
protected

Definition at line 44 of file BasicFCN.h.

Constructor & Destructor Documentation

◆ BasicFCN()

template<class DerivFunType , class ModelFunType , class DataType >
ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::BasicFCN ( const std::shared_ptr< DataType > &  data,
const std::shared_ptr< IModelFunction > &  func 
)
inlineprotected

Constructor from data set and model function.

Definition at line 54 of file BasicFCN.h.

◆ ~BasicFCN()

template<class DerivFunType , class ModelFunType , class DataType >
virtual ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::~BasicFCN ( )
inlineprotectedvirtual

Destructor (no operations)

Definition at line 65 of file BasicFCN.h.

Member Function Documentation

◆ Data()

template<class DerivFunType , class ModelFunType , class DataType >
virtual const DataType & ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::Data ( ) const
inlinevirtual

access to const reference to the data

Definition at line 71 of file BasicFCN.h.

◆ DataPtr()

template<class DerivFunType , class ModelFunType , class DataType >
std::shared_ptr< DataType > ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::DataPtr ( ) const
inline

access to data pointer

Definition at line 74 of file BasicFCN.h.

◆ ModelFunction()

template<class DerivFunType , class ModelFunType , class DataType >
virtual const IModelFunction & ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::ModelFunction ( ) const
inlinevirtual

access to const reference to the model function

Definition at line 77 of file BasicFCN.h.

◆ ModelFunctionPtr()

template<class DerivFunType , class ModelFunType , class DataType >
std::shared_ptr< IModelFunction > ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::ModelFunctionPtr ( ) const
inline

access to function pointer

Definition at line 80 of file BasicFCN.h.

◆ SetData()

template<class DerivFunType , class ModelFunType , class DataType >
void ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::SetData ( const std::shared_ptr< DataType > &  data)
inlineprotected

Set the data pointer.

Definition at line 88 of file BasicFCN.h.

◆ SetModelFunction()

template<class DerivFunType , class ModelFunType , class DataType >
void ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::SetModelFunction ( const std::shared_ptr< IModelFunction > &  func)
inlineprotected

Set the function pointer.

Definition at line 91 of file BasicFCN.h.

Member Data Documentation

◆ fData

template<class DerivFunType , class ModelFunType , class DataType >
std::shared_ptr<DataType> ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::fData
protected

Definition at line 94 of file BasicFCN.h.

◆ fFunc

template<class DerivFunType , class ModelFunType , class DataType >
std::shared_ptr<IModelFunction> ROOT::Fit::BasicFCN< DerivFunType, ModelFunType, DataType >::fFunc
protected

Definition at line 95 of file BasicFCN.h.


The documentation for this class was generated from the following file: