17 #ifndef _biomcmc_random_number_gen_h_ 18 #define _biomcmc_random_number_gen_h_ 98 uint32_t rng_get_gamerand (uint32_t *game);
99 void rng_set_gamerand (uint32_t *game, uint32_t seed);
102 uint32_t rng_get_marsaglia (uint32_t *m);
103 void rng_set_marsaglia (uint32_t *m, uint32_t seed);
107 uint64_t rng_get_std61 (uint64_t *x);
112 uint32_t rng_get_std31 (uint32_t *x);
115 uint32_t rng_get_shr (uint32_t *x);
118 uint32_t rng_get_brent (uint32_t *x);
119 uint64_t rng_get_brent_64bits (uint64_t *x);
122 uint32_t rng_get_cong (uint32_t *x);
123 uint32_t rng_get_cong_many (uint32_t *x);
126 uint32_t rng_twist_array_32bits (uint32_t *a, uint32_t n_a, uint32_t seed);
127 uint64_t rng_twist_array_64bits (uint64_t *a, uint32_t n_a, uint64_t seed);
130 uint32_t rng_randomize_array_32bits (uint32_t *a, uint32_t n_a, uint32_t seed,
bool first_time);
131 uint64_t rng_randomize_array_64bits (uint64_t *a, uint32_t n_a, uint64_t seed,
bool first_time);
MT19937-64, the Mersenne Twister for 64 bits.
Definition: random_number_gen.h:31
Persi Diaconis' lagged Fibonacci.
Definition: random_number_gen.h:40
Definition: random_number_gen.h:52
Marsaglia's Subtract-with-borrow generator.
Definition: random_number_gen.h:49
GFSR4 implementation from GSL.
Definition: random_number_gen.h:37
Definition: random_number_gen.h:28
Marsaglia's LFIB4 lagged Fibonacci using addition.
Definition: random_number_gen.h:46
MT19937, the original Mersenne Twister (for 32 bits); the name "ar" comes from "array".
Definition: random_number_gen.h:34
Definition: random_number_gen.h:24
double hashing open-address hash table using strings as key – also has distance matrix, that can be used in alignments and trees
tt800 (small cousin of MT19937, the Mersenne Twister)
Definition: random_number_gen.h:43