IT++ Logo Newcom Logo

Random Number Generation


Classes

class  itpp::Random_Generator
 Base class for random (stochastic) sources. More...
class  itpp::Bernoulli_RNG
 Bernoulli distribution. More...
class  itpp::I_Uniform_RNG
 Integer uniform distribution. More...
class  itpp::Uniform_RNG
 Uniform distribution. More...
class  itpp::Exponential_RNG
 Exponential distribution. More...
class  itpp::Normal_RNG
 Normal distribution. More...
class  itpp::Laplace_RNG
 Laplacian distribution. More...
class  itpp::Complex_Normal_RNG
 A Complex Normal Source. More...
class  itpp::AR1_Normal_RNG
 Filtered normal distribution. More...
class  itpp::Weibull_RNG
 Weibull distribution. More...
class  itpp::Rayleigh_RNG
 Rayleigh distribution. More...
class  itpp::Rice_RNG
 Rice distribution. More...

Typedefs

typedef Normal_RNG itpp::Gauss_RNG
 Gauss_RNG is the same as Normal Source.
typedef AR1_Normal_RNG itpp::AR1_Gauss_RNG
 AR1_Gauss_RNG is the same as AR1_Normal_RNG.

Functions

void itpp::RNG_reset (unsigned long seed)
 Set the seed of the Global Random Number Generator.
void itpp::RNG_reset ()
 Set the seed of the Global Random Number Generator to the same as last reset/init.
void itpp::RNG_randomize ()
 Set a random seed for the Global Random Number Generator.
void itpp::RNG_get_state (ivec &state)
 Save current full state of generator in memory.
void itpp::RNG_set_state (ivec &state)
 Resume the state saved in memory.
bin itpp::randb (void)
 Generates a random bit (equally likely 0s and 1s).
void itpp::randb (int size, bvec &out)
 Generates a random bit vector (equally likely 0s and 1s).
bvec itpp::randb (int size)
 Generates a random bit vector (equally likely 0s and 1s).
void itpp::randb (int rows, int cols, bmat &out)
 Generates a random bit matrix (equally likely 0s and 1s).
bmat itpp::randb (int rows, int cols)
 Generates a random bit matrix (equally likely 0s and 1s).
double itpp::randu (void)
 Generates a random uniform (0,1) number.
void itpp::randu (int size, vec &out)
 Generates a random uniform (0,1) vector.
vec itpp::randu (int size)
 Generates a random uniform (0,1) vector.
void itpp::randu (int rows, int cols, mat &out)
 Generates a random uniform (0,1) matrix.
mat itpp::randu (int rows, int cols)
 Generates a random uniform (0,1) matrix.
int itpp::randi (int low, int high)
 Generates a random integer in the interval [low,high].
ivec itpp::randi (int size, int low, int high)
 Generates a random ivec with elements in the interval [low,high].
imat itpp::randi (int rows, int cols, int low, int high)
 Generates a random imat with elements in the interval [low,high].
vec itpp::randray (int size, double sigma=1.0)
 Generates a random Rayleigh vector.
vec itpp::randrice (int size, double sigma=1.0, double s=1.0)
 Generates a random Rice vector (See J.G. Poakis, "Digital Communications, 3rd ed." p.47).
vec itpp::randexp (int size, double lambda=1.0)
 Generates a random complex Gaussian vector.
double itpp::randn (void)
 Generates a random Gaussian (0,1) variable.
void itpp::randn (int size, vec &out)
 Generates a random Gaussian (0,1) vector.
vec itpp::randn (int size)
 Generates a random Gaussian (0,1) vector.
void itpp::randn (int rows, int cols, mat &out)
 Generates a random Gaussian (0,1) matrix.
mat itpp::randn (int rows, int cols)
 Generates a random Gaussian (0,1) matrix.
std::complex< double > itpp::randn_c (void)
 Generates a random complex Gaussian (0,1) variable.
void itpp::randn_c (int size, cvec &out)
 Generates a random complex Gaussian (0,1) vector.
