Name
HPL_rand random number generator.
Synopsis
#include "hpl.h"
double
HPL_rand();
Description
HPL_rand
generates the next number in the random sequence. This
function ensures that this number lies in the interval (-0.5, 0.5].
The static array irand contains the information (2 integers) required
to generate the next number in the sequence X(n). This number is
computed as X(n) = (2^32 * irand[1] + irand[0]) / d - 0.5, where the
constant d is the largest 64 bit positive integer. The array irand is
then updated for the generation of the next number X(n+1) in the
random sequence as follows X(n+1) = a * X(n) + c. The constants a and
c should have been preliminarily stored in the arrays ias and ics as
2 pairs of integers. The initialization of ias, ics and irand is
performed by the function HPL_setran.
See Also
HPL_ladd,
HPL_lmul,
HPL_setran,
HPL_xjumpm,
HPL_jumpit.