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;
105 std::shared_ptr<IModelFunction>
fFunc;
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
BasicFCN class: base class for the objective functions used in the fits It has a reference to the dat...
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 bool HasHessian() const
flag to indicate if can compute Hessian
virtual ~BasicFCN()
Destructor (no operations)
ModelFunType::BackendType T
std::shared_ptr< DataType > 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
FitMethodFunction class Interface for objective functions (like chi2 and likelihood used in the fit) ...
static bool IsAGradFCN()
Static function to indicate if a function is supporting gradient.
FunctionType::BaseFunc BaseFunction
IParamFunction interface (abstract class) describing multi-dimensional parametric functions It is a d...
Interface (abstract class) for parametric gradient multi-dimensional functions providing in addition ...
virtual bool HasParameterHessian() const
TFitResultPtr Fit(FitObject *h1, TF1 *f1, Foption_t &option, const ROOT::Math::MinimizerOptions &moption, const char *goption, ROOT::Fit::DataRange &range)
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.