Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

ordertest

the Order test


Description

The Order test for testing random number generators.

Usage

order.test(u, d = 3, echo = TRUE)

Arguments

u

sample of random numbers in ]0,1[.

echo

logical to plot detailed results, default TRUE

d

a numeric for the dimension, see details. When necessary we assume that d is a multiple of the length of u.

Details

We consider a vector u, realisation of i.i.d. uniform random variables U1... Un.

The Order test works on a sequence of d-uplets (x,y,z when d=3) of uniform i.i.d. random variables. The triplet is build from the vector u. The number of permutation among the components of a triplet is 3!=6, i.e. x<y<z, x<z<y, y<x<z, y<z<x, z<x<y and z<y<x. The Marsaglia test computes the empirical of the different permutations as well as the theoretical one n/6 where n is the number of triplets. Finally the chi-squared statistic is

S = ∑_{j=1}^6 [n_j - n/6 ]^2/[n/6].

Value

a list with the following components :

statistic the value of the chi-squared statistic.

p.value the p-value of the test.

observed the observed counts.

expected the expected counts under the null hypothesis.

residuals the Pearson residuals, (observed - expected) / sqrt(expected).

Author(s)

Christophe Dutang.

References

Planchet F., Jacquemin J. (2003), L'utilisation de methodes de simulation en assurance. Bulletin Francais d'Actuariat, vol. 6, 11, 3-69. (available online)

L'Ecuyer P. (2001), Software for uniform random number generation distinguishing the good and the bad. Proceedings of the 2001 Winter Simulation Conference. (available online)

L'Ecuyer P. (2007), Test U01: a C library for empirical testing of random number generators. ACM Trans. on Mathematical Software 33(4), 22.

See Also

other tests of this package freq.test, serial.test, poker.test, gap.test and coll.test

ks.test for the Kolmogorov Smirnov test and acf for the autocorrelation function.

Examples

# (1) mersenne twister vs torus
#
order.test(runif(6000))
order.test(torus(6000))

# (2) 
#
order.test(runif(4000), 4)
order.test(torus(4000), 4)

# (3) 
#
order.test(runif(5000), 5)
order.test(torus(5000), 5)

randtoolbox

Toolbox for Pseudo and Quasi Random Number Generation and Random Generator Tests

v1.30.1
BSD_3_clause + file LICENSE
Authors
R port by Yohan Chalabi, Christophe Dutang, Petr Savicky and Diethelm Wuertz with some underlying C codes of (i) the SFMT algorithm from M. Matsumoto and M. Saito, (ii) the Knuth-TAOCP RNG from D. Knuth.
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.