Random number generation with the Gnu Scientific Library, as per the reference manual section 17
rng_alloc(type)
rng_clone(r)
rng_name(r)
rng_max(r)
rng_min(r)
rng_set(r, seed)
rng_get(r, length)
rng_uniform(r, length)
rng_uniform_int(r, N, length)
rng_uniform_pos(r, length)
In function rng_alloc()
, type of random number generator.
This argument is taken to be a character string which is matched to
the names of the random number generators given in the GSL manual
section 17.9, with the initial “gsl_rng_
” removed
(for example, to use generator gsl_rng_ranlux
, set
type
to ranlux
). Partial matching is used; a null
string is interpreted as mt19937
.
Instance of a random number generator. Generate this using
function rng_alloc()
.
Random number seed
Length of vector of random numbers to create
In function rng_uniform_int()
, upper bound of
uniform distribution
Function rng_alloc()
returns an external pointer to a GSL random
number generator.
These are wrappers for the random number generator
functions from the GSL http://www.gnu.org/software/gsl with
arguments corresponding to those from the library.
Calling rng_free
is not necessary as R performs garbage
collection automatically.
The functions that return random numbers (rng_get
,
rng_uniform
, rng_uniform_int
, rng_uniform_pos
)
take an extra argument that specifies the length of the vector of
random numbers to be returned.
# NOT RUN {
r <- rng_alloc("cmrg")
rng_set(r, 100)
rng_uniform(r, 10)
# }
Run the code above in your browser using DataLab