DragonFly On-Line Manual Pages
HPL_xjumpm(3) HPL Library Functions HPL_xjumpm(3)
NAME
HPL_xjumpm - Compute constants to jump in the random sequence.
SYNOPSIS
#include "hpl.h"
void HPL_xjumpm( const int JUMPM, int * MULT, int * IADD, int * IRANN,
int * IRANM, int * IAM, int * ICM );
DESCRIPTION
HPL_xjumpm computes the constants A and C to jump JUMPM numbers in
the random sequence: X(n+JUMPM) = A*X(n)+C. The constants encoded in
MULT and IADD specify how to jump from one entry in the sequence to
the next.
ARGUMENTS
JUMPM (local input) const int
On entry, JUMPM specifies the number of entries in the
sequence to jump over. When JUMPM is less or equal than zero, A
and C are not computed, IRANM is set to IRANN corresponding to
a jump of size zero.
MULT (local input) int *
On entry, MULT is an array of dimension 2, that contains the
16-lower and 15-higher bits of the constant a to jump from
X(n) to X(n+1) = a*X(n) + c in the random sequence.
IADD (local input) int *
On entry, IADD is an array of dimension 2, that contains the
16-lower and 15-higher bits of the constant c to jump from
X(n) to X(n+1) = a*X(n) + c in the random sequence.
IRANN (local input) int *
On entry, IRANN is an array of dimension 2. that contains the
16-lower and 15-higher bits of the encoding of X(n).
IRANM (local output) int *
On entry, IRANM is an array of dimension 2. On exit, this
array contains respectively the 16-lower and 15-higher bits
of the encoding of X(n+JUMPM).
IAM (local output) int *
On entry, IAM is an array of dimension 2. On exit, when JUMPM
is greater than zero, this array contains the encoded
constant A to jump from X(n) to X(n+JUMPM) in the random
sequence. IAM(0:1) contains respectively the 16-lower and
15-higher bits of this constant A. When JUMPM is less or
equal than zero, this array is not referenced.
ICM (local output) int *
On entry, ICM is an array of dimension 2. On exit, when JUMPM
is greater than zero, this array contains the encoded
constant C to jump from X(n) to X(n+JUMPM) in the random
sequence. ICM(0:1) contains respectively the 16-lower and
15-higher bits of this constant C. When JUMPM is less or
equal than zero, this array is not referenced.
SEE ALSO
HPL_ladd (3), HPL_lmul (3), HPL_setran (3), HPL_jumpit (3),
HPL_rand (3).
HPL 2.1 October 26, 2012 HPL_xjumpm(3)