23 std::random_device rd;
24 std::mt19937 gen(rd());
25 std::exponential_distribution<double> expDist(
m_lambda);
26 double value = expDist(gen);
28 std::bernoulli_distribution bernoulliDist(0.5);
29 bool sign = bernoulliDist(gen);
40 std::random_device rd;
41 std::mt19937 gen(rd());
44 return normalDist(gen);
50 std::random_device rd;
51 std::mt19937 gen(rd());
52 std::uniform_real_distribution<double> uniformDist(
m_a,
m_b);
54 return uniformDist(gen);
59 std::random_device rd;
60 std::mt19937 gen(rd());
63 std::uniform_real_distribution<> uniformDist(0.0, 1.0);
64 double cdf_value = uniformDist(gen);
75 std::random_device rd;
76 std::mt19937 gen(rd());
79 std::uniform_real_distribution<> uniformDist(0.0, 1.0);
80 double cdf_value = uniformDist(gen);
83 double func = 0.0, funcDeriv = 0.0, x = 0.0;
91 bool convergedSoln =
false;
92 while (!convergedSoln) {
96 x = x - func / funcDeriv;
98 if (std::abs(func / funcDeriv) < 0.001)
Defines interface class IFTDistribution1D, and children thereof.
double randomSample() const final
double randomSample() const final
double randomSample() const final
double randomSample() const final
double randomSample() const final
virtual ~IDistribution1DSampler()