Class rng_gsl (o2scl)¶
-
class
o2scl
::
rng_gsl
: public gsl_rng¶ Random number generator (GSL)
This object is built on the
gsl_rng
struct and modeled to look like astd::random_device
object.If
seed
is zero, or is not given, then the default seed specific to the particular random number generator is used.- Idea for Future:
This will likely be completely replaced by the random number generators in the standard library.
Public Types
-
typedef unsigned long int
result_type
¶
Public Functions
-
rng_gsl
(const gsl_rng_type *gtype = gsl_rng_mt19937)¶ Initialize the random number generator with type
gtype
and the default seed.
-
rng_gsl
(unsigned long int seed, const gsl_rng_type *gtype = gsl_rng_mt19937)¶ Initialize the random number generator with
seed
.
-
~rng_gsl
()¶
-
const gsl_rng_type *
get_type
()¶ Return generator type.
-
result_type
operator()
()¶ Return a random number in \((0,1]\).
-
double
random
()¶ Return a random number in \((0,1]\).
-
double
entropy
()¶ Return the entropy (0.0 since not applicable for pseudo-random engines.
-
unsigned long int
max
()¶ Return the maximum integer for random_int()
-
unsigned long int
min
()¶ Return the minimum integer for random_int()
-
unsigned long int
random_int
(unsigned long int max = 0)¶ Return random integer in \([0,\mathrm{max}-1]\).
-
void
set_seed
(unsigned long int s)¶ Set the seed.
-
unsigned long int
get_seed
()¶ Get the seed.
-
void
clock_seed
()¶ Set the seed.