1This is an implementation of the Mersenne Twist pseudorandom number
2generator, including both C and C++ interfaces and a set of functions
3for generating random variates from common distributions.
4
5The full documentation for the package is in the manual pages,
6mtwist.3 and randistrs.3.
7
8For more information, see the Web page for the package, at:
9
10	http://www.cs.hmc.edu/~geoff/mtwist.html
11
12BRIEF SUMMARY OF FUNCTIONS:
13
14All functions come in two forms: mt_xxx and mts_xxx.  The difference
15is that the mts_xxx functions accept an additional parameter, "state",
16which encapsulates the entire PRNG state.  This allows multiple
17independent PRNG streams to be used.  The mt_xxx versions use a single
18shared state provided by the implementation.  Only the most commonly
19used mt_xxx versions are mentioned here; see mtwist(3) for more
20information.  There is also a C++ interface; again, see the manual
21page for information.
22
23void mt_seed32new(uint32_t seed)
24    Seeds the generator from a 32-bit constant
25
26uint32_t mt_seed(void)
27    Automatically seeds from /dev/urandom or system time
28
29uint32_t mt_goodseed(void)
30    Automatically seeds from /dev/random or system time (can be slow)
31
32void mt_bestseed(void)
33    Automatically seeds from /dev/random with high entropy (very slow)
34
35uint32_t mt_lrand(void)
36    Return a 32-bit pseudorandom value
37
38uint64_t mt_llrand(void)
39    Return a 64-bit pseudorandom value
40
41double mt_drand(void)
42    Return a pseudorandom double in [0,1) with 32 bits of randomness
43
44double mt_ldrand(void)
45    Return a pseudorandom double in [0,1) with 64 bits of randomness
46