--- trunk/mdtools/headers/randomSPRNG.hpp 2002/12/29 19:11:05 218 +++ trunk/mdtools/headers/randomSPRNG.hpp 2003/01/27 21:28:19 249 @@ -1,23 +1,42 @@ -#idndef __randomSPRNG_H +#ifndef __randomSPRNG_H #define __randomSPRNG_H +/* Define the random number generator used by SPRNG + to be type 3 = Combined Multiple Recursive Generator. +*/ +#define GTYPE 3 +#ifdef IS_MPI +#define USE_MPI +#endif -class gaussianSPRNG{ +class randomSPRNG{ public: + randomSPRNG(int myseed); + ~randomSPRNG(); - gaussianSPRNG(); - ~gaussianSPRNG(); + double getRandom(); - double getGaussianSPRNG(); -} +protected: + int *thisStream; + int myStreamNumber; + int nSPRNGStreams; + static int nStreamsInitialized; -class ranStreamSPRNG{ +}; + + +class gaussianSPRNG : protected randomSPRNG{ + public: - ranStreamSPRNG(); - ~ranStreamSPRNG(); + gaussianSPRNG(int iseed):randomSPRNG(iseed){} + ~gaussianSPRNG(){} - double getRanStreamSPRNG(); -} + double getGaussian(); +protected: +}; + + + #endif