Class prob_dens_hist (o2scl)

O2scl : Class List

class prob_dens_hist : public o2scl::prob_dens_frange

Probability density function based on a histogram.

Note

This class is experimental.

Public Types

typedef boost::numeric::ublas::vector<double> ubvector

Public Functions

prob_dens_hist()
virtual ~prob_dens_hist()
void init(hist &h)

Initialize with histogram h.

inline const ubvector &partial_sums()

Get reference to partial sums.

inline const ubvector &bin_ranges()

Get reference to bin ranges.

virtual double operator()() const

Generate a sample.

virtual double lower_limit() const

Lower limit of the range.

virtual double upper_limit() const

Uower limit of the range.

virtual double pdf(double x) const

The normalized density.

virtual double log_pdf(double x) const

The log of the normalized density.

virtual double cdf(double x) const

Cumulative distribution function (from the lower tail)

virtual double invert_cdf(double x) const

Inverse cumulative distribution function (from the lower tail)

inline virtual double entropy() const

Entropy of the distribution ( \( - \int f \ln f \) )

Protected Attributes

search_vec<ubvector> sv

Search through the partial sums.

size_t n

Number of original histogram bins.

ubvector sum

Normalized partial sum of histogram bins.

This vector has size n plus one.

ubvector range

Vector specifying original histogram bins.

This vector has size n plus one.

rng rg

Random number generator.