distributedRandom
A UserFunc that takes no arguments, and returns a random number with a user-given distribution.
seed (non-negative integer, optional)
A seed for Vorpal’s default random number generator (used
only if <NAFunc numberSequence>
is not given). If seed
is not given, a seed will be chosen using the current time.
probDist (code block, required)
<OAFunc probDist>
is an OAFunc (function of one argument,
returning a scalar) specifying a probability distribution,
including the domain (which describes the range of possible
values resulting from this random number generator). An
OAFunc of kind = expression
is the usual choice here.
maxRelErr (float, optional, default = 1e-2)
The probability distribution will be approximated with a
relative error below this level, subject to maxNumPoints
.
maxNumPoints (positive integer, optional, default = 40961)
The maximum number of points at which to sample the probability
distribution. The number of sample points will be increased, trying
to attain maxRelErr
, up to maxNumPoints
.
doComparison (bool, optional, default = false)
For diagnostic purposes only, compare the approximation of the <OAFunc probDist>, printing out (to stdout) how close the approximation is.
printSampleValues (non-negative integer, optional, default = 0)
For diagnostic purposes only, the number of sample random numbers to be printed (to stdout) so the user can see if they are distributed as desired.
numberSequence (code block, optional)
<NAFunc numberSequence>
is an NAFunc code block that
generates a random number; if not specified, Vorpal’s default
random number generator (uniform in [0,1)) will be used to
generate the initial random number.
Random numbers will be generated with the desired
distribution only if numberSequence
generates a number
uniformly in [0,1).
Using this code block makes the seed
option irrelevant.