25 #include <queso/RngBoost.h>
27 #include <boost/random.hpp>
28 #include <boost/math/distributions.hpp>
65 static boost::uniform_01<boost::mt19937> zeroone(
m_rng);
74 static boost::uniform_01<boost::mt19937> zeroone(
m_rng);
75 boost::math::normal_distribution<double> gaussian_dist(mean, stdDev);
76 return quantile(gaussian_dist, zeroone());
83 static boost::uniform_01<boost::mt19937> zeroone(
m_rng);
84 boost::math::beta_distribution<double> beta_dist(alpha, beta);
85 return quantile(beta_dist, zeroone());
92 static boost::uniform_01<boost::mt19937> zeroone(
m_rng);
93 boost::math::gamma_distribution<double> gamma_dist(a,b);
94 return quantile(gamma_dist, zeroone());
double gammaSample(double a, double b) const
Samples a value from a Gamma distribution. Support: [0,infinity).
double betaSample(double alpha, double beta) const
Samples a value from a Beta distribution. Support: [0,1].
double uniformSample() const
Samples a value from a uniform distribution. Support: [0,1] or [a,b].
void resetSeed(int newSeed)
Resets the seed with value newSeed.
Class for random number generation (base class for either GSL or Boost RNG).
double gaussianSample(double stdDev) const
RngBoost()
Default Constructor: it should not be used.
boost::mt19937 m_rng
Random number generator from class boost::mt19937.