13#ifndef ROOT_Fit_BasicFCN
14#define ROOT_Fit_BasicFCN
39template<
class DerivFunType,
class ModelFunType,
class DataType>
44 typedef typename ModelFunType::BackendType
T;
55 BasicFCN (
const std::shared_ptr<DataType> & data,
const std::shared_ptr<IModelFunction> & func) :
72 virtual const DataType &
Data()
const {
return *
fData; }
87 if (!gfunc)
return false;
88 return gfunc->HasParameterHessian();
98 void SetData(
const std::shared_ptr<DataType> & data) {
fData = data; }
105 std::shared_ptr<IModelFunction>
fFunc;
void SetData(const std::shared_ptr< DataType > &data)
Set the data pointer.
std::shared_ptr< IModelFunction > ModelFunctionPtr() const
access to function pointer
::ROOT::Math::IParamMultiFunctionTempl< T > IModelFunction
void SetModelFunction(const std::shared_ptr< IModelFunction > &func)
Set the function pointer.
virtual const DataType & Data() const
access to const reference to the data
::ROOT::Math::BasicFitMethodFunction< DerivFunType > BaseObjFunction
std::shared_ptr< IModelFunction > fFunc
::ROOT::Math::IParametricGradFunctionMultiDimTempl< T > IGradModelFunction
BaseObjFunction::BaseFunction BaseFunction
virtual ~BasicFCN()
Destructor (no operations).
ModelFunType::BackendType T
std::shared_ptr< BinData > fData
BasicFCN(const std::shared_ptr< DataType > &data, const std::shared_ptr< IModelFunction > &func)
Constructor from data set and model function.
std::shared_ptr< DataType > DataPtr() const
access to data pointer
virtual const IModelFunction & ModelFunction() const
access to const reference to the model function
bool HasHessian() const override
flag to indicate if can compute Hessian
FitMethodFunction class Interface for objective functions (like chi2 and likelihood used in the fit) ...
DerivFunType::BaseFunc BaseFunction
Namespace for the fitting classes.