1 #ifndef GAUDIMATH_GSLFUNADAPTERS_H 2 #define GAUDIMATH_GSLFUNADAPTERS_H 1 10 #include "CLHEP/GenericFunctions/GenericFunctions.hh" 11 #include "CLHEP/GenericFunctions/Argument.hh" 12 #include "CLHEP/GenericFunctions/AbsFunction.hh" 20 #include "gsl/gsl_mode.h" 21 #include "gsl/gsl_sf_result.h" 25 #if defined(__clang__) || defined(__CLING__) 26 #pragma clang diagnostic push 27 #pragma clang diagnostic ignored "-Winconsistent-missing-override" 28 #elif defined(__GNUC__) && __GNUC__ >= 5 29 #pragma GCC diagnostic push 30 #pragma GCC diagnostic ignored "-Wsuggest-override" 35 namespace GaudiMathImplementation
44 typedef int (*
Function)( double , gsl_sf_result* ) ;
54 ~GSLFunctionWithError () override =
default;
56 double operator() (
double x ) const override;
57 double operator() ( const Argument& x ) const override;
58 bool hasAnalyticDerivative ()
const override {
return true ; }
65 const gsl_sf_result& result ()
const ;
67 double error ()
const ;
84 typedef double (*
Function)( double , gsl_mode_t ) ;
91 const gsl_mode_t& mode ) ;
95 ~GSLFunctionWithMode () override =
default;
97 double operator() (
double x ) const override;
98 double operator() ( const Argument& x ) const override;
99 bool hasAnalyticDerivative ()
const override {
return true ; }
105 const gsl_mode_t& mode ()
const ;
131 const gsl_mode_t& mode ) ;
135 ~GSLFunctionWithModeAndError () override =
default;
137 double operator() (
double x ) const override;
138 double operator() ( const Argument& x ) const override;
139 bool hasAnalyticDerivative ()
const override {
return true ; }
145 const gsl_mode_t& mode ()
const ;
147 const gsl_sf_result& result ()
const ;
149 double error ()
const ;
167 #if defined(__clang__) || defined(__CLING__) 168 #pragma clang diagnostic pop 169 #elif defined(__GNUC__) && __GNUC__ >= 5 170 #pragma GCC diagnostic pop 173 #endif // GAUDIMATH_GSLFUNADAPTERS_H Genfun::GaudiMathImplementation::GSLFunctionWithMode GSLFunctionWithMode
Genfun::GaudiMathImplementation::GSLFunctionWithError GSLFunctionWithError
std::unique_ptr< gsl_mode_t > m_mode
mandatory macro from CLHEP/GenericFunctions
Genfun::AbsFunction Function
unsigned int dimensionality() const override
Genfun::GaudiMathImplementation::NumericalDerivative Derivative
PropertyMgr & operator=(const PropertyMgr &)=delete
Genfun::GaudiMathImplementation::SimpleFunction GSLFunction
the actual type for primitive adaptor
mandatory macro from CLHEP/GenericFunctions
std::unique_ptr< gsl_sf_result > m_result
std::unique_ptr< gsl_sf_result > m_result
Genfun::GaudiMathImplementation::GSLFunctionWithModeAndError GSLFunctionWithModeAndError
double fun(const std::vector< double > &x)
unsigned int dimensionality() const override
mandatory macro from CLHEP/GenericFunctions
unsigned int dimensionality() const override