Package rngstream is an object-oriented random-number package with many long streams and substreams, based on the MRG32k3a RNG from reference [1] below and proposed in [2].
It has implementations in
C,
C++,
Go,
Java,
R,
OpenCL, and some other
languages. The main description and documentation is in the
c++ package,
in the paper
streams4.pdf.
The implementations for
c and
java
give a short description of the interfaces in C and Java, respectively.
The package is copyrighted by Pierre L'Ecuyer and the University of Montreal. It can be used freely for any purpose.
e-mail: [email protected] http://www.iro.umontreal.ca/~lecuyer/
If you use it for your research, please cite the following relevant publications in which MRG32k3a and the package with multiple streams were proposed:
1 P. L'Ecuyer, ``Good Parameter Sets for Combined Multiple Recursive Random Number Generators'', Operations Research, 47, 1 (1999), 159--164.
2 P. L'Ecuyer, R. Simard, E. J. Chen, and W. D. Kelton, ``An Objected-Oriented Random-Number Package with Many Long Streams and Substreams'', Operations Research, 50, 6 (2002), 1073--1075
Thank you.
(The above text modified from http://www.iro.umontreal.ca/~lecuyer/myftp/streams00/readme.txt).
This Go translation is copyright 2023 The Board of Trustees of the University of Illinois. See LICENSE.md for details.