% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/rngtools-package.r
\docType{package}
\name{rngtools}
\alias{rngtools}
\alias{rngtools-package}
\title{Utility functions for working with Random Number Generators}
\description{
This package contains a set of functions for working with
Random Number Generators (RNGs). In particular, it defines a generic
S4 framework for getting/setting the current RNG, or RNG data
that are embedded into objects for reproducibility.
}
\details{
Notably, convenient default methods greatly facilitate the way current
RNG settings can be changed.
}
\examples{

showRNG()
s <- getRNG()
RNGstr(s)
RNGtype(s)

# get what would be the RNG seed after set.seed
s <- nextRNG(1234)
showRNG(s)
showRNG( nextRNG(1234, ndraw=10) )

# change of RNG kind
showRNG()
k <- RNGkind()
k[2L] <- 'Ahrens'
try( RNGkind(k) )
setRNG(k)
showRNG()
# set encoded kind 
setRNG(501L)
showRNG()

# use as set seed
setRNG(1234)
showRNG()
r <- getRNG()

# extract embedded RNG specifications
runif(10)
setRNG(list(1, rng=1234))
rng.equal(r)

# restore default RNG (e.g., after errors)
RNGrecovery()
showRNG()

}
