WrappedParamFunction class to wrap any multi-dimensional function pbject implementing the operator()(const double * x, const double * p) in an interface-like IParamFunction with a vector storing and caching internally the parameter values.
Definition at line 41 of file WrappedParamFunction.h.
Public Member Functions | |
template<class Iterator > | |
WrappedParamFunction (FuncPtr func, unsigned int dim, Iterator begin, Iterator end) | |
Constructor a wrapped function from a pointer to a callable object, the function dimension and an iterator specifying begin and end of parameters. More... | |
WrappedParamFunction (FuncPtr func, unsigned int dim=1, unsigned int npar=0, double *par=0) | |
Constructor a wrapped function from a pointer to a callable object, the function dimension and number of parameters which are set to zero by default. More... | |
IMultiGenFunction * | Clone () const |
clone the function More... | |
unsigned int | NDim () const |
Retrieve the dimension of the function. More... | |
unsigned int | NPar () const |
Return the number of Parameters. More... | |
const double * | Parameters () const |
Access the parameter values. More... | |
void | SetParameters (const double *p) |
Set the parameter values. More... | |
Public Member Functions inherited from ROOT::Math::IParametricFunctionMultiDimTempl< double > | |
double | operator() (const double *x) const |
double | operator() (const double *x, const double *p) const |
Evaluate function at a point x and for given parameters p. More... | |
Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double > | |
IBaseFunctionMultiDimTempl () | |
virtual | ~IBaseFunctionMultiDimTempl () |
virtual destructor More... | |
virtual IBaseFunctionMultiDimTempl< double > * | Clone () const=0 |
Clone a function. More... | |
virtual unsigned int | NDim () const=0 |
Retrieve the dimension of the function. More... | |
double | operator() (const double *x) const |
Evaluate the function at a point x[]. More... | |
Public Member Functions inherited from ROOT::Math::IBaseParam | |
virtual | ~IBaseParam () |
Virtual Destructor (no operations) More... | |
virtual unsigned int | NPar () const =0 |
Return the number of Parameters. More... | |
virtual std::string | ParameterName (unsigned int i) const |
Return the name of the i-th parameter (starting from zero) Overwrite if want to avoid the default name ("Par_0, Par_1, ...") More... | |
virtual const double * | Parameters () const =0 |
Access the parameter values. More... | |
virtual void | SetParameters (const double *p)=0 |
Set the parameter values. More... | |
Private Member Functions | |
double | DoEvalPar (const double *x, const double *p) const |
evaluate the function given values and parameters (requested interface) More... | |
Private Attributes | |
unsigned int | fDim |
FuncPtr | fFunc |
std::vector< double > | fParams |
Additional Inherited Members | |
Public Types inherited from ROOT::Math::IParametricFunctionMultiDimTempl< double > | |
typedef IBaseFunctionMultiDimTempl< double > | BaseFunc |
Public Types inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double > | |
typedef double | BackendType |
typedef IBaseFunctionMultiDimTempl< double > | BaseFunc |
#include <Math/WrappedParamFunction.h>
|
inline |
Constructor a wrapped function from a pointer to a callable object, the function dimension and number of parameters which are set to zero by default.
Definition at line 49 of file WrappedParamFunction.h.
|
inline |
Constructor a wrapped function from a pointer to a callable object, the function dimension and an iterator specifying begin and end of parameters.
Definition at line 75 of file WrappedParamFunction.h.
|
inlinevirtual |
clone the function
Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.
Definition at line 93 of file WrappedParamFunction.h.
|
inlineprivatevirtual |
evaluate the function given values and parameters (requested interface)
Implements ROOT::Math::IParametricFunctionMultiDimTempl< double >.
Definition at line 113 of file WrappedParamFunction.h.
|
inlinevirtual |
Retrieve the dimension of the function.
Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.
Definition at line 107 of file WrappedParamFunction.h.
|
inlinevirtual |
Return the number of Parameters.
Implements ROOT::Math::IBaseParam.
Definition at line 105 of file WrappedParamFunction.h.
|
inlinevirtual |
Access the parameter values.
Implements ROOT::Math::IBaseParam.
Definition at line 97 of file WrappedParamFunction.h.
|
inlinevirtual |
Set the parameter values.
p | vector of doubles containing the parameter values. |
to be defined: can user change number of params ? At the moment no.
Implements ROOT::Math::IBaseParam.
Definition at line 101 of file WrappedParamFunction.h.
|
private |
Definition at line 119 of file WrappedParamFunction.h.
|
private |
Definition at line 118 of file WrappedParamFunction.h.
|
private |
Definition at line 120 of file WrappedParamFunction.h.