Classes | |
class | itpp::Bernoulli_RNG |
Bernoulli distribution. More... | |
class | itpp::I_Uniform_RNG |
Integer uniform distribution
Example: Generation of random uniformly distributed integers in the interval [0,10]. More... | |
class | itpp::Uniform_RNG |
Uniform distribution. More... | |
class | itpp::Exponential_RNG |
Exponential distribution. More... | |
class | itpp::Normal_RNG |
Normal distribution
Normal (Gaussian) random variables, using a simplified Ziggurat method. More... | |
class | itpp::Gamma_RNG |
Gamma distribution Generate samples from Gamma(alpha,beta) density, according to the following equation:
. 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... | |
class | itpp::DSFMT< MEXP, POS1, SL1, MSK1, MSK2, MSK32_1, MSK32_2, MSK32_3, MSK32_4, FIX1, FIX2, PCV1, PCV2 > |
C++ implementation of dSFMT random number generator
The DSFMT class implements parts of the Double precision SIMD-oriented Fast Mersenne Twister (dSFM) random number generator. DSFMT directly generates double precision floating point random numbers, which have the IEEE Standard for Binary Floating-Point Arithmetic (ANSI/IEEE Std 754-1985) format. DSFMT does not support integer outputs. More... | |
Typedefs | |
typedef DSFMT_19937_RNG | itpp::Random_Generator |
Base class for random (stochastic) sources.
Random_Generator is a typedef of DSFMT class specialization using 19937 generation period. | |
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 | |
std::string | itpp::num2str (double d) |
Gamma distribution. | |
void | itpp::RNG_reset (unsigned int 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 time. | |
void | itpp::RNG_randomize () |
Set a random seed for the Global Random Number Generator. | |
void | itpp::RNG_get_state (ivec &state) |
Save the current state of the generator in a vector. | |
void | itpp::RNG_set_state (const ivec &state) |
Resume the state of the generator from previously saved vector. | |
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 DSFMT_19937_RNG itpp::Random_Generator |
std::string itpp::num2str | ( | double | d | ) |
Gamma distribution.
reimplementation of matlab num2str
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
References itpp::Complex_Normal_RNG::sample().