--- trunk/mdtools/headers/randomSPRNG.hpp 2002/12/29 19:11:05 218 +++ trunk/mdtools/headers/randomSPRNG.hpp 2003/01/02 20:14:08 221 @@ -1,23 +1,40 @@ #idndef __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(); +private: + int *thisStream; + int myStreamNumber; + int nSPRNGStreams; + static int nStreamsInitialized; - double getGaussianSPRNG(); } -class ranStreamSPRNG{ + +class gaussianSPRNG : public randomSPRNG{ public: - ranStreamSPRNG(); - ~ranStreamSPRNG(); + gaussianSPRNG(); + ~gaussianSPRNG(); - double getRanStreamSPRNG(); + double getGaussian(); +private: + using randomSPRNG::getRandom; + double getRandom() { getRandom(); } } + #endif