diff --git a/gtsam/discrete/DiscreteConditional.cpp b/gtsam/discrete/DiscreteConditional.cpp index cf2997ce0..2ab3054a8 100644 --- a/gtsam/discrete/DiscreteConditional.cpp +++ b/gtsam/discrete/DiscreteConditional.cpp @@ -23,13 +23,11 @@ #include #include -#include -#include -#include -#include #include +#include #include +#include using namespace std; @@ -176,8 +174,7 @@ size_t DiscreteConditional::solve(const Values& parentsValues) const { /* ******************************************************************************** */ size_t DiscreteConditional::sample(const Values& parentsValues) const { - using boost::uniform_real; - static boost::mt19937 gen(2); // random number generator + static mt19937 rng(2); // random number generator bool debug = ISDEBUG("DiscreteConditional::sample"); @@ -209,9 +206,8 @@ size_t DiscreteConditional::sample(const Values& parentsValues) const { } // inspired by http://www.boost.org/doc/libs/1_46_1/doc/html/boost_random/tutorial.html - uniform_real<> dist(0, cdf.back()); - boost::variate_generator > die(gen, dist); - size_t sampled = lower_bound(cdf.begin(), cdf.end(), die()) - cdf.begin(); + uniform_real_distribution dist(0, cdf.back()); + size_t sampled = lower_bound(cdf.begin(), cdf.end(), dist(rng)) - cdf.begin(); if (debug) cout << "-> " << sampled << endl; diff --git a/gtsam/linear/NoiseModel.cpp b/gtsam/linear/NoiseModel.cpp index 4e599d45f..a6ebea394 100644 --- a/gtsam/linear/NoiseModel.cpp +++ b/gtsam/linear/NoiseModel.cpp @@ -21,15 +21,13 @@ #include #include -#include -#include -#include -#include -#include -#include -#include #include +#include +#include +#include +#include +#include using namespace std; diff --git a/gtsam/linear/Sampler.cpp b/gtsam/linear/Sampler.cpp index bfbc222ba..9f1527bf9 100644 --- a/gtsam/linear/Sampler.cpp +++ b/gtsam/linear/Sampler.cpp @@ -46,10 +46,9 @@ Vector Sampler::sampleDiagonal(const Vector& sigmas) { if (sigma == 0.0) { result(i) = 0.0; } else { - typedef boost::normal_distribution Normal; + typedef std::normal_distribution Normal; Normal dist(0.0, sigma); - boost::variate_generator norm(generator_, dist); - result(i) = norm(); + result(i) = dist(generator_); } } return result; diff --git a/gtsam/linear/Sampler.h b/gtsam/linear/Sampler.h index 6c84bfda2..93145c31a 100644 --- a/gtsam/linear/Sampler.h +++ b/gtsam/linear/Sampler.h @@ -20,7 +20,7 @@ #include -#include +#include namespace gtsam { @@ -37,7 +37,7 @@ protected: noiseModel::Diagonal::shared_ptr model_; /** generator */ - boost::mt19937_64 generator_; + std::mt19937_64 generator_; public: typedef boost::shared_ptr shared_ptr;