 ROOT   Reference Guide
Searching...
No Matches
ROOT::Math::OneDimParamFunctionAdapter< ParamFuncType > Class Template Reference
template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>

OneDimParamFunctionAdapter class to wrap a multi-dim parameteric function in one dimensional one.

Given a f(x[],p1,...pn) transforms in a f( p_i) given the param index i and the vectors x[] and p[] of the coordinates and parameters It has to be used carefully, since for efficiency reason it does not copy the parameter object but re-uses the given pointer for the p[] vector. The ParamFuncType reference by default is not const because the operator()(x,p) is not a const method

Definition at line 213 of file OneDimFunctionAdapter.h.

## Public Member Functions

OneDimParamFunctionAdapter (ParamFuncType f, const double *x, const double *p, unsigned int ipar=0)
Constructor from the function object , x value and coordinate we want to adapt.

Destructor (no operations)

clone Public Member Functions inherited from ROOT::Math::IBaseFunctionOneDim
IBaseFunctionOneDim ()

virtual ~IBaseFunctionOneDim ()
virtual destructor

double operator() (const double *x) const
Evaluate the function at a point x[].

double operator() (double x) const
Evaluate the function at a point x Use the a pure virtual private method DoEval which must be implemented by sub-classes.

## Private Member Functions

double DoEval (double x) const
evaluate function at the values x[] given in the constructor and as function of the coordinate fCoord.

## Private Attributes

ParamFuncType fFunc

unsigned int fIpar

const doublefParams

const doublefX Public Types inherited from ROOT::Math::IBaseFunctionOneDim
typedef IBaseFunctionOneDim BaseFunc

#include <Math/OneDimFunctionAdapter.h>

Inheritance diagram for ROOT::Math::OneDimParamFunctionAdapter< ParamFuncType >:
[legend]

## Constructor & Destructor Documentation

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
 ROOT::Math::OneDimParamFunctionAdapter< ParamFuncType >::OneDimParamFunctionAdapter ( ParamFuncType f, const double * x, const double * p, unsigned int ipar = 0 )
inline

Constructor from the function object , x value and coordinate we want to adapt.

Definition at line 221 of file OneDimFunctionAdapter.h.

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
inline

Destructor (no operations)

Definition at line 234 of file OneDimFunctionAdapter.h.

## ◆ Clone()

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
inlinevirtual

clone

Implements ROOT::Math::IBaseFunctionOneDim.

Definition at line 239 of file OneDimFunctionAdapter.h.

## ◆ DoEval()

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
 double ROOT::Math::OneDimParamFunctionAdapter< ParamFuncType >::DoEval ( double x ) const
inlineprivatevirtual

evaluate function at the values x[] given in the constructor and as function of the coordinate fCoord.

Implements ROOT::Math::IBaseFunctionOneDim.

Definition at line 251 of file OneDimFunctionAdapter.h.

## ◆ fFunc

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
private

Definition at line 264 of file OneDimFunctionAdapter.h.

## ◆ fIpar

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>
private

Definition at line 267 of file OneDimFunctionAdapter.h.

## ◆ fParams

template<class ParamFuncType = ROOT::Math::IParamMultiFunction &>