This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* Random-Number Utilities (randutil) | |
* Addresses common issues with C++11 random number generation. | |
* Makes good seeding easier, and makes using RNGs easy while retaining | |
* all the power. | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2015-2022 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef CHACHA_HPP_INCLUDED | |
#define CHACHA_HPP_INCLUDED 1 | |
/* | |
* A C++ version of ChaCha PRNG (*modified* from Orson Peters original code) | |
* | |
* Changes Copyright (c) 2017-18 Melissa E. O'Neill, licence as below. | |
* | |
* Changes compared to original 2015 version: | |
* - Some formatting fixes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef SFC_HPP_INCLUDED | |
#define SFC_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of Chris Doty-Humphrey's SFC PRNG(s) | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2018 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef SPLITMIX_HPP_INCLUDED | |
#define SPLITMIX_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of SplitMix | |
* Original design by Guy L. Steele, Jr., Doug Lea and Christine H. Flood | |
* Described in _Fast splittable pseudorandom number generators_ | |
* http://dx.doi.org/10.1145/2714064.2660195 and implemented in | |
* Java 8 as SplittableRandom | |
* Based on code from the original paper, with revisions based on changes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef XORSHIFT_HPP_INCLUDED | |
#define XORSHIFT_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of a family of truncated XorShift* generators. | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2017-19 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef JSF_HPP_INCLUDED | |
#define JSF_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of a Bob Jenkins Small Fast (Noncryptographic) PRNGs | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2018 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef LEHMER_HPP_INCLUDED | |
#define LEHMER_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of fast, 128-bit, Lehmer-style PRNGs | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2018 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef GJRAND_HPP_INCLUDED | |
#define GJRAND_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of David Blackman's GJrand PRNG(s) | |
* | |
* The MIT License (MIT) | |
* | |
* Copyright (c) 2018 Melissa E. O'Neill | |
* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef XOSHIRO_HPP_INCLUDED | |
#define XOSHIRO_HPP_INCLUDED 1 | |
/* | |
* A C++ implementation of a family of Xoshiro generators. | |
* | |
* See: | |
* https://arxiv.org/abs/1805.01407 | |
* http://xoshiro.di.unimi.it/xoshiro256plus.c | |
* http://xoshiro.di.unimi.it/xoshiro256starstar.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* Show self-similarity issues with Vigna's xoshiro256** | |
* | |
* Originally posted in a NumPy developers discussion by Tyge Løvset | |
* but simplified to only mix 32 outputs. | |
* | |
* Compile, and then test with PractRand by running | |
* | |
* ./xoshiro256-similarity \ | |
* | ./RNG_test stdin64 -te 1 -tlmin 15 -tlmax 50 -tlmaxonly -multithreaded |
NewerOlder