This is a routine for generating very high quality, portable random numbers, using 32-bit integer arithmetic. Included are sample drivers; all code is in Fortran 90. For assistance with running this code, contact the author, Daniel Steck, at . This code is provided as-is, without warranty; you should thoroughly test it before trusting it. This code is free for non-commercial use. This is version 2.0.6 of this random number library. The contents of this directory are: README: this file random_pl.f90: Fortran 90 (module) version of the generator; there is much documentation in this file globals.f90: sample globals module to define real precision used by random_pl.f90 test90.f90: sample driver for the routines in random_pl.f90; implements Knuth's battery of tests diehard_data.f90: sample driver for the routines in random_pl.f90; produces binary output file that can be read by Marsaglia's 'diehard' test battery program diehard_multi_data.f90: modification of diehard_data.f90 to test independence of initial seeds: instead of using a single stream of random numbers, two streams from the same generator but different initial seeds Makefile: machine-independent makefile for the three sample drivers, assuming you have certain environment variables set Makefile.Unix: if you don't have the proper environment variables set, you can use this Makefile instead (i.e. cp -f Makefile.Unix Makefile) if you are running on a Unix system with "obvious" compiler settings. See the individual files for further documentation. To summarize: to compile, run, and test the example code, you might do something like: > setenv F90 f90 > setenv F90CFLAGS '-c' > make > ./test90 > ./diehard_data > ./diehard_multi_data