GradFunctor1D class for one-dimensional gradient functions. 
It is used to wrap in a very C++ callable object to make a 1D gradient functions. It can be constructed in three different way: 
- 
from an object implementing both double operator()( double  ) for the function evaluation and double Derivative(double ) for the partial derivatives 
 
- 
from an object implementing any member function like Foo::XXX(double ) for the function evaluation and any other member function like Foo::YYY(double ) for the derivative. 
 
- 
from an 2 function objects implementing double operator()( double ) . One object provides the function evaluation, the other the derivative. 
 
Definition at line 730 of file Functor.h.
 | 
|   | GradFunctor1D () | 
|   | Default constructor.  
  | 
|   | 
| template<typename Func >  | 
|   | GradFunctor1D (const Func &f) | 
|   | construct from an object with the right signature implementing both operator() (double x) and Derivative(double x)  
  | 
|   | 
| template<typename Func , typename GradFunc >  | 
|   | GradFunctor1D (const Func &f, const GradFunc &g) | 
|   | construct from two 1D function objects  
  | 
|   | 
|   | GradFunctor1D (const GradFunctor1D &rhs) | 
|   | Copy constructor for Functor based on ROOT::Math::IGradFunction.  
  | 
|   | 
| template<class PtrObj , typename MemFn , typename GradMemFn >  | 
|   | GradFunctor1D (const PtrObj &p, MemFn memFn, GradMemFn gradFn) | 
|   | construct from a pointer to class and two pointers to member functions, one for the function evaluation and the other for the derivative.  
  | 
|   | 
|   | GradFunctor1D (const std::function< double(double)> &f, const std::function< double(double)> &g) | 
|   | specialized constructor from 2 std::function objects implementing double operator()(double x).  
  | 
|   | 
| virtual  | ~GradFunctor1D () | 
|   | Destructor (no operations)  
  | 
|   | 
| ImplBase *  | Clone () const | 
|   | Clone a function.  
  | 
|   | 
| GradFunctor1D &  | operator= (const GradFunctor1D &rhs) | 
|   | Assignment operator.  
  | 
|   | 
| virtual  | ~IGradientFunctionOneDim () | 
|   | Virtual Destructor (no operations)  
  | 
|   | 
| virtual void  | FdF (double x, double &f, double &df) const | 
|   | Optimized method to evaluate at the same time the function value and derivative at a point x.  
  | 
|   | 
|   | 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.  
  | 
|   | 
| virtual  | ~IGradientOneDim () | 
|   | virtual destructor  
  | 
|   | 
| double  | Derivative (const double *x) const | 
|   | Compatibility method with multi-dimensional interface for partial derivative.  
  | 
|   | 
| double  | Derivative (double x) const | 
|   | Return the derivative of the function at a point x Use the private method DoDerivative.  
  | 
|   | 
| void  | FdF (const double *x, double &f, double *df) const | 
|   | Compatibility method with multi-dimensional interface for Gradient and function evaluation.  
  | 
|   | 
| void  | Gradient (const double *x, double *g) const | 
|   | Compatibility method with multi-dimensional interface for Gradient.  
  | 
|   | 
template<class PtrObj , typename MemFn , typename GradMemFn > 
  
  
      
        
          | ROOT::Math::GradFunctor1D::GradFunctor1D  | 
          ( | 
          const PtrObj &  | 
          p,  | 
         
        
           | 
           | 
          MemFn  | 
          memFn,  | 
         
        
           | 
           | 
          GradMemFn  | 
          gradFn  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
construct from a pointer to class and two pointers to member functions, one for the function evaluation and the other for the derivative. 
The member functions must take a double as argument and return a double 
Definition at line 761 of file Functor.h.