template<typename Distribution>
liarsdice::statistics::DistributionWrapper class

Template wrapper for boost::math distributions.

Base classes

class IProbabilityDistribution
Base interface for probability distributions.

Public types

using distribution_type = Distribution

Constructors, destructors, conversion operators

template<typename... Args>
DistributionWrapper(Args && ... args) explicit

Public functions

auto pdf(double x) const -> double override
Probability density function.
auto cdf(double x) const -> double override
Cumulative distribution function.
auto quantile(double p) const -> double override
Quantile function (inverse CDF)
auto mean() const -> double override
Mean of the distribution.
auto variance() const -> double override
Variance of the distribution.

Protected variables

Distribution dist_

Function documentation

template<typename Distribution>
double liarsdice::statistics::DistributionWrapper<Distribution>::pdf(double x) const override

Probability density function.

Parameters
x Point to evaluate
Returns PDF value at x

template<typename Distribution>
double liarsdice::statistics::DistributionWrapper<Distribution>::cdf(double x) const override

Cumulative distribution function.

Parameters
x Point to evaluate
Returns CDF value at x

template<typename Distribution>
double liarsdice::statistics::DistributionWrapper<Distribution>::quantile(double p) const override

Quantile function (inverse CDF)

Parameters
p Probability (0 < p < 1)
Returns Quantile value

template<typename Distribution>
double liarsdice::statistics::DistributionWrapper<Distribution>::mean() const override

Mean of the distribution.

Returns Mean value

template<typename Distribution>
double liarsdice::statistics::DistributionWrapper<Distribution>::variance() const override

Variance of the distribution.

Returns Variance