1#ifndef _GLUCAT_RANDOM_H
2#define _GLUCAT_RANDOM_H
41 template<
typename Scalar_T >
55 static const unsigned long seed = 19590921UL;
63 { this->uint_gen.seed(
seed); }
71 {
return Scalar_T(this->
normal_dist(this->uint_gen)); }
Random number generator with single instance per Scalar_T.
static auto generator() -> random_generator &
Single instance of Random number generator.
static const unsigned long seed
auto uniform() -> Scalar_T
std::normal_distribution< double > normal_dist
random_generator(const random_generator &)=delete
friend class friend_for_private_destructor
~random_generator()=default
auto normal() -> Scalar_T
auto operator=(const random_generator &) -> random_generator &=delete
std::uniform_real_distribution< double > uniform_dist