MT2203
This is a set of 6024 Mersenne Twister pseudorandom number generators (
j
= 1, ..., 6024):






Matrix
A
j
(32x32) has the following format:
with the 32-bit vector ... .
a
j
= a
31,
j
a
0,
j
The set of 6024 basic pseudorandom number generators MT2203 is a natural addition to MT19937 generator. MT2203 generators are intended for use in large scale Monte Carlo simulations performed on multi-processor computer systems. These generators possess a smaller period length but the number of 2
2203
to the method described in [Matsum2000].Real Implementation (Single and Double Precision)
The output vector is the sequence of the floating-point values
u
0
, u
1
, ... .Integer Implementation
The output vector of 32-bit integers , , ... .
y
0,
j
y
1,
j
Stream Initialization by Function
vslNewStream
MT2203 generates the stream and initializes it specifying the input 32-bit unsigned integer parameter seed. The stream state, that is, the array of 69 32-bit integers
x
0
, ..., x
68
, is initialized by the procedure described in [MT2002] and based on the seed value.MT2203 generator is a set of 6024 basic generators. To select an MT2203 generator, add an offset to the named constant
VSL_BRNG_MT2203
, for example, VSL_BRNG_MT2203+0, VSL_BRNG_ MT2203+1, ...
. The following example illustrates the initialization of the 10th (of 6024) MT2203 generator:vslNewStream (&stream, VSL_BRNG_MT2203+9, seed);
Stream Initialization of Function
vslNewStreamEx
MT2203 generates the stream and initializes it specifying the array
params[]
of n
32-bit unsigned integers:- Ifn= 0, assume params[0] = 1,n= 1 and perform initialization as described in the previous item.
Subsequences Selection Methods
vslSkipAheadStream | Not supported |
vslSkipAheadStreamEx | Not supported |
vslLeapfrogStream | Not supported |
Generator Period

Empirical Testing Results Summary
Test Name | vsRngUniform | vdRngUniform | viRngUniform | viRngUniformBits |
---|---|---|---|---|
3D Spheres Test | OK (20% errors) | OK (20% errors) | Not applicable | OK (20% errors) |
Birthday Spacing Test | Not applicable | Not applicable | Not applicable | OK (0% errors) |
Bitstream Test | Not applicable | Not applicable | Not applicable | OK (15% errors) |
Rank of 31x31 Binary Matrices Test | Not applicable | Not applicable | Not applicable | OK (10% errors) |
Rank of 32x32 Binary Matrices Test | Not applicable | Not applicable | Not applicable | OK (0% errors) |
Rank of 6x8 Binary Matrices Test | Not applicable | Not applicable | Not applicable | OK (0% errors) |
Counts-the-1’s Test (stream of bits) | Not applicable | Not applicable | Not applicable | OK (0% errors) |
Counts-the-1’s Test (stream of specific bytes) | Not applicable | Not applicable | Not applicable | OK (0% errors) |
Craps Test | OK (20% errors) | OK (20% errors) | OK (20% errors) | OK (20% errors) |
Parking Lot Test | OK (0% errors) | OK (0% errors) | Not applicable | OK (0% errors) |
2D Self-Avoiding Random Walk Test | OK (10% errors) | OK (0% errors) | Not applicable | OK (0% errors) |
- The tabulated data is obtained using the one-level (threshold) testing technique. The OK result indicates FAIL < 50%. The run fails when p-value falls outside the interval [0.05, 0.95].
- The stream tested is generated by calling the functionvslNewStreamwith seed=7,777,777.