Man Page shufrans.3m
NAME
shufrans - random number shufflers
SYNOPSIS
cc [ flag ... ] file ... -lsunmath -lm [ library ... ]
#include <sunmath.h>
void i_shufrans_(int *x, int *n, int *l, int *u);
void u_shufrans_(unsigned *x, int *n, unsigned *l, unsigned
*u);
void r_shufrans_(float *x, int *n, float *l, float *u);
void d_shufrans_(double *x, int *n, double *l, double *u);
DESCRIPTION
These functions shuffle random numbers, uniform on [*l,*u],
generated by any method. The shuffling method is that
called "Algorithm B" by Knuth. An internal table of between
4 and 256 elements is allocated for the shuffling depending
on *n.
EXAMPLES
to shuffle 1000 double-precision random variates in [lb,ub]
double x[1000] ; int n = 1000 ; double lb, ub;
d_shufrans_(x, &n, &lb, &ub) ;
SEE ALSO
addrans(3M), drand48(3), lcrans(3M), mwcrans(3M), rand(3C),
rand(3V), random(3).
Knuth, Seminumerical Algorithms, 1981, Addison-Wesley.
Park and Miller, Random Number Generators: Good Ones are
Hard to Find, Communications of the ACM, October 1988.
NOTES
For efficiency, the lcrans(3M) functions, probably with
shufrans(3M), are recommended for normal use over those in
addrans(3M), drand48(3C), rand(3C) and random(3B).