31 #ifndef ROOT_Math_Polynomial 32 #define ROOT_Math_Polynomial 96 Polynomial(
double a,
double b,
double c,
double d,
double e);
113 const std::vector<std::complex <double> > &
FindRoots();
128 const std::vector<std::complex <double> > &
FindNumRoots();
143 void FdF (
double x,
double & f,
double & df)
const {
151 double DoEvalPar (
double x,
const double * p )
const ;
166 std::vector< std::complex < double > >
fRoots;
Interface (abstract class) for generic functions objects of one-dimension Provides a method to evalua...
Namespace for new ROOT classes and functions.
Polynomial(unsigned int n=0)
Construct a Polynomial function of order n.
std::vector< double > FindRealRoots()
Find the only the real polynomial roots.
std::vector< double > fDerived_params
const std::vector< std::complex< double > > & FindRoots()
Find the polynomial roots.
ParamFunction< IParamGradFunction > ParFunc
Specialized Gradient interface(abstract class) for one dimensional functions It provides a method to ...
const std::vector< std::complex< double > > & FindNumRoots()
Find the polynomial roots using always an iterative numerical methods The numerical method used is fr...
unsigned int Order() const
Order of Polynomial.
double DoEvalPar(double x, const double *p) const
Implementation of the evaluation function using the x value and the parameters.
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...
IGenFunction * Clone() const
Clone a function.
std::vector< std::complex< double > > fRoots
Base template class for all Parametric Functions.
Parametric Function class describing polynomials of order n.
* x
Deprecated and error prone model selection interface.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Namespace for new Math classes and functions.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
double Derivative(double x) const
Return the derivative of the function at a point x Use the private method DoDerivative.
double DoParameterDerivative(double x, const double *p, unsigned int ipar) const
Evaluate the gradient, to be implemented by the derived classes.
double DoDerivative(double x) const
function to evaluate the derivative with respect each coordinate.