Quasi-random sequences as per the Gnu Scientific Library, reference manual section 18. These functions are declared in header file gsl_qrng.h
qrng_alloc(type = c("niederreiter_2","sobol"), dim)qrng_clone(q)qrng_init(q)qrng_name(q)qrng_size(q)qrng_get(q, n =1)
Arguments
type: Type of sequence
dim: Dimension of sequence
q: Generator from qrng_alloc or qrng_clone
n: How many vectors to generate
Details
These are wrappers for the quasi-random sequence functions from the GSL https://www.gnu.org/software/gsl/ with arguments corresponding to those from the library, with a few exceptions. In particular: I have used dim where the GSL uses just d; I have added the n argument to the qrng_get function, so that a single call can generate n vectors; I have not provided
functions corresponding to qrng_free (because will automatically free the generator when it is garbage collected) or qrng_state or qrng_memcpy (because these don't make sense within .)
Returns
qrng_alloc, qrng_clone and qrng_init return an external pointer to the C structure representing the generator. The internals of this structure are not accessible from within .
qrng_name returns a character vector giving the name of the generator.
qrng_size returns an integer value giving the internal memory usage of the generator.
qrng_get returns a matrix with n rows and dim columns. Each row is a vector in the quasi-random sequence.