Random Number Engines with Predefined Parameters

/* A random number engine with predefined parameters which implements a version of the Minimal Standard random number generation algorithm. */typedef see below minstd_rand0;
/* A random number engine with predefined parameters which implements a version of the Minimal Standard random number generation algorithm. */typedef see below minstd_rand;
/* A random number engine with predefined parameters which implements the base engine of the ranlux24 random number engine. */typedef see below ranlux24_base;
/* A random number engine with predefined parameters which implements the base engine of the ranlux48 random number engine. */typedef see below ranlux48_base;
/* A random number engine with predefined parameters which implements the RANLUX level-3 random number generation algorithm. */typedef see below ranlux24;
/* A random number engine with predefined parameters which implements the RANLUX level-4 random number generation algorithm. */typedef see below ranlux48;
/* A random number engine with predefined parameters which implements L'Ecuyer's 1996 three-component Tausworthe random number generator. */typedef see below taus88;
/* An implementation-defined "default" random number engine. */typedef see below default_random_engine;

Types

Typedef minstd_rand0

typedef linear_congruential_engine< thrust::detail::uint32_t, 16807, 0, 2147483647 >minstd_rand0; A random number engine with predefined parameters which implements a version of the Minimal Standard random number generation algorithm.

Note: The 10000th consecutive invocation of a default-constructed object of type minstd_rand0 shall produce the value 1043618065 .

Typedef minstd_rand

typedef linear_congruential_engine< thrust::detail::uint32_t, 48271, 0, 2147483647 >minstd_rand; A random number engine with predefined parameters which implements a version of the Minimal Standard random number generation algorithm.

Note: The 10000th consecutive invocation of a default-constructed object of type minstd_rand shall produce the value 399268537 .

Typedef ranlux24_base

typedef subtract_with_carry_engine< thrust::detail::uint32_t, 24, 10, 24 >ranlux24_base; A random number engine with predefined parameters which implements the base engine of the ranlux24 random number engine.

Note: The 10000th consecutive invocation of a default-constructed object of type ranlux24_base shall produce the value 7937952 .

Typedef ranlux48_base

typedef subtract_with_carry_engine< thrust::detail::uint64_t, 48, 5, 12 >ranlux48_base; A random number engine with predefined parameters which implements the base engine of the ranlux48 random number engine.

Note: The 10000th consecutive invocation of a default-constructed object of type ranlux48_base shall produce the value 192113843633948 .

Typedef ranlux24

typedef discard_block_engine< ranlux24_base, 223, 23 >ranlux24; A random number engine with predefined parameters which implements the RANLUX level-3 random number generation algorithm.

Note: The 10000th consecutive invocation of a default-constructed object of type ranlux24 shall produce the value 9901578 .

Typedef ranlux48

typedef discard_block_engine< ranlux48_base, 389, 11 >ranlux48; A random number engine with predefined parameters which implements the RANLUX level-4 random number generation algorithm.

Note: The 10000th consecutive invocation of a default-constructed object of type ranlux48 shall produce the value 88229545517833 .

Typedef taus88

typedef xor_combine_engine< linear_feedback_shift_engine< thrust::detail::uint32_t, 32u, 31u, 13u, 12u >, 0, xor_combine_engine< linear_feedback_shift_engine< thrust::detail::uint32_t, 32u, 29u, 2u, 4u >, 0, linear_feedback_shift_engine< thrust::detail::uint32_t, 32u, 28u, 3u, 17u >, 0 >, 0 >taus88; A random number engine with predefined parameters which implements L’Ecuyer’s 1996 three-component Tausworthe random number generator.

Note: The 10000th consecutive invocation of a default-constructed object of type taus88 shall produce the value 3535848941 .

Typedef default_random_engine

typedef minstd_randdefault_random_engine; An implementation-defined “default” random number engine.

Note: default_random_engine is currently an alias for minstd_rand, and may change in a future version.