25#include <Random123/philox.h>
39 explicit PhiloxRng(std::uint32_t seed, std::uint32_t key_hi = 0xBEEFCAFE,
40 std::uint32_t ctr1 = 0)
41 : key_{{seed, key_hi}}, ctr_{{0, ctr1, 0, 0}} {}
45 buf_ = rng_(ctr_, key_);
50 return buf_[idx_++] * (1.0 / 4294967296.0);
56 r123::Philox4x32 rng_;
57 r123::Philox4x32::key_type key_;
58 r123::Philox4x32::ctr_type ctr_;
59 r123::Philox4x32::ctr_type buf_{};
Definition philox_rng.hpp:31
PhiloxRng(std::uint32_t seed, std::uint32_t key_hi=0xBEEFCAFE, std::uint32_t ctr1=0)
Definition philox_rng.hpp:39
double uniform(double lo, double hi)
Definition philox_rng.hpp:53
double uniform()
Definition philox_rng.hpp:43
Definition genie_config.hpp:22