HPL_xjumpm(3)

πŸ“¦ version 2.2, in fedora 43, fedora 44

🌸 NAME 🌸

Okay so bestie, meet HPL_xjumpm from the HPL Library Functions crew β€” she computes constants to jump in the random sequence. This is HPL_xjumpm(3), and she's lowkey iconic. πŸ’…βœ¨

✨ 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. No cap, that's the whole vibe. πŸ’–

πŸ’… 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, and 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.2 🌸 February 24, 2016 πŸ’– HPL_xjumpm(3) β€” that's the version, date, and manual name, bestie. Byeee, stay random! 🫢✨

πŸ“¦ where this page comes from