asa183, a MATLAB code which implements a random number generator (RNG), by Wichman and Hill.

This is a version of Applied Statistics Algorithm 183.


The computer code and data files described and made available on this web page are distributed under the MIT license


asa183 is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:


ranlib, an Octave code which produces random samples from Probability Density Functions (PDF's), including Beta, Chi-square Exponential, F, Gamma, Multivariate normal, Noncentral chi-square, Noncentral F, Univariate normal, random permutations, Real uniform, Binomial, Negative Binomial, Multinomial, Poisson and Integer uniform, by Barry Brown and James Lovato.

rnglib, an Octave code which implements a random number generator (RNG) with splitting facilities, allowing multiple independent streams to be computed, by L'Ecuyer and Cote.


Original FORTRAN77 version by Brian Wichman and David Hill; Octave version by John Burkardt.


  1. Pierre LEcuyer,
    Efficient and Portable Combined Random Number Generators,
    Communications of the ACM,
    Volume 31, Number 6, June 1988, pages 742-751.
  2. Brian Wichmann, David Hill,
    Algorithm AS 183: An Efficient and Portable Pseudo-random Number Generator,
    Applied Statistics,
    Volume 31, Number 2, 1982, pages 188-190.

Source Code:

Last revised on 22 October 2022.