#ifndef _utl_NoiseSaS_h_ #define _utl_NoiseSaS_h_ /** \file Class producing noise, produced from a Symmetric alpha-Stable distribution function, implying colored noise \author Wendy Docters */ #include #include #include #include #include #include namespace utl { /** \class NoiseSaS NoiseSaS.h "utl/NoiseSaS.h" \brief Class producing noise originating from a Symmetric alpha-Stable distribution function \author Wendy Docters */ class NoiseSaS{ public: // constructor NoiseSaS(RandomEngine* test) : randgen(time(0)), interval_V(0, kPiOnTwo), randomGenerator_V(randgen, interval_V), fRandomEngine(test) {} // destructor virtual ~NoiseSaS(); /// Returns the noise in time domain double CreateSaSNoiseInTimeDomain(double alpha); private: boost::mt19937 randgen; boost::uniform_real interval_V; boost::variate_generator > randomGenerator_V; RandomEngine* fRandomEngine; }; } // utl #endif