RDieHarder (version 0.2.0)

dieharder: Random numebr generator test suite

Description

The random package provides an interface to the dieharder suite of random number generators.

Usage

# S3 method for default
dieharder(rng="mt19937", test="diehard_runs", psamples=100,
                               seed=0, verbose=FALSE, inputfile="", ntuple=5) 
   # S3 method for dieharder
print(x, ...)
   # S3 method for dieharder
summary(object, ...)
   # S3 method for dieharder
plot(x, ...)
   dieharderGenerators()
   dieharderTests()

Arguments

rng

Either a single character vector, or an integer index, selecting a random-number generator to be tested.

test

Either a single character vector, or an integer index, selecting a dieharder test to be used.

psamples

An integer for the number of probability values samples underlying the main Kolomogorov-Smirnov test.

seed

An integer seed that is to be used for the dieharder rng; if 0, a new random seed is generated.

verbose

A switch selecting verbose or silent operation.

inputfile

File to read rng draws from for the file_input and file_input_raw generators.

ntuple

A integer selecting the ntuple length for tests on short bit strings that permit varying length such as RGB bitdist.

x

A dieharder object.

object

A dieharder object.

...

Other arguments passed on.

Value

An object of class dieharder, which inherits from the class htest commonly used for test statistics is returned. It contains the members

p.value

for the (Kuiper variant) of the Kolmogorov-Smirnov test of the null of a uniform distribution of test values generated by psamples tests of test using draws from rng

data

the vector of test statistics used for the Kolmogorov-Smirnov test

method

the test method as returned by the dieharder library

data.name

a character vector describing the data

generator

a text desciption of the generator as returned by the dieharder library

Details

The current list of generators can be generated dynamically using the dieharderGenerators() function. Entries with id below 200 are from the GNU Scientific Library, entries with id greater or equal to 200 and less than 400 are from Dieharder itself, entries with id greater or equal to 400 and less than 500 are from GNU R, entries with id greater or equal to 500 and less than 600 are hardware-based (which is system-dependent), and entries with id greater or equal to 600 are user-contributed.

The current list of tests can be generated dynamicall using the dieharderTests() function.

References

The dieharder source code and website at http://www.phy.duke.edu/~rgb/General/dieharder.php.

Examples

Run this code
# NOT RUN {
  ## need to set this for the example to pass the R CMD check test
  .dieharder.generators <<- dieharderGenerators()
  dh <- dieharder(41, 15, seed=12345) # randu and diehard_runs
  dh
  summary(dh)
  plot(dh)
# }

Run the code above in your browser using DataLab