ran2

double ran2(long* seed);

Long period (> 2 X 10^18) random number generator of L'Ecuyer with Bays-Durham shuffle and added safeguards. Returns a uniform random deviate between 0.0 and 1.0 (exclusive of the endpoint values). Call with idum a negative integer to initialize; thereafter, do not alter idum between successive deviates in a sequence.

Parameters:
seedRandom number generator seed.

Returns:
The next random number from the generator.

Usage:
long seed = -1L; /* Initialize generator */
double r = ran2(&seed);

Header:
#include "deviate.h"