blitz Version 1.0.2
Loading...
Searching...
No Matches
ranlib::MersenneTwister Class Reference

#include <mt.h>

Collaboration diagram for ranlib::MersenneTwister:
Collaboration graph

Classes

struct  BitMixer
 
class  mt_state
 

Public Types

typedef mt_state T_state
 

Public Member Functions

 MersenneTwister ()
 
 MersenneTwister (twist_int aa, twist_int bb, twist_int cc)
 
 MersenneTwister (twist_int initial_seed)
 
 MersenneTwister (twist_int aa, twist_int bb, twist_int cc, twist_int initial_seed)
 
void seed (twist_int seed=reference_seed)
 
void seed (State seed_vector)
 
void reload (void)
 
twist_int random (void)
 
T_state getState () const
 
std::string getStateString () const
 
void setState (const T_state &s)
 
void setState (const std::string &s)
 

Private Types

enum  { N = 624 , PF = 397 , reference_seed = 4357 }
 
typedef std::vector< twist_intState
 
typedef State::size_type SizeType
 
typedef State::iterator Iter
 

Private Member Functions

void initialize ()
 

Private Attributes

BitMixer twist_
 
const twist_int b_
 
const twist_int c_
 
State S
 
Iter I
 

Member Typedef Documentation

◆ Iter

typedef State::iterator ranlib::MersenneTwister::Iter
private

◆ SizeType

typedef State::size_type ranlib::MersenneTwister::SizeType
private

◆ State

typedef std::vector<twist_int> ranlib::MersenneTwister::State
private

◆ T_state

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
PF 
reference_seed 

Constructor & Destructor Documentation

◆ MersenneTwister() [1/4]

ranlib::MersenneTwister::MersenneTwister ( )
inline

References initialize(), and seed().

◆ MersenneTwister() [2/4]

ranlib::MersenneTwister::MersenneTwister ( twist_int aa,
twist_int bb,
twist_int cc )
inline

References initialize(), and seed().

◆ MersenneTwister() [3/4]

ranlib::MersenneTwister::MersenneTwister ( twist_int initial_seed)
inline

References initialize(), and seed().

◆ MersenneTwister() [4/4]

ranlib::MersenneTwister::MersenneTwister ( twist_int aa,
twist_int bb,
twist_int cc,
twist_int initial_seed )
inline

References initialize(), and seed().

Member Function Documentation

◆ getState()

T_state ranlib::MersenneTwister::getState ( ) const
inline

References I, and S.

◆ getStateString()

std::string ranlib::MersenneTwister::getStateString ( ) const
inline

◆ initialize()

void ranlib::MersenneTwister::initialize ( )
inlineprivate

References I, N, and S.

Referenced by MersenneTwister(), MersenneTwister(), MersenneTwister(), and MersenneTwister().

◆ random()

twist_int ranlib::MersenneTwister::random ( void )
inline

References b_, c_, I, reload(), and S.

◆ reload()

void ranlib::MersenneTwister::reload ( void )
inline

References I, N, PF, S, and twist_.

Referenced by random(), seed(), and seed().

◆ seed() [1/2]

void ranlib::MersenneTwister::seed ( State seed_vector)
inline

References N, reload(), S, and seed().

◆ seed() [2/2]

void ranlib::MersenneTwister::seed ( twist_int seed = reference_seed)
inline

◆ setState() [1/2]

void ranlib::MersenneTwister::setState ( const std::string & s)
inline

References setState().

◆ setState() [2/2]

void ranlib::MersenneTwister::setState ( const T_state & s)
inline

References I, and S.

Referenced by setState().

Member Data Documentation

◆ b_

const twist_int ranlib::MersenneTwister::b_
private

Referenced by random().

◆ c_

const twist_int ranlib::MersenneTwister::c_
private

Referenced by random().

◆ I

Iter ranlib::MersenneTwister::I
private

◆ S

State ranlib::MersenneTwister::S
private

◆ twist_

BitMixer ranlib::MersenneTwister::twist_
private

Referenced by reload().


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