BOSS 7.0.6
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtItgAbsFunction Class Referenceabstract

#include <EvtItgAbsFunction.hh>

+ Inheritance diagram for EvtItgAbsFunction:

Public Member Functions

 EvtItgAbsFunction (double lowerRange, double upperRange)
 
virtual ~EvtItgAbsFunction ()
 
virtual double value (double x) const
 
virtual double operator() (double x) const
 
double upperRange () const
 
double lowerRange () const
 
void getRange (double &lower, double &upper) const
 
virtual void setCoeff (int, int, double)=0
 
virtual double getCoeff (int, int)=0
 

Protected Member Functions

virtual double myFunction (double x) const =0
 
void setRange (double x1, double x2)
 

Detailed Description

Definition at line 34 of file EvtItgAbsFunction.hh.

Constructor & Destructor Documentation

◆ EvtItgAbsFunction()

EvtItgAbsFunction::EvtItgAbsFunction ( double  lowerRange,
double  upperRange 
)

Definition at line 36 of file EvtItgAbsFunction.cc.

36 :
37 _upperRange(upperRange),
38 _lowerRange(lowerRange){}
double lowerRange() const
double upperRange() const

◆ ~EvtItgAbsFunction()

EvtItgAbsFunction::~EvtItgAbsFunction ( )
virtual

Definition at line 40 of file EvtItgAbsFunction.cc.

41{}

Member Function Documentation

◆ getCoeff()

virtual double EvtItgAbsFunction::getCoeff ( int  ,
int   
)
pure virtual

◆ getRange()

void EvtItgAbsFunction::getRange ( double &  lower,
double &  upper 
) const
inline

Definition at line 53 of file EvtItgAbsFunction.hh.

53{ lower = _lowerRange; upper = _upperRange; }

◆ lowerRange()

double EvtItgAbsFunction::lowerRange ( ) const
inline

Definition at line 52 of file EvtItgAbsFunction.hh.

52{return _lowerRange;}

Referenced by EvtItgAbsIntegrator::normalisation().

◆ myFunction()

virtual double EvtItgAbsFunction::myFunction ( double  x) const
protectedpure virtual

◆ operator()()

double EvtItgAbsFunction::operator() ( double  x) const
virtual

Definition at line 54 of file EvtItgAbsFunction.cc.

54 {
55 return myFunction(x);
56}
virtual double myFunction(double x) const =0

◆ setCoeff()

virtual void EvtItgAbsFunction::setCoeff ( int  ,
int  ,
double   
)
pure virtual

◆ setRange()

void EvtItgAbsFunction::setRange ( double  x1,
double  x2 
)
inlineprotected

Definition at line 60 of file EvtItgAbsFunction.hh.

60{ _lowerRange=x1; _upperRange=x2; };

◆ upperRange()

double EvtItgAbsFunction::upperRange ( ) const
inline

Definition at line 51 of file EvtItgAbsFunction.hh.

51{return _upperRange;}

Referenced by EvtItgAbsIntegrator::normalisation().

◆ value()

double EvtItgAbsFunction::value ( double  x) const
virtual

Definition at line 45 of file EvtItgAbsFunction.cc.

45 {
46 if (x >= _lowerRange && x <= _upperRange) return myFunction(x);
47 report(ERROR,"EvtGen") << "Error in EvtItgAbsFunction::value. Given co-ordinate " << x
48 << " is outside of allowed range [" << _lowerRange << ", "
49 << _upperRange << "]. Returning 0.0" << endl;
50 return 0.0; // Never get here
51}
ostream & report(Severity severity, const char *facility)
Definition: EvtReport.cc:36
@ ERROR
Definition: EvtReport.hh:49
double x[1000]

Referenced by EvtBtoXsgammaRootFinder::GetRootSingleFunc(), EvtItgFourCoeffFcn::setCoeff(), EvtItgPtrFunction::setCoeff(), EvtItgThreeCoeffFcn::setCoeff(), and EvtItgTwoCoeffFcn::setCoeff().


The documentation for this class was generated from the following files: