RANLUX: A Fortran implementation of the high-quality pseudorandom number generator of Lüscher

Abstract Following some remarks on the quality of pseudorandom number generators commonly used in Monte Carlo calculations in computational physics, we offer a portable Fortran 77 implementation of a high-quality generator called RANLUX (for LUXury RANdom numbers), using the algorithm of Martin Luscher described in an accompanying article. The implementation allows the user to select different quality or luxury levels, where higher quality requires somewhat longer computing time for the generation. There is a convenient way of initialization (appropriate also for massively parallel Monte Carlo computations) as well as two different methods of restarting from a break point.