This class implements the RandomStream interface via inheritance
from RandomStreamBase. The backbone generator is a Well
Equidistributed Long period Linear Random Number Generator (WELL),
proposed by F. Panneton.
The implemented generator is the WELL607, which has a state
size of 607 bits
and a period length of approximatively
2607. The values of V, W and Z are 2150,
2250 and 2400 respectively (see RandomStream for their
definition). The seed of the RNG, and the state of a stream at any given
step, is a 19-dimensional vector of 32-bit integers.
The output of nextValue has 32 bits of precision.

WELL607

WELL607

Constructs a new stream with the identifier name
(used in the toString method).

Parameters:

name - name of the stream

Method Detail

setPackageSeed

public static void setPackageSeed(int[] seed)

Sets the initial seed of the class WELL607 to the 19
integers of the vector seed[0..18].
This will be the initial seed of the next created stream.
At least one of the integers must not be zero and if this integer is
the last one, it must not be equal to 0x80000000.

Parameters:

seed - array of 19 elements representing the seed

setSeed

public void setSeed(int[] seed)

This method is discouraged for normal use.
Initializes the stream at the beginning of a stream with the initial
seed seed[0..18]. The seed must satisfy the same
conditions as in setPackageSeed.
This method only affects the specified stream; the others are not
modified. Hence after calling this method, the beginning of the streams
will no longer be spaced Z values apart.
For this reason, this method should only be used in very exceptional cases;
proper use of the reset... methods and of the stream constructor is
preferable.

Parameters:

seed - array of 19 elements representing the seed

getState

public int[] getState()

Returns the current state of the stream, represented as an
array of 19 integers.