/*--------------------------------------------------------------------------
Author: Thomas Nowotny
Institute: Institute for Nonlinear Dynamics
University of California San Diego
La Jolla, CA 92093-0402
email to: tnowotny@ucsd.edu
initial version: 2002-02-01
--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
random number generator, initializes with system time, returns a random
number according to am equipartition in [0,1];
making use of the ISAAC random number generator; C++ Implementation
by Quinn Tyler Jackson of the RG invented by Bob Jenkins Jr.
--------------------------------------------------------------------------*/
#ifndef RANDOMGEN_H
#define RANDOMGEN_H
#include <time.h>
#include <limits.h>
#include <stdlib.h>
#include "isaac.hpp"
#include <assert.h>
class randomGen
{
private:
QTIsaac<8, ulong> TheGen;
double a;
public:
explicit randomGen();
randomGen(ulong, ulong, ulong);
~randomGen() { }
double n();
};
class stdRG
{
private:
double themax;
public:
explicit stdRG();
stdRG(unsigned int);
~stdRG() { }
double n();
void seed(unsigned int );
};
//#include "randomGen.cc"
#endif