npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
npstat::AbsDiscreteDistribution1D Struct Referenceabstract
Inheritance diagram for npstat::AbsDiscreteDistribution1D:
npstat::Poisson1D npstat::ShiftableDiscreteDistribution1D npstat::DiscreteTabulated1D

Public Member Functions

virtual double probability (long x) const =0
 
virtual double cdf (double x) const =0
 
virtual double exceedance (double x) const =0
 
virtual long quantile (double x) const =0
 
bool operator== (const AbsDiscreteDistribution1D &r) const
 
bool operator!= (const AbsDiscreteDistribution1D &r) const
 
virtual AbsDiscreteDistribution1Dclone () const =0
 
virtual unsigned random (AbsRandomGenerator &g, long *generatedRandom) const
 
virtual gs::ClassId classId () const =0
 
virtual bool write (std::ostream &) const
 

Static Public Member Functions

static const char * classname ()
 
static unsigned version ()
 
static AbsDiscreteDistribution1Dread (const gs::ClassId &id, std::istream &is)
 

Protected Member Functions

virtual bool isEqual (const AbsDiscreteDistribution1D &) const =0
 

Member Function Documentation

◆ cdf()

virtual double npstat::AbsDiscreteDistribution1D::cdf ( double  x) const
pure virtual

Cumulative distribution function

Implemented in npstat::Poisson1D, and npstat::ShiftableDiscreteDistribution1D.

◆ classId()

virtual gs::ClassId npstat::AbsDiscreteDistribution1D::classId ( ) const
pure virtual

◆ clone()

virtual AbsDiscreteDistribution1D* npstat::AbsDiscreteDistribution1D::clone ( ) const
pure virtual

◆ exceedance()

virtual double npstat::AbsDiscreteDistribution1D::exceedance ( double  x) const
pure virtual

1 - cdf, implementations should avoid subtractive cancellation

Implemented in npstat::Poisson1D, and npstat::ShiftableDiscreteDistribution1D.

◆ isEqual()

virtual bool npstat::AbsDiscreteDistribution1D::isEqual ( const AbsDiscreteDistribution1D ) const
protectedpure virtual

Comparison for equality. To be implemented by derived classes.

Implemented in npstat::ShiftableDiscreteDistribution1D, npstat::Poisson1D, and npstat::DiscreteTabulated1D.

◆ operator!=()

bool npstat::AbsDiscreteDistribution1D::operator!= ( const AbsDiscreteDistribution1D r) const
inline

Logical negation of operator==

◆ operator==()

bool npstat::AbsDiscreteDistribution1D::operator== ( const AbsDiscreteDistribution1D r) const
inline

Derived classes should not implement "operator==", implement "isEqual" instead

◆ probability()

virtual double npstat::AbsDiscreteDistribution1D::probability ( long  x) const
pure virtual

◆ quantile()

virtual long npstat::AbsDiscreteDistribution1D::quantile ( double  x) const
pure virtual

The quantile function

Implemented in npstat::Poisson1D, and npstat::ShiftableDiscreteDistribution1D.

◆ random()

virtual unsigned npstat::AbsDiscreteDistribution1D::random ( AbsRandomGenerator g,
long *  generatedRandom 
) const
inlinevirtual

Random number generator according to the given distribution. Should return the number of random points used up from the generator.

Reimplemented in npstat::Poisson1D.


The documentation for this struct was generated from the following file: