Class epi_xoshiro256ss¶
Fast 64-bit PRNG based on the xoshiro256** algorithm. More...
#include <rng-utils.hpp>
Public Types¶
| Type | Name |
|---|---|
| typedef uint64_t | result_type |
Public Functions¶
| Type | Name |
|---|---|
| epi_xoshiro256ss (uint64_t seed_val=0) noexcept |
|
| result_type | operator() () noexcept |
| void | seed (uint64_t seed_val) noexcept |
Public Static Functions¶
| Type | Name |
|---|---|
| constexpr result_type | max () noexcept |
| constexpr result_type | min () noexcept |
Detailed Description¶
xoshiro256** has 256-bit state, 64-bit output, and passes all known statistical tests. It is significantly faster than std::mt19937. State is seeded via SplitMix64 from a single 64-bit value.
Reference: Blackman & Vigna, "Scrambled Linear Pseudorandom Number Generators", ACM TOMS, 2021. https://prng.di.unimi.it/
Public Types Documentation¶
typedef result_type¶
Public Functions Documentation¶
function epi_xoshiro256ss¶
function operator()¶
function seed¶
Public Static Functions Documentation¶
function max¶
function min¶
The documentation for this class was generated from the following file epiworld-src/include/epiworld/rng-utils.hpp