cvec itpp::randn_c (int size)
 Generates a random complex Gaussian (0,1) vector.
void itpp::randn_c (int rows, int cols, cmat &out)
 Generates a random complex Gaussian (0,1) matrix.
cmat itpp::randn_c (int rows, int cols)
 Generates a random complex Gaussian (0,1) matrix.

Typedef Documentation

typedef Normal_RNG itpp::Gauss_RNG

Gauss_RNG is the same as Normal Source.

Definition at line 585 of file random.h.

typedef AR1_Normal_RNG itpp::AR1_Gauss_RNG

AR1_Gauss_RNG is the same as AR1_Normal_RNG.

Definition at line 591 of file random.h.


Function Documentation

void itpp::RNG_reset ( unsigned long  seed  ) 

Set the seed of the Global Random Number Generator.

Definition at line 110 of file random.cpp.

References itpp::Random_Generator::reset().

void itpp::RNG_reset (  ) 

Set the seed of the Global Random Number Generator to the same as last reset/init.

Definition at line 117 of file random.cpp.

References itpp::Random_Generator::reset().

void itpp::RNG_randomize (  ) 

Set a random seed for the Global Random Number Generator.

Definition at line 124 of file random.cpp.

References itpp::Random_Generator::randomize().

void itpp::RNG_get_state ( ivec state  ) 

Save current full state of generator in memory.

Definition at line 131 of file random.cpp.

References itpp::Random_Generator::get_state().

void itpp::RNG_set_state ( ivec state  ) 

Resume the state saved in memory.

Definition at line 138 of file random.cpp.

References itpp::Random_Generator::set_state().

bin itpp::randb ( void   )  [inline]

Generates a random bit (equally likely 0s and 1s).

Definition at line 685 of file random.h.

References itpp::Bernoulli_RNG::sample().

Referenced by itpp::randb().

void itpp::randb ( int  size,
bvec out 
) [inline]

Generates a random bit vector (equally likely 0s and 1s).

Definition at line 687 of file random.h.

References itpp::Bernoulli_RNG::sample_vector().

bvec itpp::randb ( int  size  )  [inline]

Generates a random bit vector (equally likely 0s and 1s).

Definition at line 689 of file random.h.

References itpp::randb().

void itpp::randb ( int  rows,
int  cols,
bmat out 
) [inline]

Generates a random bit matrix (equally likely 0s and 1s).

Definition at line 691 of file random.h.

References itpp::Bernoulli_RNG::sample_matrix().

bmat itpp::randb ( int  rows,
int  cols 
) [inline]

Generates a random bit matrix (equally likely 0s and 1s).

Definition at line 693 of file random.h.

References itpp::randb().

double itpp::randu ( void   )  [inline]

Generates a random uniform (0,1) number.

Definition at line 696 of file random.h.

References itpp::Uniform_RNG::sample().

Referenced by itpp::GMM::draw_sample(), itpp::Rice_Fading_Generator::init_MEDS(), itpp::Sequence_Interleaver< T >::randomize_interleaver_sequence(), itpp::randu(), itpp::Sequence_Interleaver< T >::Sequence_Interleaver(), and itpp::wcdma_turbo_interleaver_sequence().

void itpp::randu ( int  size,
vec out 
) [inline]

Generates a random uniform (0,1) vector.

Definition at line 698 of file random.h.

References itpp::Uniform_RNG::sample_vector().

vec itpp::randu ( int  size  )  [inline]

Generates a random uniform (0,1) vector.

Definition at line 700 of file random.h.

References itpp::randu().

void itpp::randu ( int  rows,
int  cols,
mat out 
) [inline]

Generates a random uniform (0,1) matrix.

Definition at line 702 of file random.h.

References itpp::Uniform_RNG::sample_matrix().

mat itpp::randu ( int  rows,
int  cols 
) [inline]

Generates a random uniform (0,1) matrix.

Definition at line 704 of file random.h.

References itpp::randu().

Referenced by fpica(), and getSamples().

