Pyrogenesis  trunk
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
WELL512 Class Reference

Random number generator with period 2^{512}-1; effectively a better version of MT19937 (smaller state, similarly fast, simpler code, better distribution). More...

#include <Random.h>

Public Types

typedef uint32_t result_type
 

Public Member Functions

 WELL512 ()
 
uint32_t operator() ()
 
void seed (uint32_t value)
 
void seed (uint32_t values[16])
 
uint32_t min () const
 
uint32_t max () const
 

Private Attributes

uint32_t state [16]
 
uint32_t index
 

Friends

bool operator== (const WELL512 &x, const WELL512 &y)
 
bool operator!= (const WELL512 &x, const WELL512 &y)
 
template<class CharT , class Traits >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const WELL512 &rng)
 
template<class CharT , class Traits >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, WELL512 &rng)
 

Detailed Description

Random number generator with period 2^{512}-1; effectively a better version of MT19937 (smaller state, similarly fast, simpler code, better distribution).

Implements Boost.Random's PseudoRandomNumberGenerator concept.

Member Typedef Documentation

Constructor & Destructor Documentation

WELL512::WELL512 ( )
inline

Member Function Documentation

uint32_t WELL512::max ( ) const
inline
uint32_t WELL512::min ( ) const
inline
uint32_t WELL512::operator() ( )
inline
void WELL512::seed ( uint32_t  value)
inline
void WELL512::seed ( uint32_t  values[16])
inline

Friends And Related Function Documentation

bool operator!= ( const WELL512 x,
const WELL512 y 
)
friend
template<class CharT , class Traits >
std::basic_ostream<CharT, Traits>& operator<< ( std::basic_ostream< CharT, Traits > &  os,
const WELL512 rng 
)
friend
bool operator== ( const WELL512 x,
const WELL512 y 
)
friend
template<class CharT , class Traits >
std::basic_istream<CharT, Traits>& operator>> ( std::basic_istream< CharT, Traits > &  is,
WELL512 rng 
)
friend

Member Data Documentation

uint32_t WELL512::index
private
uint32_t WELL512::state[16]
private

The documentation for this class was generated from the following file: