#include <EvtIntegPdf1D.hh>
Inheritance diagram for EvtIntegPdf1D:
Public Member Functions | |
EvtIntegPdf1D (double min, double max) | |
EvtIntegPdf1D (const EvtIntegPdf1D &) | |
virtual | ~EvtIntegPdf1D () |
virtual double | pdfIntegral (double x) const =0 |
virtual double | pdfIntegralInverse (double x) const =0 |
virtual EvtValError | compute_integral () const |
virtual EvtPoint1D | randomPoint () |
virtual EvtPdf< EvtPoint1D > * | clone () const =0 |
double | evaluate (const EvtPoint1D &p) const |
EvtPdfMax< EvtPoint1D > | findMax (const EvtPdf< EvtPoint1D > &pc, int N) |
EvtValError | findGenEff (const EvtPdf< EvtPoint1D > &pc, int N, int nFindMax) |
void | setItg (EvtValError itg) |
EvtValError | getItg () const |
EvtValError | getItg (int N) const |
virtual EvtValError | compute_integral (int N) const |
EvtValError | compute_mc_integral (const EvtPdf< EvtPoint1D > &pc, int N) |
EvtPredGen< EvtPdfGen< EvtPoint1D >, EvtPdfPred< EvtPoint1D > > | accRejGen (const EvtPdf< EvtPoint1D > &pc, int nMax, double factor=1.) |
Protected Member Functions | |
virtual double | pdf (const EvtPoint1D &) const =0 |
Protected Attributes | |
double | _min |
double | _max |
EvtValError | _itg |
Definition at line 18 of file EvtIntegPdf1D.hh.
EvtIntegPdf1D::EvtIntegPdf1D | ( | double | min, | |
double | max | |||
) |
EvtIntegPdf1D::EvtIntegPdf1D | ( | const EvtIntegPdf1D & | ) |
EvtIntegPdf1D::~EvtIntegPdf1D | ( | ) | [virtual] |
EvtPredGen<EvtPdfGen<EvtPoint1D >,EvtPdfPred<EvtPoint1D > > EvtPdf< EvtPoint1D >::accRejGen | ( | const EvtPdf< EvtPoint1D > & | pc, | |
int | nMax, | |||
double | factor = 1. | |||
) | [inherited] |
virtual EvtPdf<EvtPoint1D >* EvtPdf< EvtPoint1D >::clone | ( | void | ) | const [pure virtual, inherited] |
Implemented in EvtBreitWignerPdf, and EvtIntervalFlatPdf.
virtual EvtValError EvtPdf< EvtPoint1D >::compute_integral | ( | int | N | ) | const [inline, virtual, inherited] |
Definition at line 95 of file EvtPdf.hh.
References EvtPdf< T >::compute_integral().
00095 { return compute_integral(); }
EvtValError EvtIntegPdf1D::compute_integral | ( | ) | const [virtual] |
Reimplemented from EvtPdf< EvtPoint1D >.
Definition at line 29 of file EvtIntegPdf1D.cc.
References _max, _min, and pdfIntegral().
00030 { 00031 double x1 = pdfIntegral(_min); 00032 double x2 = pdfIntegral(_max); 00033 return EvtValError(x2-x1,0.); 00034 }
EvtValError EvtPdf< EvtPoint1D >::compute_mc_integral | ( | const EvtPdf< EvtPoint1D > & | pc, | |
int | N | |||
) | [inherited] |
double EvtPdf< EvtPoint1D >::evaluate | ( | const EvtPoint1D & | p | ) | const [inline, inherited] |
EvtValError EvtPdf< EvtPoint1D >::findGenEff | ( | const EvtPdf< EvtPoint1D > & | pc, | |
int | N, | |||
int | nFindMax | |||
) | [inherited] |
EvtPdfMax<EvtPoint1D > EvtPdf< EvtPoint1D >::findMax | ( | const EvtPdf< EvtPoint1D > & | pc, | |
int | N | |||
) | [inherited] |
EvtValError EvtPdf< EvtPoint1D >::getItg | ( | int | N | ) | const [inline, inherited] |
Definition at line 87 of file EvtPdf.hh.
References EvtPdf< T >::_itg, EvtPdf< T >::compute_integral(), and EvtValError::valueKnown().
00087 { 00088 if(!_itg.valueKnown()) _itg = compute_integral(N); 00089 return _itg; 00090 }
EvtValError EvtPdf< EvtPoint1D >::getItg | ( | ) | const [inline, inherited] |
Definition at line 83 of file EvtPdf.hh.
References EvtPdf< T >::_itg, EvtPdf< T >::compute_integral(), and EvtValError::valueKnown().
00083 { 00084 if(!_itg.valueKnown()) _itg = compute_integral(); 00085 return _itg; 00086 }
virtual double EvtPdf< EvtPoint1D >::pdf | ( | const EvtPoint1D & | ) | const [protected, pure virtual, inherited] |
Implemented in EvtBreitWignerPdf, and EvtIntervalFlatPdf.
virtual double EvtIntegPdf1D::pdfIntegral | ( | double | x | ) | const [pure virtual] |
virtual double EvtIntegPdf1D::pdfIntegralInverse | ( | double | x | ) | const [pure virtual] |
EvtPoint1D EvtIntegPdf1D::randomPoint | ( | ) | [virtual] |
Reimplemented from EvtPdf< EvtPoint1D >.
Definition at line 37 of file EvtIntegPdf1D.cc.
References _max, _min, EvtRandom::Flat(), pdfIntegral(), and pdfIntegralInverse().
00038 { 00039 double itgmin = pdfIntegral(_min); 00040 double itgmax = pdfIntegral(_max); 00041 double itgrnd = EvtRandom::Flat(itgmin,itgmax); 00042 00043 return EvtPoint1D(_min,_max,pdfIntegralInverse(itgrnd)); 00044 }
void EvtPdf< EvtPoint1D >::setItg | ( | EvtValError | itg | ) | [inline, inherited] |
EvtValError EvtPdf< EvtPoint1D >::_itg [mutable, protected, inherited] |
double EvtIntegPdf1D::_max [protected] |
Definition at line 37 of file EvtIntegPdf1D.hh.
Referenced by compute_integral(), and randomPoint().
double EvtIntegPdf1D::_min [protected] |
Definition at line 36 of file EvtIntegPdf1D.hh.
Referenced by compute_integral(), and randomPoint().