Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr > Class Template Reference

template<typename FuncObj, typename MemFuncPtr>
class ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >

Definition at line 182 of file WrappedFunction.h.

Public Member Functions

 WrappedMemMultiFunction (FuncObj &obj, MemFuncPtr memFn, unsigned int dim=1)
 construct from the pointer to the object and the member function
 
WrappedMemMultiFunctionClone () const override
 clone (required by the interface)
 
unsigned int NDim () const override
 Retrieve the dimension of the function.
 
- Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDimTempl< T >
virtual ~IBaseFunctionMultiDimTempl ()=default
 
Derivative (const T *x, unsigned int icoord, T *previous_grad, T *previous_g2, T *previous_gstep) const
 In some cases, the derivative algorithm will use information from the previous step, these can be passed in with this overload.
 
Derivative (const T *x, unsigned int icoord=0) const
 Return the partial derivative with respect to the passed coordinate.
 
virtual void FdF (const T *x, T &f, T *df) const
 Optimized method to evaluate at the same time the function value and derivative at a point x.
 
virtual void Gradient (const T *x, T *grad) const
 Evaluate all the vector of function derivatives (gradient) at a point x.
 
virtual void GradientWithPrevResult (const T *x, T *grad, T *previous_grad, T *previous_g2, T *previous_gstep) const
 In some cases, the gradient algorithm will use information from the previous step, these can be passed in with this overload.
 
virtual bool HasGradient () const
 
operator() (const T *x) const
 Evaluate the function at a point x[].
 
virtual bool returnsInMinuit2ParameterSpace () const
 

Private Member Functions

double DoEval (const double *x) const override
 

Private Attributes

unsigned int fDim
 
MemFuncPtr fMemFunc
 
FuncObjfObj
 

Additional Inherited Members

- Public Types inherited from ROOT::Math::IBaseFunctionMultiDimTempl< T >
typedefBackendType
 
typedef IBaseFunctionMultiDimTempl< T > BaseFunc
 

#include <Math/WrappedFunction.h>

Inheritance diagram for ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >:
[legend]

Constructor & Destructor Documentation

◆ WrappedMemMultiFunction()

template<typename FuncObj , typename MemFuncPtr >
ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::WrappedMemMultiFunction ( FuncObj & obj,
MemFuncPtr memFn,
unsigned int dim = 1 )
inline

construct from the pointer to the object and the member function

Definition at line 190 of file WrappedFunction.h.

Member Function Documentation

◆ Clone()

template<typename FuncObj , typename MemFuncPtr >
WrappedMemMultiFunction * ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::Clone ( ) const
inlineoverridevirtual

clone (required by the interface)

Implements ROOT::Math::IBaseFunctionMultiDimTempl< T >.

Definition at line 199 of file WrappedFunction.h.

◆ DoEval()

template<typename FuncObj , typename MemFuncPtr >
double ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::DoEval ( const double * x) const
inlineoverrideprivate

Definition at line 208 of file WrappedFunction.h.

◆ NDim()

template<typename FuncObj , typename MemFuncPtr >
unsigned int ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::NDim ( ) const
inlineoverridevirtual

Retrieve the dimension of the function.

Implements ROOT::Math::IBaseFunctionMultiDimTempl< T >.

Definition at line 204 of file WrappedFunction.h.

Member Data Documentation

◆ fDim

template<typename FuncObj , typename MemFuncPtr >
unsigned int ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::fDim
private

Definition at line 215 of file WrappedFunction.h.

◆ fMemFunc

template<typename FuncObj , typename MemFuncPtr >
MemFuncPtr ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::fMemFunc
private

Definition at line 214 of file WrappedFunction.h.

◆ fObj

template<typename FuncObj , typename MemFuncPtr >
FuncObj* ROOT::Math::WrappedMemMultiFunction< FuncObj, MemFuncPtr >::fObj
private

Definition at line 213 of file WrappedFunction.h.

  • math/mathcore/inc/Math/WrappedFunction.h