int itpp::randi ( int  low,
int  high 
) [inline]

Generates a random integer in the interval [low,high].

Definition at line 707 of file random.h.

References itpp::I_Uniform_RNG::setup().

Referenced by itpp::kmeans(), and itpp::vqtrain().

ivec itpp::randi ( int  size,
int  low,
int  high 
) [inline]

Generates a random ivec with elements in the interval [low,high].

Definition at line 709 of file random.h.

References itpp::I_Uniform_RNG::setup().

imat itpp::randi ( int  rows,
int  cols,
int  low,
int  high 
) [inline]

Generates a random imat with elements in the interval [low,high].

Definition at line 711 of file random.h.

References itpp::I_Uniform_RNG::setup().

vec itpp::randray ( int  size,
double  sigma = 1.0 
) [inline]

Generates a random Rayleigh vector.

Definition at line 714 of file random.h.

References itpp::Rayleigh_RNG::setup().

vec itpp::randrice ( int  size,
double  sigma = 1.0,
double  s = 1.0 
) [inline]

Generates a random Rice vector (See J.G. Poakis, "Digital Communications, 3rd ed." p.47).

Definition at line 717 of file random.h.

References itpp::Rice_RNG::setup().

vec itpp::randexp ( int  size,
double  lambda = 1.0 
) [inline]

Generates a random complex Gaussian vector.

Definition at line 720 of file random.h.

References itpp::Exponential_RNG::setup().

double itpp::randn ( void   )  [inline]

Generates a random Gaussian (0,1) variable.

Definition at line 723 of file random.h.

References itpp::Normal_RNG::sample().

Referenced by itpp::GMM::draw_sample(), itpp::lbg(), itpp::AWGN_Channel::operator()(), and itpp::randn().

void itpp::randn ( int  size,
vec out 
) [inline]

Generates a random Gaussian (0,1) vector.

Definition at line 725 of file random.h.

References itpp::Normal_RNG::sample_vector().

vec itpp::randn ( int  size  )  [inline]

Generates a random Gaussian (0,1) vector.

Definition at line 727 of file random.h.

References itpp::randn().

void itpp::randn ( int  rows,
int  cols,
mat out 
) [inline]

Generates a random Gaussian (0,1) matrix.

Definition at line 729 of file random.h.

References itpp::Normal_RNG::sample_matrix().

mat itpp::randn ( int  rows,
int  cols 
) [inline]

Generates a random Gaussian (0,1) matrix.

Definition at line 731 of file random.h.

References itpp::randn().

std::complex<double> itpp::randn_c ( void   )  [inline]

Generates a random complex Gaussian (0,1) variable.

The real and imaginary parts are independent and have variances equal to 0.5

Definition at line 737 of file random.h.

References itpp::Complex_Normal_RNG::sample().

Referenced by itpp::FIR_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::generate_Jakes(), itpp::Fading_Generator::generate_zero_doppler(), itpp::FIR_Fading_Generator::init(), itpp::AWGN_Channel::operator()(), and itpp::randn_c().

void itpp::randn_c ( int  size,
cvec out 
) [inline]

Generates a random complex Gaussian (0,1) vector.

Definition at line 739 of file random.h.

References itpp::Complex_Normal_RNG::sample_vector().

cvec itpp::randn_c ( int  size  )  [inline]

Generates a random complex Gaussian (0,1) vector.

Definition at line 741 of file random.h.

References itpp::randn_c().

void itpp::randn_c ( int  rows,
int  cols,
cmat out 
) [inline]

Generates a random complex Gaussian (0,1) matrix.

Definition at line 743 of file random.h.

References itpp::Complex_Normal_RNG::sample_matrix().

cmat itpp::randn_c ( int  rows,
int  cols 
) [inline]

Generates a random complex Gaussian (0,1) matrix.

Definition at line 745 of file random.h.

References itpp::randn_c().

SourceForge Logo

Generated on Thu Apr 19 14:18:35 2007 for IT++ by Doxygen 1.5.1