src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp in passenger-6.0.8 vs src/cxx_supportlib/vendor-modified/boost/random/sobol.hpp in passenger-6.0.9
- old
+ new
@@ -9,10 +9,11 @@
#ifndef BOOST_RANDOM_SOBOL_HPP
#define BOOST_RANDOM_SOBOL_HPP
#include <boost/random/detail/sobol_table.hpp>
#include <boost/random/detail/gray_coded_qrng.hpp>
+#include <boost/assert.hpp>
namespace boost {
namespace random {
/** @cond */
@@ -56,13 +57,13 @@
// Initialize in remaining dimensions.
for (std::size_t dim = 1; dim < dimension; ++dim)
{
const typename SobolTables::value_type poly = SobolTables::polynomial(dim-1);
- if (poly > std::numeric_limits<value_type>::max()) {
+ if (poly > (std::numeric_limits<value_type>::max)()) {
boost::throw_exception( std::range_error("sobol: polynomial value outside the given value type range") );
}
- const unsigned degree = multiprecision::msb(poly); // integer log2(poly)
+ const unsigned degree = qrng_detail::msb(poly); // integer log2(poly)
// set initial values of m from table
for (unsigned k = 0; k != degree; ++k)
cj[dimension*k + dim] = SobolTables::minit(dim-1, k);