#ifndef __MYRANDOM__ #define __MYRANDOM__ #include #include class Random{ private: gsl_rng* rng; Random(const Random& ); Random& operator=(const Random& ); public: Random(unsigned long int seed = 0){ rng = gsl_rng_alloc(gsl_rng_mt19937); gsl_rng_set(rng, seed); } /* returns normally distributed random variable of variance sigma */ double randn(double sigma = 1.0){ return gsl_ran_gaussian(rng, sigma); } ~Random(){ gsl_rng_free(rng); } }; #endif